Relational database system providing XML query support
First Claim
1. A method for transforming Extensible Markup Language (XML) documents for querying using a database query, the method comprising:
- receiving an XML document;
transforming said XML document into a transformed object including information from said XML document together with an interface, said interface providing random access to information of interest within said transformed object; and
in response to a database query for information of interest, retrieving said information of interest from said transformed object.
3 Assignments
0 Petitions
Accused Products
Abstract
A system providing methods enabling data in Extensible Markup Language (“XML”) format to be extracted, transformed and stored in a database, file system or main memory is described. The extraction and transformation process is generalized and can be used on various types of XML data, enabling XML data to be stored and queried using standard database query methodologies. The system includes parse-time functionality to transform XML documents into a structure having an interface that enables efficient access to the underlying data. The system also includes query execution-time functionality providing greater efficiency by bringing only the relevant portions of transformed XML data into memory in response to a query. The system parses and translates queries into a structure that can be executed without the need to write custom application-specific navigation code to search XML data. The system also enables original XML documents (or portions thereof) to be recomposed when required.
161 Citations
73 Claims
-
1. A method for transforming Extensible Markup Language (XML) documents for querying using a database query, the method comprising:
-
receiving an XML document;
transforming said XML document into a transformed object including information from said XML document together with an interface, said interface providing random access to information of interest within said transformed object; and
in response to a database query for information of interest, retrieving said information of interest from said transformed object. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A system for transforming Extensible Markup Language (XML) documents for storage in a database, the system comprising:
-
a parser event processing module for receiving a given XML document as input and verifying that said XML document is well formed;
a transformation module for transforming said given XML document into an object, said object including data from said given XML document and meta data structures to facilitate random access to said data; and
a database for storing said object. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37)
-
-
38. A system for querying documents in Extensible Markup Language (XML) format using a database query, said system comprising:
-
a query parsing module for receiving and parsing a given database query into a logical tree;
a query translation module for translation of said logical tree into a query plan, said query plan comprising a format appropriate for execution against transformed XML documents; and
a query execution module for executing said query plan and returning results. - View Dependent Claims (39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53)
-
-
54. A method for transforming a document in tag delimited format to enable access to data in said object, the method comprising:
-
verifying that said document in tag delimited format is well formed;
transforming said document into a logical tree in which each element of said object is a node of said logical tree;
labeling each said node of said logical tree with a unique identifier; and
generating an interface facilitating random access to data in said logical tree. - View Dependent Claims (55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65)
-
-
66. A method for transforming documents in Extensible Markup Language (XML) format to enable access to data in said documents, the method comprising:
-
receiving documents in XML format;
transforming said documents into a transformed object, said transformed object including data from said documents and meta data facilitating access to said data; and
in response to a request, providing data from said documents by performing the substeps of;
parsing said request for data into a logical tree;
transforming said logical tree into a physical plan for execution; and
executing said physical plan against said transformed object and returning data resulting from execution of said physical plan. - View Dependent Claims (67, 68, 69, 70, 71, 72, 73)
-
Specification