1. A method comprising: receiving input via user interface of a system performing the method, the input defining a document model for generation of documents, wherein the document model includes: a header model including a set of header methods to provide interaction capabilities to other portions of a system, one or more item models, including a set of item methods to provide interaction capabilities to other portions of the system, wherein the header model and the one or more item models each include an association with one or more component models, and wherein each component model includes: a set of component methods to provide interaction capabilities to other portions of the system, and component specific logic accessible through the component methods, providing a first map within the header model between the set of header methods and the set of item methods, providing a second map within the item model between the set of item methods and the set of component methods, providing a link between the set of component methods and the component specific logic, and storing the document model in a data storage device of the system performing the method.