Patent ID: 7747610

Claim:
A method implemented in a computer having at least a processor and memory for processing of path based queries requesting data from at least one markup language document, the method comprising: parsing a path based query requesting data from at least one markup language document to generate a query tree corresponding to the path based query, wherein the path based query comprises a request to locate nodes of said at least one markup language document matching specified criteria; before generating a query plan for obtaining data requested by the path based query, creating a transformed query tree to represent all paths which may be utilized for obtaining data requested by the path based query based on performing substeps of: consolidating individual nodes of the query tree to form path fragments; distributing outer path fragments on inner path fragments; and materializing all paths for obtaining data requested by the path based query; representing all materialized paths using a multi-path operator, wherein said multi-path operator includes a vector of all materialized paths; generating a query plan for obtaining data requested by the path based query based on the transformed query tree and multi-path operator; and executing said query plan to obtain and return the data requested by the path based query.