1. A method of managing heterogeneous data, comprising: generating a master catalog listing a plurality of properties, each property of the plurality of properties representing a data item, each property of the plurality of properties including at least one attribute defining the represented data item and two or more profiles indicating how the data item is managed, the profiles including a collection profile indicating how the represented data item is collected and a storage profile indicating how the represented data item is stored, wherein the master catalog and the object model catalog are be written in extensible markup language or another markup language; preparing an object model catalog containing a plurality of object models, each object model of the plurality of object models including at least one property listed in the master catalog; defining a data set definition including a plurality of data objects, each data object contains an instantiation of a respective object model from the object model catalog, the data set definition including multiple instantiations of at least one object model; and collecting data in accordance with the data set definition, collecting data performed, at least in part, by an automatic data collection system, wherein the collecting data comprises: parsing the data set definition and associated object models and properties to provide instructions for the automatic data collection system; generating reports based on the collected data, wherein the generating reports include referring to the data set definition; and retrieving, from the master catalog, attributes and profiles for the properties used in the data set definition to determine how each data item is collected and stored.