1. A system for defining a report, comprising: a processor configured to: receive an indication of a data instance of a class type; retrieve a set of class report fields associated with the data instance, wherein the set of class report fields comprises a set of class report fields available to be used in a report; determine the class type of the data instance; retrieve a set of report data sources based at least in part on the determined class type, wherein the set of report data sources is associated with one or more class report fields selected from the set of class report fields associated with the data instance; define the report using a selected report data source from the set of report data sources; and a memory coupled to the processor and configured to provide the processor with instructions.