1. A method of generating a document containing user-defined properties and document-defined properties, comprising: receiving a document having one or more components, each of the one or more components having document-defined properties according to a document context applied to the document; receiving a text stream containing one or more portions of user-defined information applied to the document; generating a resolved document object for each of the one or more components of the document, where each resolved document object contains one of the one or more document components and a corresponding one of the one or more portions of user-defined information and where any document-defined properties associated with the one of the one or more document components are applied to the corresponding one of the one or more portions of user-defined information; and assembling each of the resolved document objects into a resolved text body data structure for the document.