Parent-child query indexing for xml databases
AssigneeMark Logic Corporation
InventorsChristopher Lindblad, Paul Pedersen
Life of this patent
Estimating the term…
Abstract
A method for processing queries for a document of elements is provided. The document includes a plurality of subsections where each subsection includes at least a portion of elements in the document. The method comprises: receiving a query for a path of elements in the document of elements; determining a plurality of step queries from the query, each step query including at least a part of the path of elements; for each step query in the plurality of step queries, determining one or more subsections that include elements that correspond to a step query; and determining at least one subsection that includes the path of elements of the query. A result for the query is generated using the at least one subsection.
Claims20
A method for generating a result for a query of a document of elements using pre-computed step queries and pre-computed step query results stored in a database, the method comprising:
- receiving the query, wherein the query comprises a path of elements in the document of elements;
- reducing the query into a plurality of step queries, wherein a step query comprises a relationship between a plurality of elements determined from a part of the path of elements;
- for each of the plurality of step queries, retrieving a pre-computed step query result for a step query in the plurality of step queries by querying the database using the step query, wherein the step query corresponds to a pre-computed step query for the pre-computed step query result;
- and
- generating the result for the query using the step query results.
A method for creating a database of step queries and step query results for a document of elements, the method comprising:
- determining relationships between a plurality of elements from the document of elements;
- generating step queries from the relationships;
- generating step query results for the step queries, wherein a step query result for a step query corresponds to one or more elements in the document of elements for the step query;
- and
- storing the step queries and corresponding step query results in the database, wherein the stored step query results are usable to generate a result for a main query, wherein the main query can be reduced to a plurality of step queries that correspond to the stored step queries.
Dependencies are inferred from the claim text.