TECHNIQUES FOR CHANGING XML CONTENT IN A RELATIONAL DATABASE
First Claim
1. A method for changing data for an extensible Markup Language (XML) construct in a Structured Query Language (SQL) compliant database management system (DBMS) that allows instances of XML type to represent XML constructs, comprising the steps of:
- receiving a SQL statement that includes an operator that operates on a component that is less than all of an instance of XML type; and
during execution of the SQL statement, evaluating the operator by modifying content for the component without modifying all of the instance of XML type.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques are provided for changing data for an XML construct in an SQL/XML compliant database management system (DBMS). The DBMS allows instances of XML type to represent XML constructs, such as XML documents, XML elements, XML attributes, and fragments of XML documents. An SQL statement is received that includes an XML operator that operates on a particular component in an instance of XML type. During execution of the SQL statement, the XML operator is evaluated by modifying content for the component without modifying the entire instance. For example, an XML delete operator deletes the particular component from the instance. Other XML operators include an insert operator, an insert-before operator, an append-child operator, and an update operator. During execution, these operators may be rewritten to operate on existing SQL constructs, or evaluated by updating only some of the existing SQL constructs, or both.
172 Citations
40 Claims
-
1. A method for changing data for an extensible Markup Language (XML) construct in a Structured Query Language (SQL) compliant database management system (DBMS) that allows instances of XML type to represent XML constructs, comprising the steps of:
-
receiving a SQL statement that includes an operator that operates on a component that is less than all of an instance of XML type; and
during execution of the SQL statement, evaluating the operator by modifying content for the component without modifying all of the instance of XML type.
-
-
2. A method for changing data for an eXtensible Markup Language (XML) construct in a Structured Query Language (SQL) compliant database management system (DBMS) that allows instances of XML type to represent XML constructs, comprising the steps of:
-
receiving a SQL statement that includes a delete operator that operates on a first component of an instance of XML type; and
during execution of the SQL statement, evaluating the delete operator by deleting the first component from the instance of XML type. - View Dependent Claims (3, 4, 5)
-
-
6. A method for changing data for an extensible Markup Language (XML) construct in a Structured Query Language (SQL) compliant database management system (DBMS) that allows instances of XML type to represent XML constructs, comprising the steps of:
-
receiving an SQL statement that includes an insert operator that operates on a first component in an instance of XML type, wherein the first component represents a first XML construct, data that indicates a name an element for the first XML construct, and an expression for a particular value for XML content; and
during execution of the SQL statement, evaluating the insert operator by generating, based on the expression for the particular value, a second component that represents a second XML construct that is a child XML element of the first XML construct and has an XML element name based on the data that indicates the name. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A method for changing data for an eXtensible Markup Language (XML) construct in a Structured Query Language (SQL) compliant database management system (DBMS) that allows instances of XML type to represent XML constructs, comprising the steps of:
-
receiving an SQL statement that includes an insert-before operator that operates on a first component in an instance of XML type, wherein the first component represents a first XML construct, and an expression for a particular value for XML content; and
during execution of the SQL statement, evaluating the insert-before operator by generating, based on the expression for the particular value, a second component representing a second XML construct inserted before the first XML construct in the instance of XML type in XML document order. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A method for changing data for an eXtensible Markup Language (XML) construct in a Structured Query Language (SQL) compliant database management system (DBMS) that allows instances of XML type to represent XML constructs, comprising the steps of:
-
receiving an SQL statement that includes an append-child operator that operates on a first component in an instance of XML type, wherein the first component represents a first XML construct, and an expression for a particular value for XML content; and
during execution of the SQL statement, evaluating the append-child operator by generating, based on the expression for the particular value, a second component that represents a second XML construct that is a child of the first XML construct in the instance of XML type. - View Dependent Claims (18, 19, 20, 21)
-
-
22. A method for changing data for an eXtensible Markup Language (XML) construct in a Structured Query Language (SQL) compliant database management system (DBMS) that allows instances of XML type to represent XML constructs, comprising the steps of:
-
receiving a SQL statement that includes an update operator that operates on a first component in an instance of XML type, wherein the first component represents a first XML construct, and an expression for a particular value for XML content; and
during execution of the SQL statement, evaluating the update operator by generating, based on the expression for the particular value, a second component that represents a second XML construct that replaces the first XML construct in the instance of XML type. - View Dependent Claims (23, 24, 25, 26)
-
-
27. A method for executing database update commands on extensible markup language (XML constructs in a Structured Query Language (SQL) compliant database management system (DBMS) that allows instances of XML type to represent XML constructs, comprising the steps of:
-
receiving a database modification statement to modify a first component in an instance of XML type, wherein the first component represents a first XML construct; and
during execution of the database modification statement, evaluating the database modification statement, including determining, of the instance of XML type, a first portion that is affected by executing the database modification statement, wherein the first portion is less than all of the instance of XML type; and
mapping the first portion to a first set of at least one SQL construct; and
updating the first set of at least one SQL construct without updating a second set of at least one SQL construct that represents a second portion of the instance of XML type, wherein the second portion is not affected by executing the database modification statement. - View Dependent Claims (28, 29, 30)
-
-
31. A method for executing database update commands on extensible markup language (XML) constructs in a Structured Query Language (SQL) compliant database management system (DBMS) that allows instances of XML type to represent XML constructs, comprising the steps of:
-
receiving a database modification statement to modify a first component in an instance of XML type, wherein the first component represents a first XML construct;
compiling the database modification statement, including;
determining a particular set of one or more SQL constructs that are affected by the database modification statement; and
rewriting the database modification statement as a set of one or more SQL operations on the particular set of one or more SQL constructs; and
evaluating the database modification statement by evaluating the set of one or more SQL operations on the particular set of one or more SQL constructs. - View Dependent Claims (32)
-
-
33. A computer-readable medium carrying one or more sequences of instructions for changing data for an extensible Markup Language (XML) construct in a Structured Query Language (SQL) compliant database management system (DBMS) that uses instances of XML type to represent XML constructs, 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:
-
receiving a SQL statement that includes an operator that operates on a component that is less than all of an instance of XML type; and
during execution of the SQL statement, evaluating the operator by modifying content for the component without modifying all of the instance of XML type.
-
-
34. A computer-readable medium carrying one or more sequences of instructions for changing data for an extensible Markup Language (XML) construct in a Structured Query Language (SQL) compliant database management system (DBMS) that allows instances of XML type to represent XML constructs, 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:
-
receiving a SQL statement that includes a delete operator that operates on a first component of an instance of XML type; and
during execution of the SQL statement, evaluating the delete operator by deleting the first component from the instance of XML type.
-
-
35. A computer-readable medium carrying one or more sequences of instructions for changing data for an extensible Markup Language (XML) construct in a Structured Query Language (SQL) compliant database management system (DBMS) that allows instances of XML type to represent XML constructs, 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:
-
receiving an SQL statement that includes an insert operator that operates on a first component in an instance of XML type, wherein the first component represents a first XML construct, data that indicates a name of an element for the first XML construct, and an expression for a particular value for XML content; and
during execution of the SQL statement, evaluating the insert operator by generating, based on the expression for the particular value, a second component that represents a second XML construct that is a child XML element of the first XML construct and has an XML element name based on the data that indicates the name.
-
-
36. A computer-readable medium carrying one or more sequences of instructions for changing data for an eXtensible Markup Language (XML) construct in a Structured Query Language (SQL) compliant database management system (DBMS) that allows instances of XML type to represent XML constructs, 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:
-
receiving an SQL statement that includes an insert-before operator that operates on a first component in an instance of XML type, wherein the first component represents a first XML construct, and an expression for a particular value for XML content; and
during execution of the SQL statement, evaluating the insert-before operator by generating, based on the expression for the particular value, a second component that represents a second XML construct inserted before the first XML construct in the instance of XML type in XML document order.
-
-
37. A computer-readable medium carrying one or more sequences of instructions for changing data for an eXtensible Markup Language (XML) construct in a Structured Query Language (SQL) compliant database management system (DBMS) that allows instances of XML type to represent XML constructs, 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:
-
receiving an SQL statement that includes an append-child operator that operates on a first component in an instance of XML type, wherein the first component represents a first XML construct, and an expression for a particular value for XML content; and
during execution of the SQL statement, evaluating the append-child operator by generating, based on the expression for the particular value, a second component that represents a second XML construct that is a child of the first XML construct in the instance of XML type.
-
-
38. A computer-readable medium carrying one or more sequences of instructions for changing data for an eXtensible Markup Language (XML) construct in a Structured Query Language (SQL) compliant database management system (DBMS) that allows instances of XML type to represent XML constructs, 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:
-
receiving a SQL statement that includes an update operator that operates on a first component in an instance of XML type, wherein the first component represents a first XML construct, and an expression for a particular value for XML content; and
during execution of the SQL statement, evaluating the update operator by generating, based on the expression for the particular value, a second component that represents a second XML construct that replaces the first XML construct in the instance of XML type.
-
-
39. A computer-readable medium carrying one or more sequences of instructions for executing database update commands on extensible markup language (XML) constructs in a Structured Query Language (SQL) compliant database management system (DBMS) that allows instances of XML type to represent XML constructs, 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:
-
receiving a database modification statement to modify a first component in an instance of XML type, wherein the first component represents a first XML construct; and
during execution of the database modification statement, evaluating the database modification statement, including determining, of the instance of XML type, a first portion that is affected by executing the database modification statement, wherein the first portion is less than all of the instance of XML type; and
mapping the first portion to a first set of at least one SQL construct; and
updating the first set of at least one SQL construct without updating a second set of at least one SQL construct that represents a second portion of the instance of XML type, wherein the second portion is not affected by executing the database modification statement.
-
-
40. A computer-readable medium carrying one or more sequences of instructions for executing database update commands on extensible markup language (XML) constructs in a Structured Query Language (SQL) compliant database management system (DBMS) that allows instances of XML type to represent XML constructs, 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:
-
receiving a database modification statement to modify a first component in an instance of XML type, wherein the first component represents a first XML construct;
compiling the database modification statement, including;
determining a particular set of one or more SQL constructs that are affected by the database modification statement; and
rewriting the database modification statement as a set of one or more SQL operations on the particular set of one or more SQL constructs; and
evaluating the database modification statement by evaluating the set of one or more SQL operations on the particular set of one or more SQL constructs.
-
Specification