Patent ID: 7975232

Claim:
A method of document generation comprising: in response to a call from an application, making a call from a dynamic template component system to a template to get a template interface and interface description of the template, the template including elements that are filled by different data providers; determining whether a method exists for filling all elements of the template; in response to a determination that a method exists for filling all elements of the template, making dynamic calls from the dynamic template component system to get appropriate data provider interfaces capable of filling all elements of the template interface; in response to a determination that multiple methods are needed for filling all elements of the template, decomposing the elements of the template into respective data structures containing a portion of the elements included in the template; making dynamic calls from the dynamic template component system directly to each of the appropriate data providers for each element of the template interface so that all elements of the template can be filled by either a method that fills all elements of the template interface or multiple methods that fill respective elements of the template interface; in response to an indication that a method is unavailable to fill the respective data structure, decomposing the data structure into single data fields; and assigning the single data fields to a data provider.