Method and system for processing structured documents in a native database
First Claim
Patent Images
1. A method for processing a structured document stored in a database, the method comprising the steps of:
- (a) identifying a plurality of strings that are processed by the database;
(b) assigning an identifier to each of the plurality of strings;
(c) storing each of the plurality of strings and the assigned identifier in a table in the database, wherein the table is a global database table;
(d) utilizing the table to replace the plurality of strings with their assigned identifiers throughout the database, wherein the identifiers are used during document processing, wherein the utilizing step (d) further comprises;
(d1) receiving a request to store a structured document in the database, wherein the structured document comprises a plurality of element, attribute and namespace strings,(d2) transforming the structured document by replacing the plurality of element, attribute and namespace strings with their respective identifiers, and(d3) storing the transformed structured document;
(e) designating a status for each of the plurality of strings, wherein the status is one of a temporary status or a permanent status, and storing the status in the table; and
(f) providing a cache in the database for storing a portion of the table, wherein the transforming step (d2) further comprises;
(d2i) requesting an identifier for one of the plurality of element, attribute and namespace strings,(d2ii) checking the cache for the one string,(d2iii) returning the respective identifier if the one string is located in the cache,(d2iv) performing a lookup on the table for the one string if the one string is not located in the cache,(d2v) returning the respective identifier if the one string is located in the table, and(d2vi) assigning a new identifier for the one string, storing the one string and the new identifier in the table, setting the string status to permanent and returning the new identifier if the one string is not located in the table.
1 Assignment
0 Petitions
Accused Products
Abstract
An improved method and system for processing a structured document stored in a database is disclosed. The method includes identifying strings that are processed by the database, assigning an identifier to each of the strings, storing each of the strings and the assigned identifier in a table in the database, where the table is a global database table, and utilizing the table to replace the strings with their assigned identifiers throughout the database, where the identifiers are used during document processing.
-
Citations
23 Claims
-
1. A method for processing a structured document stored in a database, the method comprising the steps of:
-
(a) identifying a plurality of strings that are processed by the database; (b) assigning an identifier to each of the plurality of strings; (c) storing each of the plurality of strings and the assigned identifier in a table in the database, wherein the table is a global database table; (d) utilizing the table to replace the plurality of strings with their assigned identifiers throughout the database, wherein the identifiers are used during document processing, wherein the utilizing step (d) further comprises; (d1) receiving a request to store a structured document in the database, wherein the structured document comprises a plurality of element, attribute and namespace strings, (d2) transforming the structured document by replacing the plurality of element, attribute and namespace strings with their respective identifiers, and (d3) storing the transformed structured document; (e) designating a status for each of the plurality of strings, wherein the status is one of a temporary status or a permanent status, and storing the status in the table; and (f) providing a cache in the database for storing a portion of the table, wherein the transforming step (d2) further comprises; (d2i) requesting an identifier for one of the plurality of element, attribute and namespace strings, (d2ii) checking the cache for the one string, (d2iii) returning the respective identifier if the one string is located in the cache, (d2iv) performing a lookup on the table for the one string if the one string is not located in the cache, (d2v) returning the respective identifier if the one string is located in the table, and (d2vi) assigning a new identifier for the one string, storing the one string and the new identifier in the table, setting the string status to permanent and returning the new identifier if the one string is not located in the table. - View Dependent Claims (2, 3, 4)
-
-
5. A computer readable medium containing a computer program for processing a structured document stored in a database, the computer program comprising instructions for:
-
(a) identifying a plurality of strings that are processed by the database; (b) assigning an identifier to each of the plurality of strings; (c) storing each of the plurality of strings and the assigned identifier in a table in the database, wherein the table is a global database table; (d) utilizing the table to replace the plurality of strings with their assigned identifiers throughout the database, wherein the identifiers are used during document processing, wherein the utilizing instruction (d) further comprises; (d1) receiving a request to store a structured document in the database, wherein the structured document comprises a plurality of element, attribute and namespace strings, (d2) transforming the structured document by replacing the plurality of element, attribute and namespace strings with their respective identifiers, and (d3) storing the transformed structured document; (e) designating a status for each of the plurality of strings, wherein the status is one of a temporary status or a permanent status, and storing the status in the table; and (f) providing a cache in the database for storing a portion of the table, wherein the transforming instruction (d2) further comprises; (d2i) requesting an identifier for one of the plurality of element, attribute and namespace strings, (d2ii) checking the cache for the one string, (d2iii) returning the respective identifier if the one string is located in the cache, (d2iv) performing a lookup on the table for the one string if the one string is not located in the cache, (d2v) returning the respective identifier if the one string is located in the table, and (d2vi) assigning a new identifier for the one string, storing the one string and the new identifier in the table, setting the string status to permanent and returning the new identifier if the one string is not located in the table. - View Dependent Claims (6, 7, 8)
-
-
9. A system for processing a structured document stored in a database, the system comprising:
-
a string identifier generator in the database, wherein the generator is configured to identify a plurality of strings processed by the database and to assign an identifier to each of the plurality of strings; a table in the database for storing each of the plurality of strings and the assigned identifier, wherein the table is a global database table; a cache in the database for storing a portion of the table; and a storage mechanism in the database for receiving and storing a structured document in its native format in the database, wherein the generator utilizes the cache and the table to replace the plurality of strings with their assigned identifiers throughout the database and the identifiers arc used to perform document processing, and wherein the generator is configured to; designate a status for each of the plurality of strings, wherein the status is one of a temporary status or a permanent status, store the status in the table, receive a request for an identifier for a string from the storage mechanism, check the cache for the string, return the identifier if the string is located in the cache, perform a lookup on the table for the string if the string is not located in the cache, return the identifier if the string is located in the table, assign a new identifier for the string, store the string and the new identifier in the table, set the string status to permanent, and return the new identifier if the one string is not located in the table. - View Dependent Claims (10, 11, 12)
-
-
13. A method for processing a structured document stored in a database, the method comprising the steps of:
-
(a) identifying a plurality of strings that are processed by the database; (b) assigning an identifier to each of the plurality of strings; (c) storing each of the plurality of strings and the assigned identifier in a table in the database, wherein the table is a global database table; (d) utilizing the table to replace the plurality of strings with their assigned identifiers throughout the database, wherein the identifiers are used during document processing, wherein the utilizing step (d) further comprises; (d1) receiving a query, wherein the query comprises a plurality of element, attribute and namespace strings, (d2) transforming the query by replacing the plurality of element, attribute and namespace strings with their respective identifiers, and (d3) processing the transformed query; (e) designating a status for each of the plurality of strings, wherein the status is one of a temporary status or a permanent status, and storing the status in the table; and (f) providing a cache in the database for storing a portion of the table, wherein the transforming step (d2) further comprises; (d2i) requesting an identifier for one of the plurality of element, attribute and namespace strings, (d2ii) checking the cache for the one string, (d2iii) returning the respective identifier if the one string is located in the cache, (d2iv) performing a lookup on the table for the one string if the one string is not located in the cache, (d2v) returning the respective identifier if the one string is located in the table, and (d2vi) assigning a new identifier for the one string, storing the one string and the new identifier in the table, setting the string status to temporary and returning the new identifier if the one string is not located in the table. - View Dependent Claims (14, 15, 16)
-
-
17. A computer readable medium containing a computer program for processing a structured document stored in a database, the computer program comprising instructions for:
-
(a) identifying a plurality of strings that are processed by the database; (b) assigning an identifier to each of the plurality of strings; (c) storing each of the plurality of strings and the assigned identifier in a table in the database, wherein the table is a global database table; (d) utilizing the table to replace the plurality of strings with their assigned identifiers throughout the database, wherein the identifiers are used during document processing, wherein the utilizing instruction (d) further comprises; (d1) receiving a query, wherein the query comprises a plurality of element, attribute and namespace strings, (d2) transforming the query by replacing the plurality of element, attribute and namespace strings with their respective identifiers, and (d3) processing the transformed query; (e) designating a status for each of the plurality of strings, wherein the status is one of a temporary status or a permanent status, and storing the status in the table; and (f) providing a cache in the database for storing a portion of the table, wherein the transforming instruction (d2) further comprises; (d2i) requesting an identifier for one of the plurality of element, attribute and namespace strings, (d2ii) checking the cache for the one string, (d2iii) returning the respective identifier if the one string is located in the cache, (d2iv) performing a lookup on the table for the one string if the one string is not located in the cache, (d2v) returning the respective identifier if the one string is located in the table, and (d2vi) assigning a new identifier for the one string, storing the one string and the new identifier in the table, setting the string status to temporary and returning the new identifier if the one string is not located in the table. - View Dependent Claims (18, 19, 20)
-
-
21. A system for processing a structured document stored in a database, the system comprising:
-
a string identifier generator in the database, wherein the generator is configured to identify a plurality of strings processed by the database and to assign an identifier to each of the plurality of strings; a table in the database for storing each of the plurality of strings and the assigned identifier, wherein the table is a global database table; a cache in the database for storing a portion of the table; and a compiler for receiving and processing a query, wherein the generator utilizes the cache and the table to replace the plurality of strings with their assigned identifiers throughout the database and the identifiers arc used to perform document processing, and wherein the generator is configured to; designate a status for each of the plurality of strings, wherein the status is one of a temporary status or a permanent status, store the status in the table, receive a request for an identifier for a string from the compiler, check the cache for the string, return the identifier if the string is located in the cache, perform a lookup on the table for the string if the string is not located in the cache, return the identifier if the string is located in the table, assign a new identifier for the string, store the string and the new identifier in the table, set the string status to temporary, and return the new identifier if the one string is not located in the table. - View Dependent Claims (22, 23)
-
Specification