8. A non-transitory computer-readable storage medium containing a program which, when executed on a processor, performs an operation for processing an abstract query of an underlying physical database, the operation comprising: providing a database abstraction model, wherein the database abstraction model provides (i) a plurality of logical fields that each specify an access method defining a method for accessing data associated with a respective logical field, and (ii) a plurality of model entities, wherein each model entity specifies a set of logical fields that map to data related to a respective model entity and specifies an identifier in the underlying database used to identify instances of the respective model entity; receiving an abstract query composed from one or more logical fields of the database abstraction model, wherein at least a first logical field in the abstract query is specified in a dictionary term criteria condition, wherein the dictionary term criteria condition includes a list of one or more keywords, wherein the access method specified by the first logical field maps the first logical field to a plurality of documents related to a given instance of the model entity, wherein the dictionary term criteria condition is evaluated by determining whether the plurality of documents related to the given instance of the model entity includes at least a distinct document containing a respective one of the one or more keywords, wherein each of the plurality of documents are stored as unstructured text in a column of a table in the underlying physical database; generating, from the abstract query, a resolved query of the underlying physical database; and storing the resolved query for execution against the underlying physical database.
8. A non-transitory computer-readable storage medium containing a program which, when executed on a processor, performs an operation for processing an abstract query of an underlying physical database, the operation comprising: providing a database abstraction model, wherein the database abstraction model provides (i) a plurality of logical fields that each specify an access method defining a method for accessing data associated with a respective logical field, and (ii) a plurality of model entities, wherein each model entity specifies a set of logical fields that map to data related to a respective model entity and specifies an identifier in the underlying database used to identify instances of the respective model entity; receiving an abstract query composed from one or more logical fields of the database abstraction model, wherein at least a first logical field in the abstract query is specified in a dictionary term criteria condition, wherein the dictionary term criteria condition includes a list of one or more keywords, wherein the access method specified by the first logical field maps the first logical field to a plurality of documents related to a given instance of the model entity, wherein the dictionary term criteria condition is evaluated by determining whether the plurality of documents related to the given instance of the model entity includes at least a distinct document containing a respective one of the one or more keywords, wherein each of the plurality of documents are stored as unstructured text in a column of a table in the underlying physical database; generating, from the abstract query, a resolved query of the underlying physical database; and storing the resolved query for execution against the underlying physical database. 9. The non-transitory computer-readable storage medium of claim 8 , wherein the operation further comprises: executing the resolved query to identify one or more instances of the model entity that satisfy the dictionary term criteria condition; and returning, to a requesting entity, an indication of the identified instances of the model entity.