Patent ID: 7260572

Claim:
A method of processing a query about Extensible Markup Language (XML) data in a processing system, comprising: the first step of representing the XML data in the form of an XML graph; the second step of creating and updating an Adaptive Path indEX (APEX) based on used paths extracted from a previously processed XML queries and the XML graph; and the third step of processing an XML query using the APEX; wherein the APEX has a graph structure, each of nodes of the graph structure having an extent instead of an edge set of required paths; upon the system determining that a set of paths starting from a root are Q XML and a set of required paths each having a support greater than a user-specified minimum support or defined as a path having a length of 1 is R, the extent with respect to a path p is defined as E(p)=∪ r∈Q(p) T(r), where T(r) is an edge set for a path r, Q(P)=Q G (P)−Q A (P) and, with respect to a path p, Q G (p)={1|1∈Q XML and p is a suffix of 1} and Q A (P) ={1|1∈Q XML and every path q (≠p) ∈ R having p as a suffix is a suffix of 1}, where p, q and r are each a path; Q XML , Q(p), Q G (p) and Q A (P) are a set of paths; E(p) is the extent; and, T(r) is an edge set for the path r; and, E(p)=∪ r∈Q(p) T(r) is a union of a plurality of T(r) where r is in Q(p); and displaying the APEX.