11. A system comprising: a processing device; a memory having stored therein instructions which, when executed by the processing device, cause the processing device to: receive, from a client device, a request for annotations associated with a first version of a document, wherein the client device has a second version of the document that is different from the first version; select a difference position map that indicates differences between the first version and the second version, the differences comprising a word having an original position in the first version of the document and the word having a new position in the second version of the document, where the original position is different than new position, wherein the difference position map comprises an entry, the entry comprising the word, a first byte offset of the original position of the word in the first version of the document, and a second byte offset of the new position of the word in the second version of the document; transfer the annotations from the first version of the document to the second version of the document based on the difference position map; and transmit the transferred annotations to the client device in response to the request.
11. A system comprising: a processing device; a memory having stored therein instructions which, when executed by the processing device, cause the processing device to: receive, from a client device, a request for annotations associated with a first version of a document, wherein the client device has a second version of the document that is different from the first version; select a difference position map that indicates differences between the first version and the second version, the differences comprising a word having an original position in the first version of the document and the word having a new position in the second version of the document, where the original position is different than new position, wherein the difference position map comprises an entry, the entry comprising the word, a first byte offset of the original position of the word in the first version of the document, and a second byte offset of the new position of the word in the second version of the document; transfer the annotations from the first version of the document to the second version of the document based on the difference position map; and transmit the transferred annotations to the client device in response to the request. 17. The system of claim 11 , wherein the difference position map comprises positions of words in the first version and positions of corresponding words in the second version.