1. A method for processing an abstract query, comprising: providing a database abstraction model that describes data stored in a physical database the database abstraction model comprising (i) a plurality of logical fields each specifying an access method for accessing data in the physical database, (ii) a model entity specifying an identifier in the physical database used to distinguish instances of the model entity, wherein a first instance of the model entity is related to a second instance of the model entity, according to a predefined relationship; receiving an abstract query composed using logical fields selected from the plurality of logical fields, wherein the abstract query specifies at least one condition to be evaluated using data associated with the first instance of the model entity to determine whether to include the second instance of the model entity in a query result returned for the abstract query; transforming the abstract query into a query consistent with a particular physical data representation of the physical database; issuing the transformed query to the underlying physical database; and returning, to the requesting entity, the set of query results received in response to issuing the transformed query.