Mechanism for mapping XML schemas to object-relational database systems
First Claim
1. A method for managing data in a database server, the method comprising the steps of:
- determining, within the database server, an appropriate database representation for storing within said database server documents that conform to an XML schema;
generating mapping data that indicates correlations between elements of said XML schema and elements of said appropriate database representation;
wherein the step of determining an appropriate database representation includes mapping datatypes associated with elements in said XML schema to datatypes supported by said database server;
creating structures within a database based on said appropriate database representation;
storing in said structures data from XML documents that conform to said XML schema; and
wherein the step of storing in said structures data from XML documents includes the steps of;
receiving an XML document at said database server,identifying certain data, from said XML document, that is associated with individual elements of said XML schema, andstoring the certain data that is associated with individual elements at locations within said structures based on the individual elements associated with the certain data, and the mapping data.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system are provided for allowing users to register XML schemas in a database system. The database system determines, based on a registered XML schema, how to store within the database system XML documents that conform to the XML schema. This determination involves mapping constructs defined in the XML schema to constructs supported by the database system. Such constructs may include datatypes, hierarchical relationship between elements, constraints, inheritances, etc. Once the mapping has been determined, it is stored and used by the database system to determine how to store subsequently received XML documents that conform to the registered XML schema.
-
Citations
72 Claims
-
1. A method for managing data in a database server, the method comprising the steps of:
-
determining, within the database server, an appropriate database representation for storing within said database server documents that conform to an XML schema; generating mapping data that indicates correlations between elements of said XML schema and elements of said appropriate database representation; wherein the step of determining an appropriate database representation includes mapping datatypes associated with elements in said XML schema to datatypes supported by said database server; creating structures within a database based on said appropriate database representation; storing in said structures data from XML documents that conform to said XML schema; and wherein the step of storing in said structures data from XML documents includes the steps of; receiving an XML document at said database server, identifying certain data, from said XML document, that is associated with individual elements of said XML schema, and storing the certain data that is associated with individual elements at locations within said structures based on the individual elements associated with the certain data, and the mapping data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. A method for executing database commands that involve operations on extensible markup language (XML) constructs, comprising the steps of:
-
a database server receiving a database command that includes an XML component operation that operates on an XML construct that is based on a first set of one or more relational database constructs; said database server determining whether to transform the XML component operation to a relational database operation that does not involve the XML component operation and that operates on a particular set of one or more relational database constructs of the first set of one or more relational database constructs; and in response to said database server determining to transform the XML component operation to a relational database operation that does not involve the XML component operation, said database server; rewriting the XML component operation as a particular relational database operation that does not involve the XML component operation, and evaluating the particular relational database operation on the particular set of one or more relational database constructs. - View Dependent Claims (25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36)
-
-
37. A computer-readable storage medium carrying one or more sequences of instructions for managing data in a database server, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of:
-
determining, within the database server, an appropriate database representation for storing within said database server documents that conform to an XML generating mapping data that indicates correlations between elements of said XML schema and elements of said appropriate database representation wherein the step of determining an appropriate database representation includes mapping datatypes associated with elements in said XML schema to datatypes supported by said database server; creating structures within a database based on said appropriate database representation; storing in said structures data from XML documents that conform to said XML schema; and wherein the step of storing in said structures data from XML documents includes the steps of; receiving an XML document at said database server, identifying certain data, from said XML document, that is associated with individual elements of said XML schema, and storing the certain data that is associated with individual elements at locations within said structures based on the individual elements associated with the certain data, and the mapping data. - View Dependent Claims (38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59)
-
-
60. A computer-readable storage medium carrying one or more sequences of instructions for executing database commands that involve operations on extensible markup language (XML) constructs, wherein execution of the one or more sequences of instructions by one or more processors causes the to perform the steps of:
-
database server receiving a database command that includes an XML component operation that operates on an XML construct that is based on a first set of one or more relational database constructs; said database server determining whether to transform the XML component operation to a relational database operation that does not involve the XML component operation and that operates on a particular set of one or more relational database constructs of the first set of one or more relational database constructs; and in response to said database server determining to transform the XML component operation to a relational database operation that does not involve the XML component operation, said database server; rewriting the XML component operation as a particular relational database operation that does not involve the XML component operation, and evaluating the particular relational database operation on the particular set of one or more relational database constructs. - View Dependent Claims (61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72)
-
Specification