Creation of pre-filters for more efficient X-path processing
First Claim
Patent Images
1. An XML query rewrite method comprising:
- transforming, via an execution compiler included in an XML compilation processor executable via hardware or a combination of hardware and software, an XML query into an XML query plan, said transforming into said XML query plan comprising;
identifying an XPath within said XML query using a query rewrite processor included in said XML compilation processor; and
transforming, via query transformation on said XML query, said XPath into a pre-filter of said XML query using said query rewrite processor, wherein said query rewrite processor is adapted to perform said query transformation by transforming the expression;
$i[e1][e2] into the expression $i[e1][e2]/e2, wherein e1 is a filter and e2 is a deterministic XQuery expression, and wherein subsequent to said transforming of the expression, applying said XML query to a sequence of XML items selected from a group consisting of;
a sequence of XML items extracted from one or more extensible markup language (XML) documents, a sequence of XML items supplied by an Internet service, a sequence of HTML items extracted from one or more hypertext markup language (HTML) documents, and a sequence of HTML items supplied by an Internet service.
4 Assignments
0 Petitions
Accused Products
Abstract
A system and method is provided for XML query processing includes an execution compiler for transforming an XML query into an executable XML query plan. A query rewrite processor performs query transformation on the XML query, the query transformations including transforming an XPath within said XML Query into a pre-filter. The XML query is then transformed into a transformed XML query which includes the pre-filter.
-
Citations
16 Claims
-
1. An XML query rewrite method comprising:
-
transforming, via an execution compiler included in an XML compilation processor executable via hardware or a combination of hardware and software, an XML query into an XML query plan, said transforming into said XML query plan comprising; identifying an XPath within said XML query using a query rewrite processor included in said XML compilation processor; and transforming, via query transformation on said XML query, said XPath into a pre-filter of said XML query using said query rewrite processor, wherein said query rewrite processor is adapted to perform said query transformation by transforming the expression; $i[e1][e2] into the expression $i[e1][e2]/e2, wherein e1 is a filter and e2 is a deterministic XQuery expression, and wherein subsequent to said transforming of the expression, applying said XML query to a sequence of XML items selected from a group consisting of;
a sequence of XML items extracted from one or more extensible markup language (XML) documents, a sequence of XML items supplied by an Internet service, a sequence of HTML items extracted from one or more hypertext markup language (HTML) documents, and a sequence of HTML items supplied by an Internet service. - View Dependent Claims (2, 3, 4, 5)
-
-
6. An XML query rewrite method for processing an XML query, said XML query rewrite method comprising:
-
transforming, via an execution compiler included in an XML compilation processor executable via hardware or a combination of hardware and software, an XML query into an XML query plan, said transforming into said XML query plan comprising; identifying an XPath within said XML query using a query rewrite processor included in said XML compilation processor; and transforming, via query transformation on said XML query, said XPath into a pre-filter of said XML query using said query rewrite processor, wherein said query rewrite processor is adapted to perform said query transformation by transforming the expression; $i[e1][e2] into the expression $i[e1][e2]/e2, wherein e1 is a filter and e2 is a deterministic XQuery expression, and wherein subsequent to said transforming of the expression, applying said XML query to a sequence of XML items selected from a group consisting of;
a sequence of XML items extracted from one or more extensible markup language (XML) documents, a sequence of XML items supplied by an Internet service, a sequence of HTML items extracted from one or more hypertext markup language (HTML) documents, and a sequence of HTML items supplied by an Internet service. - View Dependent Claims (7, 8)
-
-
9. A system comprising:
-
hardware or a combination of hardware and software, and an XML compilation processor, said XML compilation processor comprising; an execution compiler transforming an XML query into an XML query plan; and a query rewrite processor identifying an XPath within said XML query, and transforming, via query transformation on said XML query, said XPath into a pre-filter of said XML query using said query rewrite processor, wherein said query rewrite processor is adapted to perform said query transformation by transforming the expression; $i[e1][e2] into the expression $i[e1][e2]/e2, wherein e1 is a filter and e2 is a deterministic XQuery expression, and wherein subsequent to said transforming of the expression, applying said XML query to a sequence of XML items selected from a group consisting of;
a sequence of XML items extracted from one or more extensible markup language (XML) documents, a sequence of XML items supplied by an Internet service, a sequence of HTML items extracted from one or more hypertext markup language (HTML) documents, and a sequence of HTML items supplied by an Internet service. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A computer program product for querying an XML document, said computer program product comprising:
-
a computer readable storage medium, wherein said computer readable storage medium is selected from a group consisting of an electronic device, a magnetic device, an optical device, an electromagnetic device, an infrared device, a semiconductor device, a semiconductor memory, a solid state memory, a magnetic tape, a removable computer diskette, a random access memory (RAM), a read-only memory (ROM), a rigid magnetic disk, an optical disk, a compact disk—
read-only memory (CR-ROM), a compact disk—
read/write (CD-R/W), and a DVD, said computer readable storage medium having computer readable program code embodied therewith, said computer readable program code comprising;computer readable program code configured to; transforming, via an execution compiler included in an XML compilation processor, an XML query into an XML query plan, said transforming into said XML query plan comprising; identifying an XPath within said XML query using a query rewrite processor included in said XML compilation processor; and transforming, via query transformation on said XML query, said XPath into a pre-filter of said XML query using said query rewrite processor, wherein said query rewrite processor is adapted to perform said query transformation by transforming the expression; $i[e1][e2] into the expression $i[e1][e2]/e2, wherein e1 is a filter and e2 is a deterministic XQuery expression, and wherein subsequent to said transforming of the expression, applying said XML query to a sequence of XML items selected from a group consisting of;
a sequence of XML items extracted from one or more extensible markup language (XML) documents, a sequence of XML items supplied by an Internet service, a sequence of HTML items extracted from one or more hypertext markup language (HTML) documents, and a sequence of HTML items supplied by an Internet service. - View Dependent Claims (16)
-
Specification