Well organized query result sets
First Claim
1. A method of generating a set of well organized query results, comprising:
- receiving, from a requesting an entity, an abstract query composed from a plurality of logical fields, wherein each logical field specifies (i) a name used to identify the logical field, and (ii) an access method that maps the logical field to data in an underlying database;
retrieving a first set of query results for the abstract query from the underlying database; and
transforming the first set of query results into a second set of query results wherein the second set of query results are organized according to a set of one-to-one and one-to-many relationships specified for the plurality of logical fields.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods, apparatus, and articles of manufacture for processing an abstract query and generating well organized user results are disclosed. Well organized user results preserve the cardinality of one-to-one and one-to-many between data elements retrieved using a database query. Embodiments of the present invention use an abstract database that separates a user from the physical representation of data stored in a data repository by providing a plurality of logical fields based on the substantive information stored in the underlying data repository. During query processing, query results generated from an abstract query are generated and organized according to the one-to-one and one-to-many relationships. Subsequently, query results are presented to users according to the intuitive relationships between data understood by users of an abstract database.
169 Citations
20 Claims
-
1. A method of generating a set of well organized query results, comprising:
-
receiving, from a requesting an entity, an abstract query composed from a plurality of logical fields, wherein each logical field specifies (i) a name used to identify the logical field, and (ii) an access method that maps the logical field to data in an underlying database;
retrieving a first set of query results for the abstract query from the underlying database; and
transforming the first set of query results into a second set of query results wherein the second set of query results are organized according to a set of one-to-one and one-to-many relationships specified for the plurality of logical fields. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of processing an abstract query, comprising:
-
providing a data abstraction layer comprising (i) a plurality of logical fields, wherein each logical field specifies an access method that maps the logical field to data in an underlying database;
(ii) a indication of one-to-one and one-to many relationships between the logical fields included in the plurality of logical fields;
receiving, from a requesting entity, an abstract query composed from a plurality of logical fields;
generating a data structure that indicates the one-to-one and one-to-many relationships among the plurality of logical fields included in the abstract query;
retrieving a first set of query results for the abstract query from the underlying database;
transforming the set of query results into a well organized set of query results according to the one-to-one and one-to-many relationships indicated by the data structure; and
providing the second set of query results to an output formatter configured to format the query results according to the one-to-one and one-to-many relationships indicated by the data structure; and
returning the formatted query results to the a requesting entity. - View Dependent Claims (9, 10, 11)
-
-
12. A system for providing well organized query results, comprising:
-
an abstract data layer that provides a set of logical fields used to compose an abstract query composed from the set of logical fields, wherein each logical field specifies (i) an access method that maps the logical field to data in an underlying data source, and (ii) a set of one-to-one and one-to-many relationships between the fields included in the plurality of logical fields;
a runtime component configured (i) to retrieve, in response to receiving an abstract query, a first set of query results for the abstract query, and (ii) to transform the first set of query results into a second set of query results, wherein the second set of query results is organized according to the set of one-to-one and one-to-many relationships. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A computer-readable medium containing a program which, when executed by a processor, performs operations, comprising:
-
accessing a data abstraction layer comprising (i) a plurality of logical fields, wherein each logical field specifies an access method that maps the logical field to data in an underlying database;
(ii) a indication of one-to-one and one-to many relationships between the logical fields included in the plurality of logical fields;
receiving, from a requesting entity, an abstract query composed from a plurality of logical fields;
generating a data structure that indicates the one-to-one and one-to-many relationships among the plurality of logical fields included in the abstract query;
retrieving a first set of query results for the abstract query from the underlying database;
transforming the set of query results into a well organized set of query results according to the one-to-one and one-to-many relationships indicated by the data structure; and
providing the second set of query results to an output formatter configured to format the query results according to the one-to-one and one-to-many relationships indicated by the data structure; and
returning the formatted query results to a requesting entity.
-
-
18. A computer-readable medium containing a program which, when executed by a processor, performs operations, comprising:
-
receiving, from a requesting an entity, an abstract query composed from a plurality of logical fields, wherein each logical field specifies (i) a name used to identify the logical field, and (ii) an access method that maps the logical field to data in an underlying database;
retrieving a first set of query results for the abstract query from the underlying database; and
transforming the first set of query results into a second set of query results wherein the second set of query results are organized according to a set of one-to-one and one-to-many relationships specified for the plurality of logical fields. - View Dependent Claims (19, 20)
-
Specification