Systems and techniques to create and use a reversible format document. In
general, in one implementation, the technique includes: obtaining an
electronic document in a binary format, reforming the electronic document
in a markup language format using information selected from the binary
format document according to predefined extraction parameters, and
inserting an encoded version of the electronic document in the binary
format into the electronic document in the markup language format. A
markup language document can include a first and second portions, the
first portion including a subset of information, including rules
governing how the electronic document is processed by a machine, from a
binary format document corresponding to the second portion, and the
second portion including an encoded version of the binary format
document, where the electronic document is fully transformable to the
binary format after a modification to the electronic document in the
markup language format.