1. A method comprising: opening a file definition that defines a template including executable instructions and at least one query associated with the template, wherein the executable instructions include at least one call instruction that calls at least one other template including executable instructions and wherein the executable instructions of the template and the at least one query are in a format and with a language of a source database; extracting data with the at least one query from the source database in the form of sets of records; and generating an XML document for each record comprising data derived from the data of the corresponding record by: executing the executable instructions of the template during an execution stage for each record of the set of records; calling the at least one other template when the at least one call instruction is executed among the executable instructions of the template during the execution stage, and executing the executable instructions of the at least one other template called by the at least one call instruction during the execution stage for each record of the set of records, wherein executing the executable instructions of the template during an execution stage for each record of the set of records comprises: constructing a name for at least one XML document, creating a target file for the at least one XML document, creating a root element which is assigned a function of a current element, and processing a root template calling any other template of a plurality of templates.