1. A method for creating a template document defining a report, comprising: receiving an initial template document from a user; reading a set of portions of the initial template document; determining a set of data object types corresponding with the set of portions; instantiating a set of data objects in accordance with the set of data object types; and invoking a display method of the set of data objects to create at least a portion of a template document defining the report using a document layout designing language.