1. A system, implemented in a data processing system, for managing and querying a plurality of inter-related data sources, the system comprising: an interface to the plurality of inter-related data sources of diverse types, wherein each of the plurality of inter-related data sources has a corresponding schema that describes a corresponding data structure of a corresponding data source; a schema generator communicating with said interface, wherein the schema generator generates a federated schema that describes structures of the plurality of inter-related data sources and inter-relationships of the plurality of inter-related data sources, and wherein the schema generator further modifies the federated schema over time as the plurality of inter-related data sources undergo changes; a query generator communicating with said schema generator, wherein the query generator generates a query for the federated schema; and a storage device in communication with the data processing system, the storage device operable to store the query.