A template is built of static and dynamic content. The static content is defined by data such as texts and images, that are provided when the template is designed. The dynamic content is represented by data obtained from the data sources at document generation time. A document template does not refer to concrete data sources.
The template's data's structure is defined with a schema. This allows the template to be applied to any data source that has a matching structure.