1. A computer readable medium storing instructions executed on a computer, comprising instructions to: receive a collection of composite objects; perform a reflection operation on a representative object instance in the collection of composite objects; create an aggregate dataset that includes a portion of contents of object instances in the collection of composite objects, wherein the instructions to create an aggregate dataset comprise instructions to generate the portion of contents of object instances by reflection, wherein the reflection comprises obtaining type information of the object instances in the collection of objects; construct a template for the aggregate dataset, wherein the aggregate dataset stores contents of each simple data type found in the representative object instance in the collection of composite objects; duplicate the template for object instances in the collection of composite objects; populate each duplicate template with a value of each simple data type found in object instances in the collection of composite objects; pass the aggregate dataset to a report server; and accept a report that includes data from the aggregate dataset.