Patent Document ID: 7925656
Application ID: 12044451

Base Claim:
1. A method, in a data processing system, for evaluating an electronic document query, comprising: receiving a hierarchical query; separating the hierarchical query into a plurality of query legs; performing an index scan for evaluating the hierarchical query against at least one index of at least one hierarchically structured electronic document by processing a query leg on the at least one index of the at least one hierarchically structured electronic document to determine if a condition of the query leg is met by at least one node in the at least one index of the at least one hierarchically structured electronic document, wherein if at least one node in the at least one index of the at least one hierarchically structured electronic document satisfies the condition of the query leg, an entry in at least one hash table is populated with information regarding the at least one node; generating results of the hierarchical query based on content of the at least one hash table; and returning the results of the hierarchical query to an originator of the hierarchical query, wherein the at least one hash table comprises a BUILD hash table and a PROBE hash table, wherein the BUILD hash table is used to store document nodes matching a predicate of the query leg and to buffer document nodes satisfying extraction nodes of the query leg, and wherein the PROBE hash table stores document nodes satisfying predicates from query legs evaluated prior to a current query leg being evaluated.

---

Claim 3:
3. The method of claim 1 , wherein performing the index scan is performed for each query leg of the plurality of query legs, and wherein results of the index scans of the plurality of query legs are joined using at least one hierarchical multi-way hash join operation that operates on the BUILD hash table and the PROBE hash table.