1. A method for generating an output document based on a template using a service, the method comprising: calling the service to retrieve the template for formatting the output document, the document having one or more data fields; retrieving, by the service, a schema defining one or more data elements; retrieving, by the service, binding data mapping the one or more data elements to one or more data fields of the document; and generating the output document formatted based on the retrieved template, the retrieved schema, and the retrieved binding data.