Optimizing correlated XML extracts
First Claim
Patent Images
1. A method comprising:
- evaluating a first database query that requests a plurality of requested fields from one or more XML documents stored in a database;
wherein said query requests a respective value for each requested field of the plurality of requested fields and includes an XPATH expression that identifies said each requested field;
wherein the evaluating includes;
identifying the plurality of requested fields as correlated fields of a common XML fragment, the respective value of each requested field of said plurality of requested fields being contained within said common XML fragment; and
determining whether one or more rewrite criteria are satisfied based on the correlated fields; and
if said one or more rewrite criteria are satisfied, then rewriting said first database query to generate a rewritten query that includes a new data source that contains field values from said common XML fragment, wherein the field values from said common XML fragment include the respective value of said each requested field and at least one field value not requested by said database query;
wherein the method is performed by one or more computing devices.
1 Assignment
0 Petitions
Accused Products
Abstract
Queries that request fields that are contained in the same XML fragments are written to execute them more efficiently.
-
Citations
18 Claims
-
1. A method comprising:
-
evaluating a first database query that requests a plurality of requested fields from one or more XML documents stored in a database; wherein said query requests a respective value for each requested field of the plurality of requested fields and includes an XPATH expression that identifies said each requested field; wherein the evaluating includes; identifying the plurality of requested fields as correlated fields of a common XML fragment, the respective value of each requested field of said plurality of requested fields being contained within said common XML fragment; and determining whether one or more rewrite criteria are satisfied based on the correlated fields; and if said one or more rewrite criteria are satisfied, then rewriting said first database query to generate a rewritten query that includes a new data source that contains field values from said common XML fragment, wherein the field values from said common XML fragment include the respective value of said each requested field and at least one field value not requested by said database query; wherein the method is performed by one or more computing devices. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A non-transitory machine-readable storage medium storing one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the following steps:
-
evaluating a first database query that requests a plurality of requested fields from one or more XML documents stored in a database; wherein said query requests a respective value for each requested field of the plurality of requested fields and includes an XPATH expression that identifies said each requested field; wherein the evaluating includes; identifying the plurality of requested fields as correlated fields of a common XML fragment, the respective value of each requested field of said plurality of requested fields being contained within said common XML fragment; and determining whether one or more rewrite criteria are satisfied based on the correlated fields; and if said one or more rewrite criteria are satisfied, then rewriting said first database query to generate a rewritten query that includes a new data source that contains field values from said common XML fragment, wherein the field values from said common XML fragment include the respective value of said each requested field and at least one field value not requested by said database query. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
Specification