Patent Document ID: 8255394
Application ID: 12475999

Base Claim:
1. A method for content indexing of streaming hierarchical document content, the method comprising: identifying a hierarchical node from a streaming hierarchical document, the streaming hierarchical document streamed in document order from an stored intact hierarchical document, the streaming hierarchical document comprising two or more namespace indicators, the hierarchical node associated with a first namespace indicator of the two or more namespace indicators; generating a first portion of a hierarchical pattern forest for the first namespace indicator using a first set of structured index path expressions, the hierarchical pattern forest comprising at least one of a tree and a twig generated from one or more structured index path expressions of the first set of structured index path expressions; comparing the hierarchical node to nodes of the first portion of the hierarchical pattern forest; matching the hierarchical node with an index node in one of a tree and a twig of the first portion of the hierarchical pattern forest, the index node having a path from an ancestor node to the index node that matches axis steps of at least one of the structured index path expressions for the first namespace indicator; storing an index entry for the hierarchical node in response to the determined match; identifying a second hierarchical node associated with a second namespace indicator; and generating a second portion of the hierarchical pattern forest for the second namespace indicator using a second set of structured index path expressions.

---

Claim 3:
3. The method of claim 1 , wherein generating the first portion of the hierarchical pattern forest further comprises, reading the first set of structured index path expressions from a repository, the first set of structured index path expressions identified by way of the first namespace indicator; ignoring each index path expression having no descendent axis steps; ignoring each index path expression having a first axis step that is different from a root node of the streaming hierarchical document; defining a new twig for each index path expression having a descendent-or-self axis for a first step, the new twig comprising nodes representing the index path expression; defining a new tree for each index path expression having a first axis step different from a root of an existing tree in the hierarchical pattern forest, the new tree comprising nodes representing the index path expression; and identifying an existing tree in the forest having a root node matching the first axis step of an index path expression and appending a branch of nodes to the existing tree, the branch of nodes corresponding to one or more axis steps of the index path expression that differ from nodes of the existing tree, the branch anchored at a node that matches a last matching axis step of the index path expression evaluated from left to right.