摘要:
An apparatus and method for handling a LET binding used in a WHERE clause of an XQuery FLWOR expression during an XML pivot join procedure. The disclosed apparatus and method enable an XML pivot join procedure to accurately process a query and return one or more qualifying documents. A logical expression within the WHERE clause is identified. Next steps of the logical expression are separated by logical operators. The LET binding is incorporated with each next step. The XQuery FLWOR expression is rewritten using the incorporations along with a FOR binding of the XQuery FLWOR expression to make a syntactically equivalent XPath query. Predicates of the LET binding may also be incorporated with the next steps, without altering the predicates.
摘要:
A method and apparatus is disclosed for XML query evaluation using early-outs and multiple passes to evaluate an XML query. A multi-pass evaluation procedure evaluates the XML query one step at a time as needed to complete evaluation. The multi-pass evaluation procedure evaluates XML queries containing logical expressions such as “AND” expressions, “OR” expressions, and implied “AND” expressions within “FOR” clauses. Queries containing logical expressions are often satisfied before every component is evaluated. Thus, executing the multi-pass evaluation procedure allows the evaluation to exit early when the veracity of the query is determined, not necessarily when every component has been evaluated. The multi-pass evaluation procedure executes as long as a descendant axis of the XML query need not be evaluated past a child node. When evaluation of a descendant axis past a child node is required, the multi-pass evaluation procedure may switch to a single-pass evaluation procedure to complete evaluation.
摘要:
An apparatus and method are disclosed for finding and returning sub-trees from within a preselected XML document that match an XQuery FLWOR expression having a binding order, in which a match graph is generated from an XML index of node paths for a collection of XML documents, where the collection includes the preselected XML document and the match graph is first traversed by a plurality of cursors in a reverse binding order and traversed by the plurality of cursors in forward binding order.
摘要:
An apparatus and method are disclosed for handling a LET binding used in a WHERE clause of an XQuery FLWOR expression during an XML pivot join procedure. The disclosed apparatus and method enable an XML pivot join procedure to accurately process a query and return one or more qualifying document. A logical expression within the WHERE clause is identified. Next steps of the logical expression are separated by logical operators. The LET binding is incorporated with each next step. The XQuery FLWOR expression is rewritten using the incorporations along with a FOR binding of the XQuery FLWOR expression to make a syntactically equivalent XPath query. Predicates of the LET binding may also be incorporated with the next steps, without altering the predicates.
摘要:
An apparatus and method are disclosed for skipping XML index scans with common ancestors of a previously failed predicate. An XML index is scanned by an XML index scan to filter entries of the index matching at least one search value (predicate) of an XML query. When the XML index scan finds a matching entry, the entry is passed to an XPath evaluation component. The XPath evaluation component evaluates the entry against remaining predicates of the XML query for further qualification. When the XPath evaluation component disqualifies an entry, the XPath evaluation component provides feedback to the XML index scan to skip remaining entries comprising a common ancestor of the disqualified entry's path. The XML index scan can then efficiently skip index entries that will not qualify against the XML query.
摘要:
A method and system for distributed garbage collection in a pipelined workflow environment comprising a plurality of processing nodes that pass item references to each other. Each node maintains a reference list of local item references and a reference dictionary of remote item references, and periodically synchronizes the reference list with the reference dictionaries of other nodes in the workflow, so that item references are not marked for garbage collection while other processing nodes may still have outstanding references to them.
摘要:
An apparatus and method are disclosed for handling a LET binding used in a WHERE clause of an XQuery FLWOR expression during an XML pivot join procedure. XPath steps under a LET binding are identified and marked as bindings. During a match graph construction phase of the pivot join procedure, the bindings are linked to a first common non-LET binding ancestor, while traversing from the bottom up. A location identifier for each binding is truncated to the location identifier of the first common non-LET binding ancestor to create a truncated location identifier. The truncated location identifier is compared to a node identification of a FOR binding of the XQuery FLWOR expression. A match of the node identifications will qualify the XML document and the XML document is returned by the XML pivot join procedure.
摘要:
A method and apparatus is disclosed for XML query evaluation using early-outs and multiple passes to evaluate an XML query. A multi-pass evaluation procedure evaluates the XML query one step at a time as needed to complete evaluation. The multi-pass evaluation procedure evaluates XML queries containing logical expressions such as “AND” expressions, “OR” expressions, and implied “AND” expressions within “FOR” clauses. Queries containing logical expressions are often satisfied before every component is evaluated. Thus, executing the multi-pass evaluation procedure allows the evaluation to exit early when the veracity of the query is determined, not necessarily when every component has been evaluated. The multi-pass evaluation procedure executes as long as a descendant axis of the XML query need not be evaluated past a child node. When evaluation of a descendant axis past a child node is required, the multi-pass evaluation procedure may switch to a single-pass evaluation procedure to complete evaluation.