8. A computer-implemented method of generating a document from a document model, comprising: a document object model (DOM); identifying, with a computing device, one or more characters in a one-dimensional character string portion of the document model that includes the characters of the document; searching an electronic sparse map of styles portion of the document model that is separate from, but correlates to, the one-dimensional character string, for style markers that apply to a span of characters that covers the identified one or more characters; generating the document using the computing device by applying, to the one or more characters, formatting that corresponds to style markers found to apply to the span of characters; further comprising locating in the one-dimensional character string one or more identifiers for objects outside the document model, accessing the objects, and rendering the objects into the document; wherein the objects are images, lists or tables that are outside the document mode; wherein generating the document comprises traversing the one-dimensional character string using pointers in the sparse character map that are mapped to the character string, and applying a particular formatting between a first pointer that activates the formatting, and a second pointer that deactivates the formatting; and further comprising receiving user input in the document at a location between the first pointer and the second pointer, and adjusting a location in the character string to which the second pointer points by an integer number that is equal to a number of characters in the user input.
10. The computer-implemented method of claim 8 , further comprising receiving a user input in the document, correlating a location of the user input in a displayed view of the document to a position in the one-dimensional character string, and copying the user input to the one-dimensional character string.