US6604100B1
Expired / Lapsed
US
⏱️ 0.0 years remaining
Method for converting relational data into a structured document
Assignee: Alto Dynamics LLC
•
Filing: 2001-02-08
•
Granted: 2003-08-05
•
Expires: 2021-02-08
Abstract
Abstract A method for converting relational data to XML (Extensible Markup Language) is provided. The method, sometimes referred to as SilkRoute, provides a general, dynamic and efficient tool for viewing and querying relational data in XML. SilkRoute can express mappings of relational data in XML that conforms to arbitrary public document type definitions. Also, SilkRoute can materialize the fragment of an XML view needed by an application and it can fully exploit the query engine of a relational database management system whenever data items in an XML view need to be materialized.
Inventors
- 👤 Maria F. Fernandez
- 👤 Dan Suciu
- 👤 Wang-Chiew Tan
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-06 02:58
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/20; G06F16/25; G06F16/258; G06F40/00; G06F40/10; G06F40/12; G06F40/14; G06F40/143; G06F40/149; G06F40/151; Y; Y10; Y10S; Y10S707/00; Y10S707/99931; Y10S707/99933
Claims Analysis
Total Claims: 53
Claim 1
Independent Claim
144 words
A method for converting relational data from a relational database into a structured document comprising the steps of: storing a view query that defines a structured document view of the relational database, a structure of the view query being independent of a structure of data in the relational database; receiving a user query against the structured document view; forming an executable query by determining a composition of the view query and the user query; partitioning the executable query into a data extraction portion and a construction portion; transmitting the data extraction portion to the relational database; receiving at least one tuple stream from the relational database according to the data extraction portion; and merging the at least one tuple stream and the construction portion to generate a structured document, wherein the structured document view is capable of defining a document of arbitrary nesting depth.
Claim 2
Independent Claim
144 words
A method for converting relational data from a relational database into a structured document comprising the steps of: storing a view query that defines a structured document view of the relational database, a structure of the view query being independent of a structure of data in the relational database; receiving a user query against the structured document view; forming an executable query by determining a composition of the view query and the user query; partitioning the executable query into a data extraction portion and a construction portion; transmitting the data extraction portion to the relational database; receiving at least one tuple stream from the relational database according to the data extraction portion; and merging the at least one tuple stream and the construction portion to generate a structured document, wherein the structured document view is capable of defining a document of arbitrary nesting depth.
Claim 3
Dependent Claim
14 words
The method according to claim 1 , wherein the user query is in XML-QL.
Claim 4
Dependent Claim
15 words
The method according to claim 2 , wherein the view query is a RXL query.
Claim 5
Dependent Claim
15 words
The method according to claim 3 , wherein the executable query is another RXL query.
Claim 6
Dependent Claim
28 words
The method device according to claim 1 , wherein said step of receiving the user query includes receiving the user query from an application over a distributed network.
Claim 7
Dependent Claim
15 words
The method according to claim 5 , wherein the distributed network is a private network.
Claim 8
Dependent Claim
16 words
The method according to claim 5 , wherein the distributed network is the World Wide Web.
Claim 9
Dependent Claim
23 words
The method according to claim 5 , further including the step of transmitting the structured document to the application over the distributed network.
Claim 10
Dependent Claim
21 words
The method according to claim 1 , wherein an answer to the executable query includes a fragment of the relational database.
Claim 11
Dependent Claim
20 words
The method according to claim 9 , wherein the fragment is one data item or a set of data items.
Claim 12
Dependent Claim
14 words
The method according to claim 9 , wherein the fragment is an aggregate value.
Claim 13
Dependent Claim
18 words
The method according to claim 9 , wherein the structured document includes the answer to the executable query.
Claim 14
Dependent Claim
18 words
The method according to claim 1 , wherein the data extraction portion includes at least one SQL query.
Claim 15
Dependent Claim
15 words
The method according to claim 13 , wherein the construction portion is an XML template.
Claim 16
Dependent Claim
32 words
The method according to claim 13 , wherein said step of receiving the at least one tuple stream includes receiving one tuple stream for each SQL-query included in the data extraction portion.
Claim 17
Dependent Claim
26 words
The method according to claim 1 , wherein said step of forming the executable query includes combining fragments of the user query and the view query.
Claim 18
Dependent Claim
132 words
A computer readable medium including a set of executable instructions stored thereon for converting relational data stored in a relational database into structured document data, the set of instructions including: forming an executable query from a view query that defines a structured document view of the relational database and a user query, a structure of the view query being independent from a structure of the relational data in the relational database; partitioning the executable query into a data extraction portion and a construction portion; retrieving at least one tuple stream from the relational database according to the data extraction portion; and merging the at least one tuple stream and the construction portion to generate a structured document, wherein the structured document view is capable of defining a document of arbitrary nesting depth.
Claim 19
Dependent Claim
132 words
A computer readable medium including a set of executable instructions stored thereon for converting relational data stored in a relational database into structured document data, the set of instructions including: forming an executable query from a view query that defines a structured document view of the relational database and a user query, a structure of the view query being independent from a structure of the relational data in the relational database; partitioning the executable query into a data extraction portion and a construction portion; retrieving at least one tuple stream from the relational database according to the data extraction portion; and merging the at least one tuple stream and the construction portion to generate a structured document, wherein the structured document view is capable of defining a document of arbitrary nesting depth.
Claim 20
Dependent Claim
16 words
The computer readable medium according to claim 17 , further comprising storage for the view query.
Claim 21
Dependent Claim
17 words
The computer readable medium according to claim 18 , wherein the view query is a RXL query.
Claim 22
Dependent Claim
17 words
The computer readable medium according to claim 19 , wherein the executable query is another RXL query.
Claim 23
Dependent Claim
23 words
The computer readable medium according to claim 17 , wherein an answer to the executable query includes a fragment of the relational database.
Claim 24
Dependent Claim
22 words
The computer readable medium according to claim 21 , wherein the fragment is one data item or a set of data items.
Claim 25
Dependent Claim
16 words
The computer readable medium according to claim 21 , wherein the fragment is an aggregate value.
Claim 26
Dependent Claim
20 words
The computer readable medium according to claim 21 , wherein the structured document includes the answer to the executable query.
Claim 27
Dependent Claim
20 words
The computer readable medium according to claim 17 , wherein the data extraction portion includes at least one SQL query.
Claim 28
Dependent Claim
34 words
The computer readable medium according to claim 25 , wherein said step of retrieving the at least one tuple stream includes retrieving one tuple stream for each SQL-query included in the data extraction portion.
Claim 29
Dependent Claim
28 words
The computer readable medium according to claim 17 , wherein said instruction of forming the executable query includes combining fragments of the user query and the view query.
Claim 30
Dependent Claim
164 words
A computer system for converting relational data in a relational database into structured document data, said system comprising: a query composer module configured to form an executable query from a view query that defines a structured document view of the relational data and a user query, the view query having a structure that is independent of a structure of the relational data in the relational database; a translator module coupled to the query composer module configured to receive the executable query, partition the executable query into a data extraction portion and an construction portion, and transmit the data extraction portion to a relational database; a generator module configured to receive the construction portion from said translator module, receive at least one tuple stream from the relational database based on data extraction portion, and merge the at least one tuple stream and the construction portion to generate a structured document, wherein the structured document view is capable of defining a document of arbitrary nesting depth.
Claim 31
Dependent Claim
164 words
A computer system for converting relational data in a relational database into structured document data, said system comprising: a query composer module configured to form an executable query from a view query that defines a structured document view of the relational data and a user query, the view query having a structure that is independent of a structure of the relational data in the relational database; a translator module coupled to the query composer module configured to receive the executable query, partition the executable query into a data extraction portion and an construction portion, and transmit the data extraction portion to a relational database; a generator module configured to receive the construction portion from said translator module, receive at least one tuple stream from the relational database based on data extraction portion, and merge the at least one tuple stream and the construction portion to generate a structured document, wherein the structured document view is capable of defining a document of arbitrary nesting depth.
Claim 32
Dependent Claim
28 words
The computer system according to claim 28 , wherein said translator module receives a description of a schema of the relational data prior to partitioning the executable query.
Claim 33
Dependent Claim
30 words
The computer system according to claim 28 , wherein the user query is in XML-QL, the view query is a RXL query and the executable query is another RXL query.
Claim 34
Dependent Claim
27 words
The computer system according to claim 28 , wherein said query composer module is configured to receive the user query from an application over a distributed network.
Claim 35
Dependent Claim
26 words
The computer system according to claim 31 , wherein said generator module is configured to transmit the structured document to the application over the distributed network.
Claim 36
Dependent Claim
22 words
The computer system according to claim 28 , wherein an answer to the executable query includes a fragment of the relational database.
Claim 37
Dependent Claim
24 words
The computer system according to claim 33 , wherein the fragment is one data item, a set of data items or an aggregate value.
Claim 38
Dependent Claim
19 words
The computer system according to claim 33 , wherein the structured document includes the answer to the executable query.
Claim 39
Dependent Claim
19 words
The computer system according to claim 28 , wherein the data extraction portion includes at least one SQL query.
Claim 40
Dependent Claim
25 words
The computer system according to claim 36 , wherein said generator module receives one tuple stream for each SQL-query included in the data extraction portion.
Claim 41
Dependent Claim
28 words
The computer system according to claim 28 , wherein said query composer module combines fragments of the user query and the view query to form the executable query.
Claim 42
Dependent Claim
19 words
The computer system according to claim 28 , wherein the data extraction portion is executable by the relational database.
Claim 43
Dependent Claim
52 words
The computer system according to claim 28 , where in the query composer module includes a pattern matcher module configured to match patterns of the user query and the view query to obtain a solutions relation, in which each tuple represents a match; and a rewriter module configured to rewrite each tuple.
Claim 44
Independent Claim
108 words
A method of forming a composed query for use in converting relational data of a relational database into XML data, said method comprising the steps of: receiving a user query in an XML based language requesting relational data; forming a view query in a transformation language, the view query defining a structured document view of the relational data and having a structure that is independent from a structure of the relational data of the relational database; and composing an executable query in the transformation language from the view query and the user query, wherein the structured document view is capable of defining a document of arbitrary nesting depth.
Claim 45
Independent Claim
108 words
A method of forming a composed query for use in converting relational data of a relational database into XML data, said method comprising the steps of: receiving a user query in an XML based language requesting relational data; forming a view query in a transformation language, the view query defining a structured document view of the relational data and having a structure that is independent from a structure of the relational data of the relational database; and composing an executable query in the transformation language from the view query and the user query, wherein the structured document view is capable of defining a document of arbitrary nesting depth.
Claim 46
Dependent Claim
13 words
The method according to claim 41 , wherein the transformation language is RXL.
Claim 47
Dependent Claim
49 words
The method according to claim 41 , wherein said step of composing includes the steps of: matching patterns of the user query and the view query to obtain a solutions relation, in which each tuple represents a match; and rewriting each tuple into a clause in the transformation language.
Claim 48
Dependent Claim
34 words
The method according to claim 43 , wherein said step, of matching patterns includes the steps of: constructing a view tree from the view query; and evaluating the user query on the view tree.
Claim 49
Dependent Claim
38 words
The method according to claim 43 , wherein said step of rewriting includes the step of constructing at least one block using from and where clause of the view query and a construct clause of the user query.
Claim 50
Dependent Claim
43 words
The method according to claim 43 , wherein said step of rewriting each tuple into a clause in the transformation language is conducted on the basis of from/where clauses of the view query, the solutions relation, and construct clauses of the user query.
Claim 51
Dependent Claim
16 words
The method according to claim 1 , wherein a format of the structured document is XML.
Claim 52
Dependent Claim
18 words
The computer readable medium according to claim 17 , wherein a format of the structured document is XML.
Claim 53
Dependent Claim
22 words
The computer system according to claim 28 , wherein a format of the structured document generated by the generator module is XML.
References Cited (Backward Citations)
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2006-08-04 | 2007-02-03 | 2007-08-05 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2010-08-04 | 2011-02-03 | 2011-08-05 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2014-08-04 | 2015-02-03 | 2015-08-05 | $7700.00 | Window Closed / Lapsed |