US20020116371A1 - System and method for the storage, indexing and retrieval of XML documents using relation databases - Google Patents
System and method for the storage, indexing and retrieval of XML documents using relation databases Download PDFInfo
- Publication number
- US20020116371A1 US20020116371A1 US09/730,892 US73089200A US2002116371A1 US 20020116371 A1 US20020116371 A1 US 20020116371A1 US 73089200 A US73089200 A US 73089200A US 2002116371 A1 US2002116371 A1 US 2002116371A1
- Authority
- US
- United States
- Prior art keywords
- xml document
- node
- attribute
- relational database
- database
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/84—Mapping; Conversion
- G06F16/86—Mapping to a database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99942—Manipulating data structure, e.g. compression, compaction, compilation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99943—Generating database or data structure, e.g. via user interface
Definitions
- This invention relates generally to a system and method for storing documents in one format in a database having a different format and in particular to a system and method for storing and retrieving extensible Markup Language (XML) documents using a relational database.
- XML extensible Markup Language
- the new extensible Markup Language (XML) protocol is poised to become the lingua franca of the Internet for capturing and electronically transmitting information.
- XML hypertext markup language protocol
- HTML tags are used primarily for specifying how the information is to be displayed in a browser (e.g., show the text between the tags in bold Arial font).
- extensible Stylesheets written in XSL
- a system and method for storing, indexing and retrieving XML documents in a relational database is provided in accordance with the invention.
- the method may include identifying and assigning properties and encodings to the nodes of an XML document that will make them amenable to storage and retrieval using relational databases.
- the method has several advantages. It allows the system to capture and reproduce the structure of not only the whole document, but fragments of each document as well. It also permits a user to traverse the XML tree, figuratively, by means of string manipulation queries instead of following pointers in memory or computing joins between tables, which are computationally more expensive operations. Finally, the properties and encodings that are attached to the nodes are compact and can be effectively indexed, thus enhancing the performance of queries against the database.
- the system in accordance with the invention uses any relational database management system to store the XML documents so that the system and method are not dependent on any particular relational database implementation.
- the system permits a user to search through the XML documents stored in the relational database from any node element without starting from the root element of the document. This provides optimal efficiency during search and retrieval that can not be obtained using other methods today.
- a document may be constructed from any node and its descendants.
- the system also permits documents conforming to any XML schema to be stored in an efficient manner.
- the system can also store any well formed XML document that do not conform to any schema or DTD (Document Type Definition). This is an important feature as a large majority of XML documents generated do not conform to a schema or DTD.
- the system may include a converter and a searcher that permit XML documents to be stored in the relational database and retrieved from a relational database using typical SQL queries.
- the converter and searcher may be one or more software modules being executed by a central processing unit on a computer system.
- the method for storing the XML documents may include the steps of generating an XMLName value for each element in the document tree, generating a NamePath value for each node of the document and generating an OrderPath value for each node of the document. Collectively, assigning values to these elements are called encodings. These encodings result in efficient storage, indexing and searching of XML documents without destroying the underlying hierarchical structure of the documents. The retrieval of the XML documents once they are in the relational database is relatively easy since typical string matching SQL queries may be used.
- a computer system and method for manipulating an XML document using a relational database comprises a converter that receives an XML document and generates a set relational database tables based on the hierarchical structure of XML a database for storing the relational database tables, and a searcher for querying the generated relational database table in the database to locate content originally in the XML document that is now stored in the relational database tables wherein the located content is returned to the user as an XML document or a portion of an XML document as desired by the user which can be another software module.
- the invention also includes the searcher that can convert queries specified on the XML document or document collections and convert them to simple SQL queries to retrieve the content desired by the user.
- a computer system for storing an XML document using a relational database comprising a converter that receives an XML document and generates relational database tables based on the structure of the XML document.
- the converter further comprises a software module that generates a unique name attribute for each node in the XML document, a software module that generates a path attribute for a particular node of the XML document wherein the path attribute comprises a list of the name attributes for the one or more nodes from the particular node to a root node of the XML document, a software module that generates an order attribute for the particular node, the order attribute comprising an enumerated order of the particular node from the root node to the particular node, and a software module that generates a NodeValue attribute containing a value of the particular node.
- Collectively these attributes are called encodings that result in efficient storage, indexing and searching of XML documents without destroying the underlying hierarchical structure of the documents.
- a data structure that stores a node of interest of an XML document in a relational database.
- the data structure comprises an XMLName attribute comprising a unique name for the node of interest, a NamePath attribute comprising a list of the XMLName attributes for the one or more nodes from the node of interest to a root node of the XML document, an OrderPath attribute comprising an enumerated order of the node of interest from the root node to the node of interest, and a NodeValue attribute containing a value of the node of interest.
- Collectively these attributes are called encodings that result in efficient storage, indexing and searching of XML documents without destroying the underlying hierarchical structure of the documents.
- FIG. 1 is a diagram illustrating a personal computer implementation of an XML document storage and retrieval system in accordance with the invention
- FIG. 2 is a diagram illustrating more details of the XML document storage and retrieval system in accordance with the invention
- FIG. 3 is a diagram illustrating an example of a document type definition (DTD) tree for an XML document
- FIG. 4 is a diagram illustrating an XML document corresponding to the table shown in FIG. 3;
- FIG. 5 is a flowchart illustrating an example of a method for storing XML documents in a relational database in accordance with the invention.
- FIG. 6 is a flowchart illustrating a method for retrieving an XML document from a search of a relational database in accordance with the invention.
- the invention is particularly applicable to a software implemented XML document storage and retrieval system and method and it is in this context that the invention will be described. It will be appreciated, however, that the system and method in accordance with the invention has greater utility since it may be implemented in hardware instead of software.
- FIG. 1 is a block diagram illustrating an embodiment of a software-based XML document storage and retrieval system 20 in accordance with the invention.
- the storage and retrieval system 20 may be executed by a computer 22 .
- the computer 22 may be a typical stand-alone personal computer, a computer connected to a network, a client computer connected to a server or any other suitable computer system. For purposes of illustration only, an embodiment using a stand-alone computer 22 will be described herein.
- the computer 22 may include a central processing unit (CPU) 28 , a memory 30 , a persistent storage device 32 , such as a hard disk drive, a tape drive, an optical drive or the like and a storage and retrieval system 34 .
- the storage and retrieval system may be one or more software applications stored in the persistent storage device 32 of the computer that may be loaded into the memory 30 so that the storage and/or retrieval functionality of the storage and retrieval system may be executed by the CPU 28 .
- the computer 22 may be connected to a remote server or other computer networks that permit the computer 22 to network with and share the stored XML document with other computers or to perform searches on XML stored documents on other computer systems.
- the computer 22 may further include one or more input devices 36 , such as a keyboard 38 , a mouse 40 , a joystick or the like, a display 42 such as a typical cathode ray tube, a flat panel display or the like and one or more output devices (not shown) such as a printer for producing printed output of the search results.
- the input and output devices permit a user of the computer to interact with the storage and retrieval system so that the user may, for example, enter a query using the input devices and view the results of the query on the display or print the query results.
- the storage and retrieval system 34 may include one or more different software modules that provide XML document storage capabilities and XML document retrieval capabilities in accordance with the invention. Now, more details of the storage and retrieval system will be described.
- FIG. 2 is a diagram illustrating more details of the XML document storage and retrieval system 34 in accordance with the invention.
- the system may include a converter module 50 , a searcher module 52 and a relational database 54 .
- Each of the modules may be implemented, in a preferred embodiment, as a software application being executed by a CPU as described above.
- the relational database 54 may be any type of relational database so that the system 34 in accordance with the invention may be used to store XML documents in any relational database system.
- the converter module 50 accepts XML documents, processes them and outputs relational data about the XML documents as described below that is stored in the typical relational database 54 .
- the searcher module 52 generates a user interface to a user, permits the user to enter a text string type relational database query, processes the query by communicating a query to the relational database 54 and sends the results of the query in its original XML form to the user so that the user may view or print the query results.
- the two modules shown permit XML documents to be stored in any relational database system and then permits a user to enter a typical text string relational database query in order to retrieve XML documents from the relational database that match the text string query.
- DTD Document Type Definition
- FIG. 3 is a diagram illustrating an example of a Document Type Definition (DTD) tree 60 for an XML document.
- DTD Document Type Definition
- an XML document typically conforms to a DTD which, loosely speaking, is a schema for the data found in the document.
- XML documents are semi-structured in the sense that there are elements specified in the DTD that may be optionally present and some that may be present more than once. This is in contrast to typical relational database tables where each record must have either zero (if it is NULL) or only one value for an attribute.
- XML documents also resemble an object-oriented database in that there are parent-child relationships between elements which are not found between attributes in a relational database.
- the following example of an XML document should help make these distinctions more clear.
- An example of the XML DTD syntax may be:
- the above example DTD may be represented by the DTD tree shown in FIG. 3.
- the DTD tree 60 may include a root node 62 (containing the element “library” in this example), one or more intermediate nodes 64 and one or more leaf nodes 66 that do not have any further nodes attached to them.
- An example of an XML document 70 that conforms to the DTD is shown in FIG. 4. It contains the instances of elements in the DTD tree along with data for each element. The conversion of this example of an XML document into a format that may be stored in a relational database in accordance with the invention will now be described.
- FIG. 5 is a flowchart illustrating an example of a method 80 for storing XML documents in a relational database in accordance with the invention.
- the method involves computing three properties, each of which is described below, for each XML document node so that the XML document may be stored, in an efficient manner, in a relational database.
- the encoding scheme set forth below is a preferred encoding embodiment. However, other encoding schemes may also be used.
- the encoding set forth below (e.g., 1/2/5/6) may be represented as 1 raised to the power 1, 2 raised to the power 2, 3 raised to the power 5 and 4 raised to the power 6 and so on. That way, instead of performing string manipulation, the system would be doing factorization.
- the factorization approach can generate faster queries and save indexing and database space.
- the invention is not limited to any particular encoding and the encodings in accordance with the invention are created based on the structure of the document and then the encodings are used to store, index and search for the content while preserving the hierarchy of the document.
- a first step 81 of the method it is determined if an element is ready for processing. If there is an element ready for processing, then the method generates an XMLName property for the particular element. If an element is not ready for processing, but an attribute of the XML document is read for processing, then the method also generates the XMLName property for the particular attribute.
- the method starts by assigning each element name a unique XMLName property (in this example, the property is alphanumeric). For the example above, we could assign the XMLNames as shown in Table 1 (the XMLName Table). TABLE 1 (the “XMLName Table”) Element or Attribute Name XMLName library 1 book 2 periodical 3 edition 4 title 5 author 6 firstname 7 lastname 8
- a NamePath value is automatically determined for each node of the DTD tree.
- the NamePath value may be constructed from the XMLNames of each node on the path from the root node to the node of interest. From this analysis, we obtain the following table of NamePath values for the example XML document: NamePath Table DTD Node NamePath library 1 library/book 1/2 library/periodical 1/3 library/book/edition 1/2/4 library/book/title 1/2/5 library/book/author 1/2/6 library/book/author/title 1/2/6/5 library/book/author/firstname 1/2/6/7 library/book/author/lastname 1/2/6/8
- each DTD node such as “library/book/author/lastname” has a corresponding NamePath value, such as “1/2/6/8”.
- NamePath values such as “1/2/6/8”.
- the method may automatically generate an OrderPath value for each node in the XML document.
- each number in the slash-separated OrderPath denotes the breadth-wise enumerated order of the node on the path from the root to the node of interest.
- Each document node may also inherit the NamePath of the DTD node of which it is an instance.
- a full DocNode Table for the example XML document looks like this: DocNode Table NodeName NamePath OrderPath Node Value library 1 1 book 1/2 1/1 edition 1/2/4 1/1/1 first title 1/2/5 1/1/2 The XML Revolution author 1/2/6 1/1/3 title 1/2/6/5 1/1/3/1 Software Engineer
- each document node may include a NodeName value (the name of the element), a NamePath value (See above), an OrderPath Value (automatically generated during this step), and a NodeValue value (containing the actual data in that particular node).
- step 88 the method determines if there are any more nodes to process and loops back to step 81 if there are more nodes. If all of the nodes have been processed, then the DocNode Table may be saved in the relational database. In this manner, an XML document is automatically processed in order to generate a DocNode Table that may be stored in any relational database. Once the DocNode table is generated by the system, it may be searched as will now be described in more detail.
- FIG. 6 is a flowchart illustrating a method 100 for retrieving an XML document from a search of a relational database in accordance with the invention.
- the user or the system using user input may generate a relational database query.
- the system may query the relational database and in step 106 , the query results are output to the user.
- the system may convert the query results back into references to portions of the XML document so that the user may review the portions of the XML document retrieved during the search in step 108 .
- a user wants to query the XML document repository to return the titles of all books who have an author with the title of “Chief Architect”. Since we know the context of title (i.e., library/book/author/title), we can consult the XMLName Table to obtain the relevant XMLNames and construct the NamePath of title which is “1/2/6/5” in this example. Then, the system may issue the first query that is:
- This second query returns the value “The XML Revolution” as the result. This result accomplishes the user goal of returning all books whose author's title is “Chief Architect”. In this manner, the XML document repository is queried using typical relational database queries.
- the system may generate a first query to select the OrderPaths of all firstname nodes with the value Carol:
- This query returns “1/1/4/2” and “1/2/3/1” as the result set.
- a second query is generated to select the OrderPaths of all lastname nodes with the value Hollenbeck:
- This query returns “1/1/3/3” and “1/2/3/2” as the result set. Since we know firstname and lastname nodes of the same person belong to the same parent author node, we can deduce from the result sets that only the nodes with OrderPaths “1/2/3/1 ” and “1/2/3/2” are of interest to us. Thus, we want the title of the book with OrderPath 1/2, which we can retrieve with the following query:
- This query returns “Java Classes for XML” as the result which is the proper result.
- the OrderPath of the relevant title node is determined by the following query:
- This query returns “1/1/2” as the result.
- the OrderPath of the relevant book node is “1/1”. Since the nodes for all author information are descendants of the author node (that has NamePath “1/2/6”), which in turn is a child of the “book” node, we can execute the following query to obtain the required result:
- This query returns “Software Engineer, David, Hollenbeck, Chief Architect, Carol, Bohr” in the original document order as the result set.
- the XMLName Table may be cached in memory.
- the XMLName values may be divided into NameSpaces.
- the system may use base-64 encoding.
- base-64 encoding scheme instead of alphanumeric strings.
- DigitPath attribute as an adjunct attribute to OrderPath so that the system can ensure proper sorting of nodes while obviating the need for place-holding characters as the number of characters increases. For example, to sort the paths “1/10/2” and “1/2/3” properly, the system would have needed to encode the second as “11-2/3”. However, if we added “1/2/1” and “1/1/1” as DigitPaths and ordered the results by these before OrderPaths, then we would be able to do without the place-holding dashes.
- a ReverseNamePath attribute may be automatically generated to further improve the speed of queries.
- an XML document that is an instance of a DTD sub-tree, we may need to evaluate an expression such as:
- the system may include a transformation engine that converts XPath expressions into equivalent SQL statements involving NamePath and OrderPath attributes so that the converted queries would then be executed against the repository.
- the hierarchical relationships of XML documents are encoded so that the XML documents may be mapped to a set of relational tables. Once the mapping and encoding is completed, then searching and querying of the XML documents may be done by mapping any XML query language (which is well known) to SQL (also well known) automatically.
Abstract
Description
- This application claims priority under 35 USC §§ 119 and 120 from U.S. Provisional Patent Application No. 60/169,101 filed Dec. 6, 1999.
- This invention relates generally to a system and method for storing documents in one format in a database having a different format and in particular to a system and method for storing and retrieving extensible Markup Language (XML) documents using a relational database.
- The new extensible Markup Language (XML) protocol is poised to become the lingua franca of the Internet for capturing and electronically transmitting information. The advantage of XML, as compared to the older hypertext markup language protocol (HTML), is that it contains tags which render semantic significance to the information between the tags (e.g., the text between the tags is the last name of an author). In contrast, HTML tags are used primarily for specifying how the information is to be displayed in a browser (e.g., show the text between the tags in bold Arial font). Additionally, using known extensible Stylesheets (written in XSL), one may specify not only the format of how different XML elements are to be shown in a browser, but also the order in which they are to be displayed. These features of XML give a user much greater power and flexibility in searching for relevant information since a search may be performed using the tags that contain the semantic information. In addition, XML permits examining the information from different perspectives once it is found by the user.
- To take full advantage of the possibilities that the XML protocol affords, it is desirable to devise an efficient means of storing, indexing and retrieving (via queries) XML documents. Typical RDMS, ODMS and flat files are slow and inefficient at storing XML documents. A preferred way of building Document Object Model (DOM) representations of the XML documents and then traversing the resulting trees to locate relevant nodes is only acceptable for small documents since memory becomes a limiting factor when the XML documents approach even moderate sizes. In addition, searches are not optimal since all searches must begin at the root of the document instead of at any node in the document. Moreover, it is not possible to search across a collection of documents (e.g. poems, novels, short stories and plays) for a particular character or the author.
- At the same time, XML documents present unique challenges to storage in relational databases since their semi-structured nature often leads to a proliferation of tables when normalization is carried out. Given that relational database technology has seen great strides over the past couple of decades, it would be desirable and useful to provide a clean way of representing XML documents in relational terms. It is therefore the goal of the present invention to provide a system and method for the storage, indexing and retrieval of XML documents using relational databases.
- A system and method for storing, indexing and retrieving XML documents in a relational database is provided in accordance with the invention. The method may include identifying and assigning properties and encodings to the nodes of an XML document that will make them amenable to storage and retrieval using relational databases. The method has several advantages. It allows the system to capture and reproduce the structure of not only the whole document, but fragments of each document as well. It also permits a user to traverse the XML tree, figuratively, by means of string manipulation queries instead of following pointers in memory or computing joins between tables, which are computationally more expensive operations. Finally, the properties and encodings that are attached to the nodes are compact and can be effectively indexed, thus enhancing the performance of queries against the database.
- The system in accordance with the invention uses any relational database management system to store the XML documents so that the system and method are not dependent on any particular relational database implementation. The system permits a user to search through the XML documents stored in the relational database from any node element without starting from the root element of the document. This provides optimal efficiency during search and retrieval that can not be obtained using other methods today. In addition, a document may be constructed from any node and its descendants. The system also permits documents conforming to any XML schema to be stored in an efficient manner. The system can also store any well formed XML document that do not conform to any schema or DTD (Document Type Definition). This is an important feature as a large majority of XML documents generated do not conform to a schema or DTD.
- In accordance with the invention, the system may include a converter and a searcher that permit XML documents to be stored in the relational database and retrieved from a relational database using typical SQL queries. In a preferred embodiment, the converter and searcher may be one or more software modules being executed by a central processing unit on a computer system. In accordance with the invention, the method for storing the XML documents may include the steps of generating an XMLName value for each element in the document tree, generating a NamePath value for each node of the document and generating an OrderPath value for each node of the document. Collectively, assigning values to these elements are called encodings. These encodings result in efficient storage, indexing and searching of XML documents without destroying the underlying hierarchical structure of the documents. The retrieval of the XML documents once they are in the relational database is relatively easy since typical string matching SQL queries may be used.
- Thus, in accordance with the invention, a computer system and method for manipulating an XML document using a relational database is provided. The system comprises a converter that receives an XML document and generates a set relational database tables based on the hierarchical structure of XML a database for storing the relational database tables, and a searcher for querying the generated relational database table in the database to locate content originally in the XML document that is now stored in the relational database tables wherein the located content is returned to the user as an XML document or a portion of an XML document as desired by the user which can be another software module. The invention also includes the searcher that can convert queries specified on the XML document or document collections and convert them to simple SQL queries to retrieve the content desired by the user.
- In accordance with another aspect of the invention, a computer system for storing an XML document using a relational database is provided wherein the system comprises a converter that receives an XML document and generates relational database tables based on the structure of the XML document. The converter further comprises a software module that generates a unique name attribute for each node in the XML document, a software module that generates a path attribute for a particular node of the XML document wherein the path attribute comprises a list of the name attributes for the one or more nodes from the particular node to a root node of the XML document, a software module that generates an order attribute for the particular node, the order attribute comprising an enumerated order of the particular node from the root node to the particular node, and a software module that generates a NodeValue attribute containing a value of the particular node. Collectively these attributes are called encodings that result in efficient storage, indexing and searching of XML documents without destroying the underlying hierarchical structure of the documents.
- In accordance with yet another aspect of the invention, a data structure that stores a node of interest of an XML document in a relational database is provided. The data structure comprises an XMLName attribute comprising a unique name for the node of interest, a NamePath attribute comprising a list of the XMLName attributes for the one or more nodes from the node of interest to a root node of the XML document, an OrderPath attribute comprising an enumerated order of the node of interest from the root node to the node of interest, and a NodeValue attribute containing a value of the node of interest. Collectively these attributes are called encodings that result in efficient storage, indexing and searching of XML documents without destroying the underlying hierarchical structure of the documents.
- FIG. 1 is a diagram illustrating a personal computer implementation of an XML document storage and retrieval system in accordance with the invention;
- FIG. 2 is a diagram illustrating more details of the XML document storage and retrieval system in accordance with the invention;
- FIG. 3 is a diagram illustrating an example of a document type definition (DTD) tree for an XML document;
- FIG. 4 is a diagram illustrating an XML document corresponding to the table shown in FIG. 3;
- FIG. 5 is a flowchart illustrating an example of a method for storing XML documents in a relational database in accordance with the invention; and
- FIG. 6 is a flowchart illustrating a method for retrieving an XML document from a search of a relational database in accordance with the invention.
- The invention is particularly applicable to a software implemented XML document storage and retrieval system and method and it is in this context that the invention will be described. It will be appreciated, however, that the system and method in accordance with the invention has greater utility since it may be implemented in hardware instead of software.
- FIG. 1 is a block diagram illustrating an embodiment of a software-based XML document storage and
retrieval system 20 in accordance with the invention. In this embodiment, the storage andretrieval system 20 may be executed by acomputer 22. Thecomputer 22 may be a typical stand-alone personal computer, a computer connected to a network, a client computer connected to a server or any other suitable computer system. For purposes of illustration only, an embodiment using a stand-alone computer 22 will be described herein. - The
computer 22 may include a central processing unit (CPU) 28, amemory 30, apersistent storage device 32, such as a hard disk drive, a tape drive, an optical drive or the like and a storage andretrieval system 34. In a preferred embodiment, the storage and retrieval system may be one or more software applications stored in thepersistent storage device 32 of the computer that may be loaded into thememory 30 so that the storage and/or retrieval functionality of the storage and retrieval system may be executed by theCPU 28. Thecomputer 22 may be connected to a remote server or other computer networks that permit thecomputer 22 to network with and share the stored XML document with other computers or to perform searches on XML stored documents on other computer systems. - The
computer 22 may further include one or more input devices 36, such as akeyboard 38, amouse 40, a joystick or the like, adisplay 42 such as a typical cathode ray tube, a flat panel display or the like and one or more output devices (not shown) such as a printer for producing printed output of the search results. The input and output devices permit a user of the computer to interact with the storage and retrieval system so that the user may, for example, enter a query using the input devices and view the results of the query on the display or print the query results. - As described below in more detail, the storage and
retrieval system 34 may include one or more different software modules that provide XML document storage capabilities and XML document retrieval capabilities in accordance with the invention. Now, more details of the storage and retrieval system will be described. - FIG. 2 is a diagram illustrating more details of the XML document storage and
retrieval system 34 in accordance with the invention. The system may include a converter module 50, asearcher module 52 and arelational database 54. Each of the modules may be implemented, in a preferred embodiment, as a software application being executed by a CPU as described above. Therelational database 54 may be any type of relational database so that thesystem 34 in accordance with the invention may be used to store XML documents in any relational database system. - The converter module50 accepts XML documents, processes them and outputs relational data about the XML documents as described below that is stored in the typical
relational database 54. Thesearcher module 52 generates a user interface to a user, permits the user to enter a text string type relational database query, processes the query by communicating a query to therelational database 54 and sends the results of the query in its original XML form to the user so that the user may view or print the query results. In combination, the two modules shown permit XML documents to be stored in any relational database system and then permits a user to enter a typical text string relational database query in order to retrieve XML documents from the relational database that match the text string query. Each of these modules will be described in more detail below. Now, an example of a Document Type Definition (DTD) of an XML document will be described to better understand the invention. This example of the DTD will be used as an example to illustrate the storage and retrieval system in accordance with the invention. - FIG. 3 is a diagram illustrating an example of a Document Type Definition (DTD) tree60 for an XML document. Although not required to do so, an XML document typically conforms to a DTD which, loosely speaking, is a schema for the data found in the document. However, XML documents are semi-structured in the sense that there are elements specified in the DTD that may be optionally present and some that may be present more than once. This is in contrast to typical relational database tables where each record must have either zero (if it is NULL) or only one value for an attribute.
- XML documents also resemble an object-oriented database in that there are parent-child relationships between elements which are not found between attributes in a relational database. The following example of an XML document should help make these distinctions more clear. An example of the XML DTD syntax may be:
- <!ELEMENT library (book*, periodical*)>
- <!ELEMENT book (title, author+)>
- <!ATTLIST book edition CDATA #REQUIRED>
- <!ELEMENT author (title?, firstname, lastname)>
- In the above example, elements that appear within parentheses are the children of elements before the parentheses. In addition a “*” denotes 0 or more occurrences of the element, a “+” denotes one or more occurrences and a “?” denotes 0 or 1 occurrence. The above example DTD may be represented by the DTD tree shown in FIG. 3. The DTD tree60 may include a root node 62 (containing the element “library” in this example), one or more
intermediate nodes 64 and one ormore leaf nodes 66 that do not have any further nodes attached to them. An example of an XML document 70 that conforms to the DTD is shown in FIG. 4. It contains the instances of elements in the DTD tree along with data for each element. The conversion of this example of an XML document into a format that may be stored in a relational database in accordance with the invention will now be described. - FIG. 5 is a flowchart illustrating an example of a
method 80 for storing XML documents in a relational database in accordance with the invention. The method involves computing three properties, each of which is described below, for each XML document node so that the XML document may be stored, in an efficient manner, in a relational database. The encoding scheme set forth below is a preferred encoding embodiment. However, other encoding schemes may also be used. For example, the encoding set forth below (e.g., 1/2/5/6) may be represented as 1 raised to the power 1, 2 raised to the power 2, 3 raised to thepower 5 and 4 raised to the power 6 and so on. That way, instead of performing string manipulation, the system would be doing factorization. Based on this other encoding, the factorization approach can generate faster queries and save indexing and database space. Thus, the invention is not limited to any particular encoding and the encodings in accordance with the invention are created based on the structure of the document and then the encodings are used to store, index and search for the content while preserving the hierarchy of the document. - In a
first step 81 of the method, it is determined if an element is ready for processing. If there is an element ready for processing, then the method generates an XMLName property for the particular element. If an element is not ready for processing, but an attribute of the XML document is read for processing, then the method also generates the XMLName property for the particular attribute. In more detail, the method starts by assigning each element name a unique XMLName property (in this example, the property is alphanumeric). For the example above, we could assign the XMLNames as shown in Table 1 (the XMLName Table).TABLE 1 (the “XMLName Table”) Element or Attribute Name XMLName library 1 book 2 periodical 3 edition 4 title 5 author 6 firstname 7 lastname 8 - Note that “title” gets only one XMLName value even though the element appears twice in the DTD tree as either the title of a book or the title of an author. This allows for more XMLName attributes to be encoded given strings of a specific length.
- Now, in
step 84, a NamePath value is automatically determined for each node of the DTD tree. In particular, the NamePath value may be constructed from the XMLNames of each node on the path from the root node to the node of interest. From this analysis, we obtain the following table of NamePath values for the example XML document:NamePath Table DTD Node NamePath library 1 library/book 1/2 library/periodical 1/3 library/book/edition 1/2/4 library/book/title 1/2/5 library/book/author 1/2/6 library/book/author/title 1/2/6/5 library/book/author/firstname 1/2/6/7 library/book/author/lastname 1/2/6/8 - As shown in the table, each DTD node, such as “library/book/author/lastname” has a corresponding NamePath value, such as “1/2/6/8”. In this manner, using the NamePath values, it is possible to navigate through the XML document using the relational database. In other words, using this table, the path to any node in the DTD tree (and hence the XML document) may be easily determined. This table may also be stored in the relational database.
- Next, in
step 86, the method may automatically generate an OrderPath value for each node in the XML document. In particular, each number in the slash-separated OrderPath (see the table below) denotes the breadth-wise enumerated order of the node on the path from the root to the node of interest. Each document node may also inherit the NamePath of the DTD node of which it is an instance. A full DocNode Table for the example XML document looks like this:DocNode Table NodeName NamePath OrderPath Node Value library 1 1 book 1/2 1/1 edition 1/2/4 1/1/1 first title 1/2/5 1/1/2 The XML Revolution author 1/2/6 1/1/3 title 1/2/6/5 1/1/3/1 Software Engineer -
firstname 1/2/6/7 1/1/3/2 David lastname 1/2/6/8 1/1/3/3 Hollenbeck author 1/2/6 1/1/4 title 1/2/6/5 1/1/4/1 Chief Architect firstname 1/2/6/7 1/1/4/2 Carol lastname 1/2/6/8 1/1/4/3 Bohr book 1/2 1/2 edition 1/2/4 1/2/1 second title 1/2/5 1/2/2 Java Classes for XML author 1/2/6 1/2/3 firstname 1/2/6/7 1/2/3/1 Carol lastname 1/2/6/8 1/2/3/2 Hollenbeck author 1/2/6 1/2/4 title 1/2/6/5 1/2/4/1 XML Guru firstname 1/2/6/7 1/2/4/2 David lastname 1/2/6/8 1/2/4/3 Bohr - As shown in the Table that may be stored in a relational database, each document node may include a NodeName value (the name of the element), a NamePath value (See above), an OrderPath Value (automatically generated during this step), and a NodeValue value (containing the actual data in that particular node).
- In
step 88, the method determines if there are any more nodes to process and loops back to step 81 if there are more nodes. If all of the nodes have been processed, then the DocNode Table may be saved in the relational database. In this manner, an XML document is automatically processed in order to generate a DocNode Table that may be stored in any relational database. Once the DocNode table is generated by the system, it may be searched as will now be described in more detail. - FIG. 6 is a flowchart illustrating a method100 for retrieving an XML document from a search of a relational database in accordance with the invention. In
step 102, the user or the system using user input, may generate a relational database query. Instep 104, the system may query the relational database and instep 106, the query results are output to the user. In accordance with the invention, the system may convert the query results back into references to portions of the XML document so that the user may review the portions of the XML document retrieved during the search instep 108. Now, several examples of retrieving XML documents based on a relational database search will be provided. In particular, a few examples will be shown of how the system may use the NamePath and OrderPath values to select nodes with desired attributes from the XML document repository and also may construct fragments of the original XML documents containing these selected nodes. In all the sample queries below, we assume that we know the context (i.e., the position within the DTD tree) of the nodes we are interested in. - In a first example, a user wants to query the XML document repository to return the titles of all books who have an author with the title of “Chief Architect”. Since we know the context of title (i.e., library/book/author/title), we can consult the XMLName Table to obtain the relevant XMLNames and construct the NamePath of title which is “1/2/6/5” in this example. Then, the system may issue the first query that is:
- “Select OrderPath from DocNodeTable where NamePath=‘1/2/6/5’ and NodeValue=‘Chief Architect’”
- This query returns an OrderPath of “1/1/4/1” as the result. Since we also know that the element “book” is a grand-parent of element “title”, we can deduce that its OrderPath is 1/1. Finally we construct the NamePath of the element “book title” as “1/2/5” and execute the second query that is:
- “Select NodeValue from DocNodeTable where NamePath=‘1/2/5’ and OrderPath like ‘1/1/%’”.
- This second query returns the value “The XML Revolution” as the result. This result accomplishes the user goal of returning all books whose author's title is “Chief Architect”. In this manner, the XML document repository is queried using typical relational database queries.
- In this second example, the user wants to search for the titles of all books who have an author by the name of Carol Hollenbeck. To accomplish this, the system may generate a first query to select the OrderPaths of all firstname nodes with the value Carol:
- “Select OrderPath from DocNodeTable where NamePath=‘1/2/6/7’ and NodeValue=‘Carol’”.
- This query returns “1/1/4/2” and “1/2/3/1” as the result set. Next, a second query is generated to select the OrderPaths of all lastname nodes with the value Hollenbeck:
- “Select OrderPath from DocNodeTable where NamePath=‘1/2/6/8’ and NodeValue=‘Hollenbeck’”
- This query returns “1/1/3/3” and “1/2/3/2” as the result set. Since we know firstname and lastname nodes of the same person belong to the same parent author node, we can deduce from the result sets that only the nodes with OrderPaths “1/2/3/1 ” and “1/2/3/2” are of interest to us. Thus, we want the title of the book with OrderPath 1/2, which we can retrieve with the following query:
- “Select NodeValue from DocNodeTable where NamePath=‘1/2/5’ and OrderPath like ‘1/2/%’”
- This query returns “Java Classes for XML” as the result which is the proper result.
- In a third example, the user wants to be returned all the information pertaining to the authors of “The XML Revolution” and presented in the original document order. Thus, first, the OrderPath of the relevant title node is determined by the following query:
- “Select OrderPath from DocNodeTable where NamePath=‘1/2/5’ and NodeValue=‘The XML Revolution’”
- This query returns “1/1/2” as the result. Thus, as a result of the first query, we know that the OrderPath of the relevant book node is “1/1”. Since the nodes for all author information are descendants of the author node (that has NamePath “1/2/6”), which in turn is a child of the “book” node, we can execute the following query to obtain the required result:
- “Select NodeValue from DocNodeTable where NamePath like ‘1/2/6/%’ and OrderPath like ‘1/1/%’ Order by OrderPath”
- This query returns “Software Engineer, David, Hollenbeck, Chief Architect, Carol, Bohr” in the original document order as the result set.
- Now, several enhancements to the system and method described above will be provided. In accordance with another aspect of the invention, the XMLName Table may be cached in memory. In particular, to facilitate construction of the NamePath values, we can store the contents of XMLName Table in a hash table which we keep resident in memory. This prevents the execution of multiple queries against the database to obtain all the necessary XMLName values. In accordance with yet another aspect of the invention, the XMLName values may be divided into NameSpaces. In particular, as the number of XMLName values increases, it may become necessary to divide the values into various namespaces to keep the lengths of the names short. XMLName values from namespaces relevant for working with a particular document can then be brought into the cache when necessary without having to bring the entire XMLNameTable into memory.
- In accordance with yet another aspect of the invention, the system may use base-64 encoding. In particular, to reduce the amount of storage required for the XMLName, NamePath, and OrderPath tables in the relational database, we could consider using a Base-64 encoding scheme instead of alphanumeric strings. In accordance with the invention, it is also possible to add a DigitPath attribute as an adjunct attribute to OrderPath so that the system can ensure proper sorting of nodes while obviating the need for place-holding characters as the number of characters increases. For example, to sort the paths “1/10/2” and “1/2/3” properly, the system would have needed to encode the second as “11-2/3”. However, if we added “1/2/1” and “1/1/1” as DigitPaths and ordered the results by these before OrderPaths, then we would be able to do without the place-holding dashes.
- In accordance with the invention, a ReverseNamePath attribute may be automatically generated to further improve the speed of queries. In particular, since it is possible to have an XML document that is an instance of a DTD sub-tree, we may need to evaluate an expression such as:
- “Select NodeValue from DocNodeTable where NamePath like ‘%/2/3’”
- Since indexes built on NamePath generally do not help in the execution of such queries, we can improve performance by having a ReverseNamePath attribute constructed by reversing the order of the XMLNames in the path expression. Thus, in accordance with the invention, the above query would now read:
- “Select NodeValue from DocNodeTable where ReverseNamePath like ‘3/2/1/%’”
- In accordance with the invention, the system may include a transformation engine that converts XPath expressions into equivalent SQL statements involving NamePath and OrderPath attributes so that the converted queries would then be executed against the repository.
- In summary, a system and method for assigning attributes to XML document nodes to facilitate their storage and indexing in relational databases and the subsequent retrieval and re-construction of pertinent nodes and fragments in original document order is provided. Since these queries are performed using relational database query engines, the speed of their execution is significantly faster than that using more exotic systems such as object-oriented databases. Furthermore, this method is portable across all vendor platforms, and so can be deployed at client sites without additional investments in database software.
- In accordance with the invention, the hierarchical relationships of XML documents are encoded so that the XML documents may be mapped to a set of relational tables. Once the mapping and encoding is completed, then searching and querying of the XML documents may be done by mapping any XML query language (which is well known) to SQL (also well known) automatically.
- While the foregoing has been with reference to a particular embodiment of the invention, it will be appreciated by those skilled in the art that changes in this embodiment may be made without departing from the principles and spirit of the invention as set forth in the appended claims.
Claims (25)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/730,892 US20020116371A1 (en) | 1999-12-06 | 2000-12-05 | System and method for the storage, indexing and retrieval of XML documents using relation databases |
US10/745,762 US7353222B2 (en) | 1999-12-06 | 2003-12-23 | System and method for the storage, indexing and retrieval of XML documents using relational databases |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16910199P | 1999-12-06 | 1999-12-06 | |
US09/730,892 US20020116371A1 (en) | 1999-12-06 | 2000-12-05 | System and method for the storage, indexing and retrieval of XML documents using relation databases |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/745,762 Continuation US7353222B2 (en) | 1999-12-06 | 2003-12-23 | System and method for the storage, indexing and retrieval of XML documents using relational databases |
Publications (1)
Publication Number | Publication Date |
---|---|
US20020116371A1 true US20020116371A1 (en) | 2002-08-22 |
Family
ID=22614271
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/730,892 Abandoned US20020116371A1 (en) | 1999-12-06 | 2000-12-05 | System and method for the storage, indexing and retrieval of XML documents using relation databases |
US10/745,762 Active 2025-03-07 US7353222B2 (en) | 1999-12-06 | 2003-12-23 | System and method for the storage, indexing and retrieval of XML documents using relational databases |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/745,762 Active 2025-03-07 US7353222B2 (en) | 1999-12-06 | 2003-12-23 | System and method for the storage, indexing and retrieval of XML documents using relational databases |
Country Status (3)
Country | Link |
---|---|
US (2) | US20020116371A1 (en) |
AU (1) | AU4521101A (en) |
WO (1) | WO2001042881A2 (en) |
Cited By (136)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020078094A1 (en) * | 2000-09-07 | 2002-06-20 | Muralidhar Krishnaprasad | Method and apparatus for XML visualization of a relational database and universal resource identifiers to database data and metadata |
US20020156811A1 (en) * | 2000-05-23 | 2002-10-24 | Krupa Kenneth A. | System and method for converting an XML data structure into a relational database |
US20030041305A1 (en) * | 2001-07-18 | 2003-02-27 | Christoph Schnelle | Resilient data links |
US20030070144A1 (en) * | 2001-09-04 | 2003-04-10 | Christoph Schnelle | Mapping of data from XML to SQL |
US20030177442A1 (en) * | 2002-03-18 | 2003-09-18 | Sun Microsystems, Inc. | System and method for comparing hashed XML files |
US20030188264A1 (en) * | 2002-03-29 | 2003-10-02 | Full Degree, Inc. | Method and apparatus for XML data normalization |
US20030212664A1 (en) * | 2002-05-10 | 2003-11-13 | Martin Breining | Querying markup language data sources using a relational query processor |
US6681223B1 (en) * | 2000-07-27 | 2004-01-20 | International Business Machines Corporation | System and method of performing profile matching with a structured document |
US6701328B1 (en) * | 2000-01-06 | 2004-03-02 | Media Fusion Co., Ltd. | Database management system |
DE10247178A1 (en) * | 2002-10-10 | 2004-04-22 | Technische Universität Ilmenau Abteilung Forschungsförderung und Technologietransfer | Automated construction of object-oriented database for managing meta-text-based documents involves treating documents of unknown structure as objects, analyzing properties, storing, generating index |
US6778983B1 (en) * | 2000-04-28 | 2004-08-17 | International Business Machines Corporation | Apparatus and method for accessing HTML files using an SQL query |
US20040163041A1 (en) * | 2003-02-13 | 2004-08-19 | Paterra, Inc. | Relational database structures for structured documents |
US20050010896A1 (en) * | 2003-07-07 | 2005-01-13 | International Business Machines Corporation | Universal format transformation between relational database management systems and extensible markup language using XML relational transformation |
US20050021549A1 (en) * | 2001-11-30 | 2005-01-27 | Microsoft Corporation | System and method for relational representation of hierarchical data |
US20050050058A1 (en) * | 2003-08-25 | 2005-03-03 | Oracle International Corporation | Direct loading of opaque types |
US20050050066A1 (en) * | 2003-08-29 | 2005-03-03 | Hughes Merlin P. D. | Processing XML node sets |
US20050055343A1 (en) * | 2003-09-04 | 2005-03-10 | Krishnamurthy Sanjay M. | Storing XML documents efficiently in an RDBMS |
US20050066267A1 (en) * | 2003-08-01 | 2005-03-24 | Takeshi Kanai | Information processing system and method, program, and recording medium |
US20050125431A1 (en) * | 2002-04-12 | 2005-06-09 | Microsoft Corporation | System and method for XML based content management |
US20050131926A1 (en) * | 2003-12-10 | 2005-06-16 | Siemens Corporate Research Inc. | Method of hybrid searching for extensible markup language (XML) documents |
US20050138052A1 (en) * | 2003-12-22 | 2005-06-23 | International Business Machines Corporation | Method, computer program product, and system converting relational data into hierarchical data structure based upon tagging trees |
US20050160076A1 (en) * | 2004-01-20 | 2005-07-21 | Fujitsu Limited | Method and apparatus for referring to database integration, and computer product |
US6938031B1 (en) * | 2001-10-19 | 2005-08-30 | Data Return Llc | System and method for accessing information in a replicated database |
US20050223288A1 (en) * | 2004-02-12 | 2005-10-06 | Lockheed Martin Corporation | Diagnostic fault detection and isolation |
US20050228828A1 (en) * | 2004-04-09 | 2005-10-13 | Sivasankaran Chandrasekar | Efficient extraction of XML content stored in a LOB |
US20050240555A1 (en) * | 2004-02-12 | 2005-10-27 | Lockheed Martin Corporation | Interactive electronic technical manual system integrated with the system under test |
US20050267909A1 (en) * | 2004-05-21 | 2005-12-01 | Christopher Betts | Storing multipart XML documents |
US20050273573A1 (en) * | 2004-05-06 | 2005-12-08 | Peiya Liu | System and method for GUI supported specifications for automating form field extraction with database mapping |
US20050289175A1 (en) * | 2004-06-23 | 2005-12-29 | Oracle International Corporation | Providing XML node identity based operations in a value based SQL system |
US20050289457A1 (en) * | 2004-06-29 | 2005-12-29 | Microsoft Corporation | Method and system for mapping between structured subjects and observers |
US7031956B1 (en) * | 2000-02-16 | 2006-04-18 | Verizon Laboratories Inc. | System and method for synchronizing and/or updating an existing relational database with supplemental XML data |
US20060085692A1 (en) * | 2004-10-06 | 2006-04-20 | Lockheed Martin Corp. | Bus fault detection and isolation |
US20060120181A1 (en) * | 2004-10-05 | 2006-06-08 | Lockheed Martin Corp. | Fault detection and isolation with analysis of built-in-test results |
US20060155719A1 (en) * | 2005-01-10 | 2006-07-13 | International Business Machines Corporation | Complex event discovery in event databases |
US7092967B1 (en) * | 2001-09-28 | 2006-08-15 | Oracle International Corporation | Loadable units for lazy manifestation of XML documents |
US20060184552A1 (en) * | 2005-02-15 | 2006-08-17 | International Business Machines Corporation | Memory efficient XML shredding with partial commit |
US20060235840A1 (en) * | 2005-04-19 | 2006-10-19 | Anand Manikutty | Optimization of queries over XML views that are based on union all operators |
US7158981B2 (en) | 2001-09-28 | 2007-01-02 | Oracle International Corporation | Providing a consistent hierarchical abstraction of relational data |
US20070011167A1 (en) * | 2005-07-08 | 2007-01-11 | Muralidhar Krishnaprasad | Optimization of queries on a repository based on constraints on how the data is stored in the repository |
US20070016604A1 (en) * | 2005-07-18 | 2007-01-18 | Ravi Murthy | Document level indexes for efficient processing in multiple tiers of a computer system |
US20070016605A1 (en) * | 2005-07-18 | 2007-01-18 | Ravi Murthy | Mechanism for computing structural summaries of XML document collections in a database system |
US20070038649A1 (en) * | 2005-08-11 | 2007-02-15 | Abhyudaya Agrawal | Flexible handling of datetime XML datatype in a database system |
US20070050394A1 (en) * | 2005-08-30 | 2007-03-01 | Sterling Merle D | Method and apparatus for automated database creation from Web Services Description Language (WSDL) |
US20070061092A1 (en) * | 2005-08-30 | 2007-03-15 | Microsoft Corporation | Generational global name table |
US20070067715A1 (en) * | 1997-01-31 | 2007-03-22 | Timebase Pty Limited | MALTweb multi-axis viewing interface and higher level scoping |
US20070074107A1 (en) * | 1997-01-31 | 2007-03-29 | Timebase Pty Limited | Maltweb multi-axis viewing interface and higher level scoping |
US20070083529A1 (en) * | 2005-10-07 | 2007-04-12 | Oracle International Corporation | Managing cyclic constructs of XML schema in a rdbms |
US20070083538A1 (en) * | 2005-10-07 | 2007-04-12 | Roy Indroniel D | Generating XML instances from flat files |
US20070198545A1 (en) * | 2006-02-22 | 2007-08-23 | Fei Ge | Efficient processing of path related operations on data organized hierarchically in an RDBMS |
US7281206B2 (en) | 2001-11-16 | 2007-10-09 | Timebase Pty Limited | Maintenance of a markup language document in a database |
JP2007533008A (en) * | 2004-04-09 | 2007-11-15 | オラクル・インターナショナル・コーポレイション | Index for accessing XML data |
US20070276792A1 (en) * | 2006-05-25 | 2007-11-29 | Asha Tarachandani | Isolation for applications working on shared XML data |
US7305667B1 (en) | 2001-06-15 | 2007-12-04 | Oracle International Corporation | Call back structures for user defined DOMs |
US20080005093A1 (en) * | 2006-07-03 | 2008-01-03 | Zhen Hua Liu | Techniques of using a relational caching framework for efficiently handling XML queries in the mid-tier data caching |
US7321900B1 (en) | 2001-06-15 | 2008-01-22 | Oracle International Corporation | Reducing memory requirements needed to represent XML entities |
US20080033967A1 (en) * | 2006-07-18 | 2008-02-07 | Ravi Murthy | Semantic aware processing of XML documents |
US20080052281A1 (en) * | 2006-08-23 | 2008-02-28 | Lockheed Martin Corporation | Database insertion and retrieval system and method |
US20080065653A1 (en) * | 2006-09-07 | 2008-03-13 | Igor Shneur | System and method of generating databases |
US20080091714A1 (en) * | 2006-10-16 | 2008-04-17 | Oracle International Corporation | Efficient partitioning technique while managing large XML documents |
US20080092037A1 (en) * | 2006-10-16 | 2008-04-17 | Oracle International Corporation | Validation of XML content in a streaming fashion |
US20080120283A1 (en) * | 2006-11-17 | 2008-05-22 | Oracle International Corporation | Processing XML data stream(s) using continuous queries in a data stream management system |
US20080148141A1 (en) * | 2004-07-14 | 2008-06-19 | Siemaens Aktiengesellschaft | Method For Encoding an Xml Document, Decoding Method, Encoding and Decoding Method, Encoding Device, Decoding Device and Encoding and Decoding Device |
US20080222514A1 (en) * | 2004-02-17 | 2008-09-11 | Microsoft Corporation | Systems and Methods for Editing XML Documents |
US7440954B2 (en) | 2004-04-09 | 2008-10-21 | Oracle International Corporation | Index maintenance for operations involving indexed XML data |
US20080263008A1 (en) * | 2007-04-23 | 2008-10-23 | International Business Machines Corporation | Apparatus and method for optimizing descendant path evaluation in xpath/xquery |
US20080320023A1 (en) * | 2005-02-03 | 2008-12-25 | Fong Joseph S P | System and method of translating a relational database into an xml document and vice versa |
US7516121B2 (en) | 2004-06-23 | 2009-04-07 | Oracle International Corporation | Efficient evaluation of queries using translation |
US20090100029A1 (en) * | 2007-10-16 | 2009-04-16 | Oracle International Corporation | Handling Silent Relations In A Data Stream Management System |
US7523131B2 (en) | 2005-02-10 | 2009-04-21 | Oracle International Corporation | Techniques for efficiently storing and querying in a relational database, XML documents conforming to schemas that contain cyclic constructs |
US20090125693A1 (en) * | 2007-11-09 | 2009-05-14 | Sam Idicula | Techniques for more efficient generation of xml events from xml data sources |
US20090150412A1 (en) * | 2007-12-05 | 2009-06-11 | Sam Idicula | Efficient streaming evaluation of xpaths on binary-encoded xml schema-based documents |
US20090240712A1 (en) * | 2008-03-20 | 2009-09-24 | Oracle International Corporation | Inferring Schemas From XML Document Collections |
US20100030727A1 (en) * | 2008-07-29 | 2010-02-04 | Sivasankaran Chandrasekar | Technique For Using Occurrence Constraints To Optimize XML Index Access |
US7668806B2 (en) | 2004-08-05 | 2010-02-23 | Oracle International Corporation | Processing queries against one or more markup language sources |
US7730032B2 (en) | 2006-01-12 | 2010-06-01 | Oracle International Corporation | Efficient queriability of version histories in a repository |
US20100169354A1 (en) * | 2008-12-30 | 2010-07-01 | Thomas Baby | Indexing Mechanism for Efficient Node-Aware Full-Text Search Over XML |
US20100185683A1 (en) * | 2008-12-30 | 2010-07-22 | Thomas Baby | Indexing Strategy With Improved DML Performance and Space Usage for Node-Aware Full-Text Search Over XML |
US20100191721A1 (en) * | 2009-01-28 | 2010-07-29 | Oracle International Corporation | Mechanisms For Efficient Autocompletion In XML Search Applications |
US20100191745A1 (en) * | 2009-01-23 | 2010-07-29 | Oracle International Corporation | Mechanisms for ranking xml tags |
US20100223305A1 (en) * | 2009-03-02 | 2010-09-02 | Oracle International Corporation | Infrastructure for spilling pages to a persistent store |
US20100228734A1 (en) * | 2009-02-24 | 2010-09-09 | Oracle International Corporation | Mechanism for efficiently searching xml document collections |
US7797310B2 (en) | 2006-10-16 | 2010-09-14 | Oracle International Corporation | Technique to estimate the cost of streaming evaluation of XPaths |
US7802180B2 (en) | 2004-06-23 | 2010-09-21 | Oracle International Corporation | Techniques for serialization of instances of the XQuery data model |
US7801702B2 (en) | 2004-02-12 | 2010-09-21 | Lockheed Martin Corporation | Enhanced diagnostic fault detection and isolation |
US7814047B2 (en) | 2003-08-25 | 2010-10-12 | Oracle International Corporation | Direct loading of semistructured data |
US20100332470A1 (en) * | 2009-06-30 | 2010-12-30 | International Business Machines Corporation | Method and system for searching using contextual data |
US7873636B2 (en) | 2003-05-01 | 2011-01-18 | International Business Machines Corporation | Method, system and program product for matching a network document with a set of filters |
US7885980B2 (en) | 2004-07-02 | 2011-02-08 | Oracle International Corporation | Mechanism for improving performance on XML over XML data using path subsetting |
US7895190B2 (en) | 2008-06-25 | 2011-02-22 | International Business Machines Corporation | Indexing and querying XML documents stored in a relational database |
US7930277B2 (en) | 2004-04-21 | 2011-04-19 | Oracle International Corporation | Cost-based optimizer for an XML data repository within a database |
US7933928B2 (en) * | 2005-12-22 | 2011-04-26 | Oracle International Corporation | Method and mechanism for loading XML documents into memory |
US7949941B2 (en) | 2005-04-22 | 2011-05-24 | Oracle International Corporation | Optimizing XSLT based on input XML document structure description and translating XSLT into equivalent XQuery expressions |
US7958112B2 (en) | 2008-08-08 | 2011-06-07 | Oracle International Corporation | Interleaving query transformations for XML indexes |
US20110179085A1 (en) * | 2010-01-20 | 2011-07-21 | Beda Hammerschmidt | Using Node Identifiers In Materialized XML Views And Indexes To Directly Navigate To And Within XML Fragments |
US7991768B2 (en) | 2007-11-08 | 2011-08-02 | Oracle International Corporation | Global query normalization to improve XML index based rewrites for path subsetted index |
US8073841B2 (en) | 2005-10-07 | 2011-12-06 | Oracle International Corporation | Optimizing correlated XML extracts |
US8145859B2 (en) | 2009-03-02 | 2012-03-27 | Oracle International Corporation | Method and system for spilling from a queue to a persistent store |
US8250062B2 (en) | 2007-11-09 | 2012-08-21 | Oracle International Corporation | Optimized streaming evaluation of XML queries |
US8321450B2 (en) | 2009-07-21 | 2012-11-27 | Oracle International Corporation | Standardized database connectivity support for an event processing server in an embedded context |
US8386466B2 (en) | 2009-08-03 | 2013-02-26 | Oracle International Corporation | Log visualization tool for a data stream processing server |
US8387076B2 (en) | 2009-07-21 | 2013-02-26 | Oracle International Corporation | Standardized database connectivity support for an event processing server |
US8429196B2 (en) | 2008-06-06 | 2013-04-23 | Oracle International Corporation | Fast extraction of scalar values from binary encoded XML |
US8447744B2 (en) | 2009-12-28 | 2013-05-21 | Oracle International Corporation | Extensibility platform using data cartridges |
US8447785B2 (en) | 2010-06-02 | 2013-05-21 | Oracle International Corporation | Providing context aware search adaptively |
US8498956B2 (en) | 2008-08-29 | 2013-07-30 | Oracle International Corporation | Techniques for matching a certain class of regular expression-based patterns in data streams |
US8527458B2 (en) | 2009-08-03 | 2013-09-03 | Oracle International Corporation | Logging framework for a data stream processing server |
US8566343B2 (en) | 2010-06-02 | 2013-10-22 | Oracle International Corporation | Searching backward to speed up query |
US8694510B2 (en) | 2003-09-04 | 2014-04-08 | Oracle International Corporation | Indexing XML documents efficiently |
US8713049B2 (en) | 2010-09-17 | 2014-04-29 | Oracle International Corporation | Support for a parameterized query/view in complex event processing |
US8949455B2 (en) | 2005-11-21 | 2015-02-03 | Oracle International Corporation | Path-caching mechanism to improve performance of path-related operations in a repository |
US8959106B2 (en) | 2009-12-28 | 2015-02-17 | Oracle International Corporation | Class loading using java data cartridges |
US8990416B2 (en) | 2011-05-06 | 2015-03-24 | Oracle International Corporation | Support for a new insert stream (ISTREAM) operation in complex event processing (CEP) |
US9047249B2 (en) | 2013-02-19 | 2015-06-02 | Oracle International Corporation | Handling faults in a continuous event processing (CEP) system |
US9098587B2 (en) | 2013-01-15 | 2015-08-04 | Oracle International Corporation | Variable duration non-event pattern matching |
JP2015158767A (en) * | 2014-02-24 | 2015-09-03 | 富士通株式会社 | Information processing device, data conversion program, and data conversion method |
US9189280B2 (en) | 2010-11-18 | 2015-11-17 | Oracle International Corporation | Tracking large numbers of moving objects in an event processing system |
US9229917B2 (en) | 2003-03-28 | 2016-01-05 | Microsoft Technology Licensing, Llc | Electronic form user interfaces |
US9239821B2 (en) | 2003-08-01 | 2016-01-19 | Microsoft Technology Licensing, Llc | Translation file |
US9244978B2 (en) | 2014-06-11 | 2016-01-26 | Oracle International Corporation | Custom partitioning of a data stream |
US9256646B2 (en) | 2012-09-28 | 2016-02-09 | Oracle International Corporation | Configurable data windows for archived relations |
US9262479B2 (en) | 2012-09-28 | 2016-02-16 | Oracle International Corporation | Join operations for continuous queries over archived views |
US9329975B2 (en) | 2011-07-07 | 2016-05-03 | Oracle International Corporation | Continuous query language (CQL) debugger in complex event processing (CEP) |
US9361398B1 (en) * | 2008-09-15 | 2016-06-07 | Liberty Mutual Insurance Company | Maintaining a relational database and its schema in response to a stream of XML messages based on one or more arbitrary and evolving XML schemas |
US9367642B2 (en) | 2005-10-07 | 2016-06-14 | Oracle International Corporation | Flexible storage of XML collections within an object-relational database |
US9390135B2 (en) | 2013-02-19 | 2016-07-12 | Oracle International Corporation | Executing continuous event processing (CEP) queries in parallel |
US9418113B2 (en) | 2013-05-30 | 2016-08-16 | Oracle International Corporation | Value based windows on relations in continuous data streams |
US9430494B2 (en) | 2009-12-28 | 2016-08-30 | Oracle International Corporation | Spatial data cartridge for event processing systems |
US20160267061A1 (en) * | 2015-03-11 | 2016-09-15 | International Business Machines Corporation | Creating xml data from a database |
US9712645B2 (en) | 2014-06-26 | 2017-07-18 | Oracle International Corporation | Embedded event processing |
US9886486B2 (en) | 2014-09-24 | 2018-02-06 | Oracle International Corporation | Enriching events with dynamically typed big data for event processing |
US9934279B2 (en) | 2013-12-05 | 2018-04-03 | Oracle International Corporation | Pattern matching across multiple input data streams |
US9972103B2 (en) | 2015-07-24 | 2018-05-15 | Oracle International Corporation | Visually exploring and analyzing event streams |
US10055128B2 (en) | 2010-01-20 | 2018-08-21 | Oracle International Corporation | Hybrid binary XML storage model for efficient XML processing |
US10120907B2 (en) | 2014-09-24 | 2018-11-06 | Oracle International Corporation | Scaling event processing using distributed flows and map-reduce operations |
US10298444B2 (en) | 2013-01-15 | 2019-05-21 | Oracle International Corporation | Variable duration windows on continuous data streams |
US10956422B2 (en) | 2012-12-05 | 2021-03-23 | Oracle International Corporation | Integrating event processing with map-reduce |
Families Citing this family (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FI65460C (en) | 1980-12-12 | 1984-05-10 | Valmet Oy | FOER FARANDE OCH ANORDNING VID PRESS- ELLER TORKPARTIET I EN PAPERSMASKIN |
AUPR645701A0 (en) | 2001-07-18 | 2001-08-09 | Tralee Investments Ltd | Database adapter |
CA2485546A1 (en) * | 2002-05-14 | 2003-11-27 | Verity, Inc. | Apparatus and method for region sensitive dynamically configurable document relevance ranking |
US7678465B2 (en) | 2002-07-24 | 2010-03-16 | Applied Thin Films, Inc. | Aluminum phosphate compounds, compositions, materials and related metal coatings |
EP1387294A1 (en) * | 2002-07-29 | 2004-02-04 | Deutsche Thomson-Brandt Gmbh | Database model for hierarchical data formats |
US7682700B2 (en) | 2002-08-14 | 2010-03-23 | Applied Thin Films, Inc. | Aluminum phosphate compounds, compositions, materials and related composites |
KR100497362B1 (en) * | 2002-08-22 | 2005-06-23 | 삼성전자주식회사 | Apparatus and method for converting electronic program guide information to XML |
CA2529095A1 (en) | 2002-12-23 | 2005-01-13 | Applied Thin Films, Inc. | Aluminum phosphate coatings |
US8250093B2 (en) | 2003-08-25 | 2012-08-21 | International Business Machines Corporation | Method and system for utilizing a cache for path-level access control to structured documents stored in a database |
US7792866B2 (en) * | 2003-08-25 | 2010-09-07 | International Business Machines Corporation | Method and system for querying structured documents stored in their native format in a database |
US8150818B2 (en) * | 2003-08-25 | 2012-04-03 | International Business Machines Corporation | Method and system for storing structured documents in their native format in a database |
US7519574B2 (en) * | 2003-08-25 | 2009-04-14 | International Business Machines Corporation | Associating information related to components in structured documents stored in their native format in a database |
US7490093B2 (en) | 2003-08-25 | 2009-02-10 | Oracle International Corporation | Generating a schema-specific load structure to load data into a relational database based on determining whether the schema-specific load structure already exists |
US8775468B2 (en) * | 2003-08-29 | 2014-07-08 | International Business Machines Corporation | Method and system for providing path-level access control for structured documents stored in a database |
US7478100B2 (en) * | 2003-09-05 | 2009-01-13 | Oracle International Corporation | Method and mechanism for efficient storage and query of XML documents based on paths |
US7873645B2 (en) | 2003-09-05 | 2011-01-18 | Oracle International Corporation | Method and mechanism for handling arbitrarily-sized XML in SQL operator tree |
US7398265B2 (en) * | 2004-04-09 | 2008-07-08 | Oracle International Corporation | Efficient query processing of XML data using XML index |
US7499915B2 (en) | 2004-04-09 | 2009-03-03 | Oracle International Corporation | Index for accessing XML data |
US7493305B2 (en) | 2004-04-09 | 2009-02-17 | Oracle International Corporation | Efficient queribility and manageability of an XML index with path subsetting |
US7937413B2 (en) | 2004-05-04 | 2011-05-03 | International Business Machines Corporation | Self-adaptive prefix encoding for stable node identifiers |
US7526490B2 (en) * | 2004-06-08 | 2009-04-28 | Oracle International Corporation | Method of and system for providing positional based object to XML mapping |
US7685137B2 (en) | 2004-08-06 | 2010-03-23 | Oracle International Corporation | Technique of using XMLType tree as the type infrastructure for XML |
US7921076B2 (en) | 2004-12-15 | 2011-04-05 | Oracle International Corporation | Performing an action in response to a file system event |
US20080320169A1 (en) * | 2005-01-12 | 2008-12-25 | Ian Shaw Burnett | Systems, Methods, and Computer Programs for Enabling a Computing Apparatus to Obtain Data |
US8346737B2 (en) | 2005-03-21 | 2013-01-01 | Oracle International Corporation | Encoding of hierarchically organized data for efficient storage and processing |
US8543614B2 (en) * | 2005-08-22 | 2013-09-24 | International Business Machines Corporation | Packing nodes into records to store XML XQuery data model and other hierarchically structured data |
US7529726B2 (en) | 2005-08-22 | 2009-05-05 | International Business Machines Corporation | XML sub-document versioning method in XML databases using record storages |
JP2007148944A (en) * | 2005-11-30 | 2007-06-14 | Ricoh Co Ltd | Communication terminal apparatus |
WO2007081017A1 (en) * | 2006-01-13 | 2007-07-19 | Justsystems Corporation | Document processor |
US7801856B2 (en) | 2006-08-09 | 2010-09-21 | Oracle International Corporation | Using XML for flexible replication of complex types |
US9436779B2 (en) * | 2006-11-17 | 2016-09-06 | Oracle International Corporation | Techniques of efficient XML query using combination of XML table index and path/value index |
US7840590B2 (en) * | 2006-12-18 | 2010-11-23 | Oracle International Corporation | Querying and fragment extraction within resources in a hierarchical repository |
US20080147615A1 (en) * | 2006-12-18 | 2008-06-19 | Oracle International Corporation | Xpath based evaluation for content stored in a hierarchical database repository using xmlindex |
US20080235260A1 (en) * | 2007-03-23 | 2008-09-25 | International Business Machines Corporation | Scalable algorithms for mapping-based xml transformation |
US7836098B2 (en) | 2007-07-13 | 2010-11-16 | Oracle International Corporation | Accelerating value-based lookup of XML document in XQuery |
US7840609B2 (en) | 2007-07-31 | 2010-11-23 | Oracle International Corporation | Using sibling-count in XML indexes to optimize single-path queries |
WO2009031915A1 (en) * | 2007-09-03 | 2009-03-12 | Obschestvo S Ogranichennoi Otvetstvennostiyu 'meralabs' | Method and a system for storing, retrieving and extracting information on the basis of low-organised and decentralised datasets |
US8489649B2 (en) | 2010-12-13 | 2013-07-16 | Oracle International Corporation | Extensible RDF databases |
KR101122629B1 (en) * | 2011-11-18 | 2012-03-09 | 김춘기 | Method for creation of xml document using data converting of database |
US9811579B1 (en) | 2012-11-21 | 2017-11-07 | Christopher A. Olson | Document relational mapping |
US9135285B1 (en) * | 2013-05-30 | 2015-09-15 | Ca, Inc. | Loading XML records into a database |
US10558679B2 (en) * | 2016-02-10 | 2020-02-11 | Fuji Xerox Co., Ltd. | Systems and methods for presenting a topic-centric visualization of collaboration data |
US10394889B1 (en) * | 2017-01-10 | 2019-08-27 | Marklogic Corporation | Apparatus and method for supplying path protected search results from a semi-structured document database |
CN109799948B (en) * | 2017-11-17 | 2023-05-16 | 航天信息股份有限公司 | Data storage method and device |
US11423001B2 (en) | 2019-09-13 | 2022-08-23 | Oracle International Corporation | Technique of efficiently, comprehensively and autonomously support native JSON datatype in RDBMS for both OLTP and OLAP |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6154738A (en) * | 1998-03-27 | 2000-11-28 | Call; Charles Gainor | Methods and apparatus for disseminating product information via the internet using universal product codes |
US6240407B1 (en) * | 1998-04-29 | 2001-05-29 | International Business Machines Corp. | Method and apparatus for creating an index in a database system |
US6366934B1 (en) * | 1998-10-08 | 2002-04-02 | International Business Machines Corporation | Method and apparatus for querying structured documents using a database extender |
US6125391A (en) * | 1998-10-16 | 2000-09-26 | Commerce One, Inc. | Market makers using documents for commerce in trading partner networks |
US6721727B2 (en) * | 1999-12-02 | 2004-04-13 | International Business Machines Corporation | XML documents stored as column data |
US6785673B1 (en) * | 2000-02-09 | 2004-08-31 | At&T Corp. | Method for converting relational data into XML |
US6581062B1 (en) | 2000-03-02 | 2003-06-17 | Nimble Technology, Inc. | Method and apparatus for storing semi-structured data in a structured manner |
US6704736B1 (en) * | 2000-06-28 | 2004-03-09 | Microsoft Corporation | Method and apparatus for information transformation and exchange in a relational database environment |
US6862590B2 (en) * | 2002-05-30 | 2005-03-01 | Microsoft Corporation | Converting expressions to execution plans |
-
2000
- 2000-12-05 US US09/730,892 patent/US20020116371A1/en not_active Abandoned
- 2000-12-06 AU AU45211/01A patent/AU4521101A/en not_active Abandoned
- 2000-12-06 WO PCT/US2000/042665 patent/WO2001042881A2/en active Application Filing
-
2003
- 2003-12-23 US US10/745,762 patent/US7353222B2/en active Active
Cited By (237)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070074107A1 (en) * | 1997-01-31 | 2007-03-29 | Timebase Pty Limited | Maltweb multi-axis viewing interface and higher level scoping |
US8972846B2 (en) | 1997-01-31 | 2015-03-03 | Timebase Pty Limited | MALTweb multi-axis viewing interface and higher level scoping |
US7293228B1 (en) | 1997-01-31 | 2007-11-06 | Timebase Pty Limited | Maltweb multi-axis viewing interface and higher level scoping |
US8386484B2 (en) | 1997-01-31 | 2013-02-26 | Timebase Pty Limited | Maltweb multi-axis viewing interface and higher level scoping |
US20070067715A1 (en) * | 1997-01-31 | 2007-03-22 | Timebase Pty Limited | MALTweb multi-axis viewing interface and higher level scoping |
US8983955B2 (en) | 1997-01-31 | 2015-03-17 | Timebase Pty Limited | Maltweb multi-axis viewing interface and higher level scoping |
US6701328B1 (en) * | 2000-01-06 | 2004-03-02 | Media Fusion Co., Ltd. | Database management system |
US7031956B1 (en) * | 2000-02-16 | 2006-04-18 | Verizon Laboratories Inc. | System and method for synchronizing and/or updating an existing relational database with supplemental XML data |
US6778983B1 (en) * | 2000-04-28 | 2004-08-17 | International Business Machines Corporation | Apparatus and method for accessing HTML files using an SQL query |
US20020156811A1 (en) * | 2000-05-23 | 2002-10-24 | Krupa Kenneth A. | System and method for converting an XML data structure into a relational database |
US6915304B2 (en) * | 2000-05-23 | 2005-07-05 | Kenneth A. Krupa | System and method for converting an XML data structure into a relational database |
US6681223B1 (en) * | 2000-07-27 | 2004-01-20 | International Business Machines Corporation | System and method of performing profile matching with a structured document |
US7873649B2 (en) * | 2000-09-07 | 2011-01-18 | Oracle International Corporation | Method and mechanism for identifying transaction on a row of data |
US20020078094A1 (en) * | 2000-09-07 | 2002-06-20 | Muralidhar Krishnaprasad | Method and apparatus for XML visualization of a relational database and universal resource identifiers to database data and metadata |
US7321900B1 (en) | 2001-06-15 | 2008-01-22 | Oracle International Corporation | Reducing memory requirements needed to represent XML entities |
US7305667B1 (en) | 2001-06-15 | 2007-12-04 | Oracle International Corporation | Call back structures for user defined DOMs |
US20030041305A1 (en) * | 2001-07-18 | 2003-02-27 | Christoph Schnelle | Resilient data links |
US7363310B2 (en) * | 2001-09-04 | 2008-04-22 | Timebase Pty Limited | Mapping of data from XML to SQL |
US8396901B2 (en) | 2001-09-04 | 2013-03-12 | Timebase Pty Limited | Mapping of data from XML to SQL |
US8738667B2 (en) | 2001-09-04 | 2014-05-27 | Timebase Pty Limited | Mapping of data from XML to SQL |
US8204913B2 (en) | 2001-09-04 | 2012-06-19 | Timebase Pty Limited | Mapping of data from XML to SQL |
US20080208879A1 (en) * | 2001-09-04 | 2008-08-28 | Timebase Pty Limited | Mapping of data from XML to SQL |
US20030070144A1 (en) * | 2001-09-04 | 2003-04-10 | Christoph Schnelle | Mapping of data from XML to SQL |
US7092967B1 (en) * | 2001-09-28 | 2006-08-15 | Oracle International Corporation | Loadable units for lazy manifestation of XML documents |
US7158981B2 (en) | 2001-09-28 | 2007-01-02 | Oracle International Corporation | Providing a consistent hierarchical abstraction of relational data |
US20060004733A1 (en) * | 2001-10-19 | 2006-01-05 | Zoltan William B | System and method for accessing information in a replicated database |
US8682847B2 (en) * | 2001-10-19 | 2014-03-25 | Verizon Patent And Licensing Inc. | System and method for accessing information in a replicated database |
US6938031B1 (en) * | 2001-10-19 | 2005-08-30 | Data Return Llc | System and method for accessing information in a replicated database |
US7281206B2 (en) | 2001-11-16 | 2007-10-09 | Timebase Pty Limited | Maintenance of a markup language document in a database |
US20080021916A1 (en) * | 2001-11-16 | 2008-01-24 | Timebase Pty Limited | Maintenance of a markup language document in a database |
US20050021549A1 (en) * | 2001-11-30 | 2005-01-27 | Microsoft Corporation | System and method for relational representation of hierarchical data |
US7421445B2 (en) * | 2001-11-30 | 2008-09-02 | Microsoft Corporation | System and method for relational representation of hierarchical data |
US20050027743A1 (en) * | 2001-11-30 | 2005-02-03 | Microsoft Corporation | System and method for relational representation of hierarchical data |
US20030177442A1 (en) * | 2002-03-18 | 2003-09-18 | Sun Microsystems, Inc. | System and method for comparing hashed XML files |
US7096421B2 (en) * | 2002-03-18 | 2006-08-22 | Sun Microsystems, Inc. | System and method for comparing hashed XML files |
US20030188264A1 (en) * | 2002-03-29 | 2003-10-02 | Full Degree, Inc. | Method and apparatus for XML data normalization |
US20050125431A1 (en) * | 2002-04-12 | 2005-06-09 | Microsoft Corporation | System and method for XML based content management |
US7925668B2 (en) * | 2002-05-10 | 2011-04-12 | International Business Machines Corporation | Querying markup language data sources using a relational query processor |
US7457810B2 (en) * | 2002-05-10 | 2008-11-25 | International Business Machines Corporation | Querying markup language data sources using a relational query processor |
US20080016045A1 (en) * | 2002-05-10 | 2008-01-17 | International Business Machines Corporation | Querying markup language data sources using a relational query processor |
US20110040794A1 (en) * | 2002-05-10 | 2011-02-17 | International Business Machines Corporation | Querying markup language data sources using a relational query processor |
US20030212664A1 (en) * | 2002-05-10 | 2003-11-13 | Martin Breining | Querying markup language data sources using a relational query processor |
US8346809B2 (en) | 2002-05-10 | 2013-01-01 | International Business Machines Corporation | Querying markup language data sources using a relational query processor |
US8335800B2 (en) | 2002-05-10 | 2012-12-18 | International Business Machines Corporation | Querying markup language data sources using a relational query processor |
US7844629B2 (en) | 2002-05-10 | 2010-11-30 | International Business Machines Corporation | Querying markup language data sources using a relational query processor |
US20070250503A1 (en) * | 2002-05-10 | 2007-10-25 | International Business Machines Corporation | Querying markup language data sources using a relational query processor |
US20110208774A1 (en) * | 2002-05-10 | 2011-08-25 | International Business Machines Corporation | Querying markup language data sources using a relational query processor |
US8001151B2 (en) | 2002-05-10 | 2011-08-16 | International Business Machines Corporation | Querying markup language data sources using a relational query processor |
DE10247178A1 (en) * | 2002-10-10 | 2004-04-22 | Technische Universität Ilmenau Abteilung Forschungsförderung und Technologietransfer | Automated construction of object-oriented database for managing meta-text-based documents involves treating documents of unknown structure as objects, analyzing properties, storing, generating index |
US20040163041A1 (en) * | 2003-02-13 | 2004-08-19 | Paterra, Inc. | Relational database structures for structured documents |
US9229917B2 (en) | 2003-03-28 | 2016-01-05 | Microsoft Technology Licensing, Llc | Electronic form user interfaces |
US7873636B2 (en) | 2003-05-01 | 2011-01-18 | International Business Machines Corporation | Method, system and program product for matching a network document with a set of filters |
US20050010896A1 (en) * | 2003-07-07 | 2005-01-13 | International Business Machines Corporation | Universal format transformation between relational database management systems and extensible markup language using XML relational transformation |
US7509576B2 (en) * | 2003-08-01 | 2009-03-24 | Sony Corporation | Information processing system and method, program, and recording medium |
US20050066267A1 (en) * | 2003-08-01 | 2005-03-24 | Takeshi Kanai | Information processing system and method, program, and recording medium |
US9239821B2 (en) | 2003-08-01 | 2016-01-19 | Microsoft Technology Licensing, Llc | Translation file |
US7814047B2 (en) | 2003-08-25 | 2010-10-12 | Oracle International Corporation | Direct loading of semistructured data |
US7747580B2 (en) | 2003-08-25 | 2010-06-29 | Oracle International Corporation | Direct loading of opaque types |
US20050050058A1 (en) * | 2003-08-25 | 2005-03-03 | Oracle International Corporation | Direct loading of opaque types |
US8001156B2 (en) * | 2003-08-29 | 2011-08-16 | Cybertrust Ireland Limited | Processing XML node sets |
US20050050066A1 (en) * | 2003-08-29 | 2005-03-03 | Hughes Merlin P. D. | Processing XML node sets |
US20050055343A1 (en) * | 2003-09-04 | 2005-03-10 | Krishnamurthy Sanjay M. | Storing XML documents efficiently in an RDBMS |
US8694510B2 (en) | 2003-09-04 | 2014-04-08 | Oracle International Corporation | Indexing XML documents efficiently |
US8229932B2 (en) | 2003-09-04 | 2012-07-24 | Oracle International Corporation | Storing XML documents efficiently in an RDBMS |
US20050131926A1 (en) * | 2003-12-10 | 2005-06-16 | Siemens Corporate Research Inc. | Method of hybrid searching for extensible markup language (XML) documents |
US20050138052A1 (en) * | 2003-12-22 | 2005-06-23 | International Business Machines Corporation | Method, computer program product, and system converting relational data into hierarchical data structure based upon tagging trees |
US7219102B2 (en) * | 2003-12-22 | 2007-05-15 | International Business Machines Corporation | Method, computer program product, and system converting relational data into hierarchical data structure based upon tagging trees |
US20050160076A1 (en) * | 2004-01-20 | 2005-07-21 | Fujitsu Limited | Method and apparatus for referring to database integration, and computer product |
US7801702B2 (en) | 2004-02-12 | 2010-09-21 | Lockheed Martin Corporation | Enhanced diagnostic fault detection and isolation |
US20050223288A1 (en) * | 2004-02-12 | 2005-10-06 | Lockheed Martin Corporation | Diagnostic fault detection and isolation |
US20050240555A1 (en) * | 2004-02-12 | 2005-10-27 | Lockheed Martin Corporation | Interactive electronic technical manual system integrated with the system under test |
US20080222514A1 (en) * | 2004-02-17 | 2008-09-11 | Microsoft Corporation | Systems and Methods for Editing XML Documents |
US7921101B2 (en) | 2004-04-09 | 2011-04-05 | Oracle International Corporation | Index maintenance for operations involving indexed XML data |
JP4724177B2 (en) * | 2004-04-09 | 2011-07-13 | オラクル・インターナショナル・コーポレイション | Index for accessing XML data |
US7366735B2 (en) * | 2004-04-09 | 2008-04-29 | Oracle International Corporation | Efficient extraction of XML content stored in a LOB |
US20050228828A1 (en) * | 2004-04-09 | 2005-10-13 | Sivasankaran Chandrasekar | Efficient extraction of XML content stored in a LOB |
JP2007533008A (en) * | 2004-04-09 | 2007-11-15 | オラクル・インターナショナル・コーポレイション | Index for accessing XML data |
US7440954B2 (en) | 2004-04-09 | 2008-10-21 | Oracle International Corporation | Index maintenance for operations involving indexed XML data |
US7930277B2 (en) | 2004-04-21 | 2011-04-19 | Oracle International Corporation | Cost-based optimizer for an XML data repository within a database |
US20050273573A1 (en) * | 2004-05-06 | 2005-12-08 | Peiya Liu | System and method for GUI supported specifications for automating form field extraction with database mapping |
US8095871B2 (en) * | 2004-05-06 | 2012-01-10 | Siemens Corporation | System and method for GUI supported specifications for automating form field extraction with database mapping |
US20050267909A1 (en) * | 2004-05-21 | 2005-12-01 | Christopher Betts | Storing multipart XML documents |
US8762381B2 (en) * | 2004-05-21 | 2014-06-24 | Ca, Inc. | Storing multipart XML documents |
US20050289175A1 (en) * | 2004-06-23 | 2005-12-29 | Oracle International Corporation | Providing XML node identity based operations in a value based SQL system |
US7516121B2 (en) | 2004-06-23 | 2009-04-07 | Oracle International Corporation | Efficient evaluation of queries using translation |
US7802180B2 (en) | 2004-06-23 | 2010-09-21 | Oracle International Corporation | Techniques for serialization of instances of the XQuery data model |
US9098476B2 (en) * | 2004-06-29 | 2015-08-04 | Microsoft Technology Licensing, Llc | Method and system for mapping between structured subjects and observers |
US20050289457A1 (en) * | 2004-06-29 | 2005-12-29 | Microsoft Corporation | Method and system for mapping between structured subjects and observers |
US7885980B2 (en) | 2004-07-02 | 2011-02-08 | Oracle International Corporation | Mechanism for improving performance on XML over XML data using path subsetting |
US20080148141A1 (en) * | 2004-07-14 | 2008-06-19 | Siemaens Aktiengesellschaft | Method For Encoding an Xml Document, Decoding Method, Encoding and Decoding Method, Encoding Device, Decoding Device and Encoding and Decoding Device |
US7668806B2 (en) | 2004-08-05 | 2010-02-23 | Oracle International Corporation | Processing queries against one or more markup language sources |
US20060120181A1 (en) * | 2004-10-05 | 2006-06-08 | Lockheed Martin Corp. | Fault detection and isolation with analysis of built-in-test results |
US20060085692A1 (en) * | 2004-10-06 | 2006-04-20 | Lockheed Martin Corp. | Bus fault detection and isolation |
US7823062B2 (en) | 2004-12-23 | 2010-10-26 | Lockheed Martin Corporation | Interactive electronic technical manual system with database insertion and retrieval |
US20080120282A1 (en) * | 2004-12-23 | 2008-05-22 | Lockheed Martin Corporation | Interactive electronic technical manual system with database insertion and retrieval |
US20060155719A1 (en) * | 2005-01-10 | 2006-07-13 | International Business Machines Corporation | Complex event discovery in event databases |
US20080320023A1 (en) * | 2005-02-03 | 2008-12-25 | Fong Joseph S P | System and method of translating a relational database into an xml document and vice versa |
US8321478B2 (en) * | 2005-02-03 | 2012-11-27 | Fong Joseph S P | System and method of translating a relational database into an XML document and vice versa |
US7523131B2 (en) | 2005-02-10 | 2009-04-21 | Oracle International Corporation | Techniques for efficiently storing and querying in a relational database, XML documents conforming to schemas that contain cyclic constructs |
US7827210B2 (en) | 2005-02-15 | 2010-11-02 | International Business Machines Corporation | Memory efficient XML shredded with partial commit |
US20060184552A1 (en) * | 2005-02-15 | 2006-08-17 | International Business Machines Corporation | Memory efficient XML shredding with partial commit |
US7363317B2 (en) * | 2005-02-15 | 2008-04-22 | International Business Machines Corporation | Memory efficient XML shredding with partial commit |
US20080147723A1 (en) * | 2005-02-15 | 2008-06-19 | International Business Machines Corp. | Memory efficient xml shredded with partial commit |
US7685150B2 (en) | 2005-04-19 | 2010-03-23 | Oracle International Corporation | Optimization of queries over XML views that are based on union all operators |
US20060235840A1 (en) * | 2005-04-19 | 2006-10-19 | Anand Manikutty | Optimization of queries over XML views that are based on union all operators |
US7949941B2 (en) | 2005-04-22 | 2011-05-24 | Oracle International Corporation | Optimizing XSLT based on input XML document structure description and translating XSLT into equivalent XQuery expressions |
US20070011167A1 (en) * | 2005-07-08 | 2007-01-11 | Muralidhar Krishnaprasad | Optimization of queries on a repository based on constraints on how the data is stored in the repository |
US8166059B2 (en) | 2005-07-08 | 2012-04-24 | Oracle International Corporation | Optimization of queries on a repository based on constraints on how the data is stored in the repository |
US20070016605A1 (en) * | 2005-07-18 | 2007-01-18 | Ravi Murthy | Mechanism for computing structural summaries of XML document collections in a database system |
US8762410B2 (en) * | 2005-07-18 | 2014-06-24 | Oracle International Corporation | Document level indexes for efficient processing in multiple tiers of a computer system |
US20070016604A1 (en) * | 2005-07-18 | 2007-01-18 | Ravi Murthy | Document level indexes for efficient processing in multiple tiers of a computer system |
US20070038649A1 (en) * | 2005-08-11 | 2007-02-15 | Abhyudaya Agrawal | Flexible handling of datetime XML datatype in a database system |
US7406478B2 (en) | 2005-08-11 | 2008-07-29 | Oracle International Corporation | Flexible handling of datetime XML datatype in a database system |
US20070050394A1 (en) * | 2005-08-30 | 2007-03-01 | Sterling Merle D | Method and apparatus for automated database creation from Web Services Description Language (WSDL) |
US20070061092A1 (en) * | 2005-08-30 | 2007-03-15 | Microsoft Corporation | Generational global name table |
US7454436B2 (en) * | 2005-08-30 | 2008-11-18 | Microsoft Corporation | Generational global name table |
US9367642B2 (en) | 2005-10-07 | 2016-06-14 | Oracle International Corporation | Flexible storage of XML collections within an object-relational database |
US8024368B2 (en) | 2005-10-07 | 2011-09-20 | Oracle International Corporation | Generating XML instances from flat files |
US8073841B2 (en) | 2005-10-07 | 2011-12-06 | Oracle International Corporation | Optimizing correlated XML extracts |
US8554789B2 (en) | 2005-10-07 | 2013-10-08 | Oracle International Corporation | Managing cyclic constructs of XML schema in a rdbms |
US20070083529A1 (en) * | 2005-10-07 | 2007-04-12 | Oracle International Corporation | Managing cyclic constructs of XML schema in a rdbms |
US20070083538A1 (en) * | 2005-10-07 | 2007-04-12 | Roy Indroniel D | Generating XML instances from flat files |
US8949455B2 (en) | 2005-11-21 | 2015-02-03 | Oracle International Corporation | Path-caching mechanism to improve performance of path-related operations in a repository |
US9898545B2 (en) | 2005-11-21 | 2018-02-20 | Oracle International Corporation | Path-caching mechanism to improve performance of path-related operations in a repository |
US7933928B2 (en) * | 2005-12-22 | 2011-04-26 | Oracle International Corporation | Method and mechanism for loading XML documents into memory |
US7730032B2 (en) | 2006-01-12 | 2010-06-01 | Oracle International Corporation | Efficient queriability of version histories in a repository |
US9229967B2 (en) | 2006-02-22 | 2016-01-05 | Oracle International Corporation | Efficient processing of path related operations on data organized hierarchically in an RDBMS |
US20070198545A1 (en) * | 2006-02-22 | 2007-08-23 | Fei Ge | Efficient processing of path related operations on data organized hierarchically in an RDBMS |
US20130318109A1 (en) * | 2006-05-25 | 2013-11-28 | Oracle International Corporation | Isolation for applications working on shared xml data |
US8510292B2 (en) | 2006-05-25 | 2013-08-13 | Oracle International Coporation | Isolation for applications working on shared XML data |
US20070276792A1 (en) * | 2006-05-25 | 2007-11-29 | Asha Tarachandani | Isolation for applications working on shared XML data |
US8930348B2 (en) * | 2006-05-25 | 2015-01-06 | Oracle International Corporation | Isolation for applications working on shared XML data |
US20080005093A1 (en) * | 2006-07-03 | 2008-01-03 | Zhen Hua Liu | Techniques of using a relational caching framework for efficiently handling XML queries in the mid-tier data caching |
US20080033967A1 (en) * | 2006-07-18 | 2008-02-07 | Ravi Murthy | Semantic aware processing of XML documents |
US20080052281A1 (en) * | 2006-08-23 | 2008-02-28 | Lockheed Martin Corporation | Database insertion and retrieval system and method |
US20080065653A1 (en) * | 2006-09-07 | 2008-03-13 | Igor Shneur | System and method of generating databases |
US7797310B2 (en) | 2006-10-16 | 2010-09-14 | Oracle International Corporation | Technique to estimate the cost of streaming evaluation of XPaths |
US20080091714A1 (en) * | 2006-10-16 | 2008-04-17 | Oracle International Corporation | Efficient partitioning technique while managing large XML documents |
US20080092037A1 (en) * | 2006-10-16 | 2008-04-17 | Oracle International Corporation | Validation of XML content in a streaming fashion |
US7933935B2 (en) | 2006-10-16 | 2011-04-26 | Oracle International Corporation | Efficient partitioning technique while managing large XML documents |
US20080120283A1 (en) * | 2006-11-17 | 2008-05-22 | Oracle International Corporation | Processing XML data stream(s) using continuous queries in a data stream management system |
US8117182B2 (en) * | 2007-04-23 | 2012-02-14 | International Business Machines Corporation | Apparatus and method for optimizing descendant path evaluation in xpath/xquery |
US20080263008A1 (en) * | 2007-04-23 | 2008-10-23 | International Business Machines Corporation | Apparatus and method for optimizing descendant path evaluation in xpath/xquery |
US7979420B2 (en) | 2007-10-16 | 2011-07-12 | Oracle International Corporation | Handling silent relations in a data stream management system |
US20090100029A1 (en) * | 2007-10-16 | 2009-04-16 | Oracle International Corporation | Handling Silent Relations In A Data Stream Management System |
US7991768B2 (en) | 2007-11-08 | 2011-08-02 | Oracle International Corporation | Global query normalization to improve XML index based rewrites for path subsetted index |
US8543898B2 (en) | 2007-11-09 | 2013-09-24 | Oracle International Corporation | Techniques for more efficient generation of XML events from XML data sources |
US20090125693A1 (en) * | 2007-11-09 | 2009-05-14 | Sam Idicula | Techniques for more efficient generation of xml events from xml data sources |
US8250062B2 (en) | 2007-11-09 | 2012-08-21 | Oracle International Corporation | Optimized streaming evaluation of XML queries |
US20090150412A1 (en) * | 2007-12-05 | 2009-06-11 | Sam Idicula | Efficient streaming evaluation of xpaths on binary-encoded xml schema-based documents |
US9842090B2 (en) | 2007-12-05 | 2017-12-12 | Oracle International Corporation | Efficient streaming evaluation of XPaths on binary-encoded XML schema-based documents |
US8868482B2 (en) | 2008-03-20 | 2014-10-21 | Oracle International Corporation | Inferring schemas from XML document collections |
US20090240712A1 (en) * | 2008-03-20 | 2009-09-24 | Oracle International Corporation | Inferring Schemas From XML Document Collections |
US8429196B2 (en) | 2008-06-06 | 2013-04-23 | Oracle International Corporation | Fast extraction of scalar values from binary encoded XML |
US7895190B2 (en) | 2008-06-25 | 2011-02-22 | International Business Machines Corporation | Indexing and querying XML documents stored in a relational database |
US20100030727A1 (en) * | 2008-07-29 | 2010-02-04 | Sivasankaran Chandrasekar | Technique For Using Occurrence Constraints To Optimize XML Index Access |
US7958112B2 (en) | 2008-08-08 | 2011-06-07 | Oracle International Corporation | Interleaving query transformations for XML indexes |
US8498956B2 (en) | 2008-08-29 | 2013-07-30 | Oracle International Corporation | Techniques for matching a certain class of regular expression-based patterns in data streams |
US8589436B2 (en) | 2008-08-29 | 2013-11-19 | Oracle International Corporation | Techniques for performing regular expression-based pattern matching in data streams |
US9305238B2 (en) | 2008-08-29 | 2016-04-05 | Oracle International Corporation | Framework for supporting regular expression-based pattern matching in data streams |
US8676841B2 (en) | 2008-08-29 | 2014-03-18 | Oracle International Corporation | Detection of recurring non-occurrences of events using pattern matching |
US9361398B1 (en) * | 2008-09-15 | 2016-06-07 | Liberty Mutual Insurance Company | Maintaining a relational database and its schema in response to a stream of XML messages based on one or more arbitrary and evolving XML schemas |
US8219563B2 (en) * | 2008-12-30 | 2012-07-10 | Oracle International Corporation | Indexing mechanism for efficient node-aware full-text search over XML |
US8126932B2 (en) | 2008-12-30 | 2012-02-28 | Oracle International Corporation | Indexing strategy with improved DML performance and space usage for node-aware full-text search over XML |
US20100169354A1 (en) * | 2008-12-30 | 2010-07-01 | Thomas Baby | Indexing Mechanism for Efficient Node-Aware Full-Text Search Over XML |
US20100185683A1 (en) * | 2008-12-30 | 2010-07-22 | Thomas Baby | Indexing Strategy With Improved DML Performance and Space Usage for Node-Aware Full-Text Search Over XML |
US8560535B2 (en) | 2009-01-23 | 2013-10-15 | Oracle International Corporation | Mechanisms for ranking XML tags |
US20100191745A1 (en) * | 2009-01-23 | 2010-07-29 | Oracle International Corporation | Mechanisms for ranking xml tags |
US20100191721A1 (en) * | 2009-01-28 | 2010-07-29 | Oracle International Corporation | Mechanisms For Efficient Autocompletion In XML Search Applications |
US8943045B2 (en) * | 2009-01-28 | 2015-01-27 | Oracle International Corporation | Mechanisms for efficient autocompletion in XML search applications |
US8650182B2 (en) | 2009-02-24 | 2014-02-11 | Oracle International Corporation | Mechanism for efficiently searching XML document collections |
US20100228734A1 (en) * | 2009-02-24 | 2010-09-09 | Oracle International Corporation | Mechanism for efficiently searching xml document collections |
US20100223305A1 (en) * | 2009-03-02 | 2010-09-02 | Oracle International Corporation | Infrastructure for spilling pages to a persistent store |
US8352517B2 (en) | 2009-03-02 | 2013-01-08 | Oracle International Corporation | Infrastructure for spilling pages to a persistent store |
US8145859B2 (en) | 2009-03-02 | 2012-03-27 | Oracle International Corporation | Method and system for spilling from a queue to a persistent store |
US20100332470A1 (en) * | 2009-06-30 | 2010-12-30 | International Business Machines Corporation | Method and system for searching using contextual data |
US8332417B2 (en) * | 2009-06-30 | 2012-12-11 | International Business Machines Corporation | Method and system for searching using contextual data |
US8321450B2 (en) | 2009-07-21 | 2012-11-27 | Oracle International Corporation | Standardized database connectivity support for an event processing server in an embedded context |
US8387076B2 (en) | 2009-07-21 | 2013-02-26 | Oracle International Corporation | Standardized database connectivity support for an event processing server |
US8386466B2 (en) | 2009-08-03 | 2013-02-26 | Oracle International Corporation | Log visualization tool for a data stream processing server |
US8527458B2 (en) | 2009-08-03 | 2013-09-03 | Oracle International Corporation | Logging framework for a data stream processing server |
US9430494B2 (en) | 2009-12-28 | 2016-08-30 | Oracle International Corporation | Spatial data cartridge for event processing systems |
US9058360B2 (en) | 2009-12-28 | 2015-06-16 | Oracle International Corporation | Extensible language framework using data cartridges |
US8959106B2 (en) | 2009-12-28 | 2015-02-17 | Oracle International Corporation | Class loading using java data cartridges |
US8447744B2 (en) | 2009-12-28 | 2013-05-21 | Oracle International Corporation | Extensibility platform using data cartridges |
US9305057B2 (en) | 2009-12-28 | 2016-04-05 | Oracle International Corporation | Extensible indexing framework using data cartridges |
US10055128B2 (en) | 2010-01-20 | 2018-08-21 | Oracle International Corporation | Hybrid binary XML storage model for efficient XML processing |
US8346813B2 (en) | 2010-01-20 | 2013-01-01 | Oracle International Corporation | Using node identifiers in materialized XML views and indexes to directly navigate to and within XML fragments |
US10191656B2 (en) | 2010-01-20 | 2019-01-29 | Oracle International Corporation | Hybrid binary XML storage model for efficient XML processing |
US20110179085A1 (en) * | 2010-01-20 | 2011-07-21 | Beda Hammerschmidt | Using Node Identifiers In Materialized XML Views And Indexes To Directly Navigate To And Within XML Fragments |
US8566343B2 (en) | 2010-06-02 | 2013-10-22 | Oracle International Corporation | Searching backward to speed up query |
US8447785B2 (en) | 2010-06-02 | 2013-05-21 | Oracle International Corporation | Providing context aware search adaptively |
US9110945B2 (en) | 2010-09-17 | 2015-08-18 | Oracle International Corporation | Support for a parameterized query/view in complex event processing |
US8713049B2 (en) | 2010-09-17 | 2014-04-29 | Oracle International Corporation | Support for a parameterized query/view in complex event processing |
US9189280B2 (en) | 2010-11-18 | 2015-11-17 | Oracle International Corporation | Tracking large numbers of moving objects in an event processing system |
US9756104B2 (en) | 2011-05-06 | 2017-09-05 | Oracle International Corporation | Support for a new insert stream (ISTREAM) operation in complex event processing (CEP) |
US8990416B2 (en) | 2011-05-06 | 2015-03-24 | Oracle International Corporation | Support for a new insert stream (ISTREAM) operation in complex event processing (CEP) |
US9804892B2 (en) | 2011-05-13 | 2017-10-31 | Oracle International Corporation | Tracking large numbers of moving objects in an event processing system |
US9535761B2 (en) | 2011-05-13 | 2017-01-03 | Oracle International Corporation | Tracking large numbers of moving objects in an event processing system |
US9329975B2 (en) | 2011-07-07 | 2016-05-03 | Oracle International Corporation | Continuous query language (CQL) debugger in complex event processing (CEP) |
US10025825B2 (en) | 2012-09-28 | 2018-07-17 | Oracle International Corporation | Configurable data windows for archived relations |
US11093505B2 (en) | 2012-09-28 | 2021-08-17 | Oracle International Corporation | Real-time business event analysis and monitoring |
US11288277B2 (en) | 2012-09-28 | 2022-03-29 | Oracle International Corporation | Operator sharing for continuous queries over archived relations |
US10102250B2 (en) | 2012-09-28 | 2018-10-16 | Oracle International Corporation | Managing continuous queries with archived relations |
US9262479B2 (en) | 2012-09-28 | 2016-02-16 | Oracle International Corporation | Join operations for continuous queries over archived views |
US10042890B2 (en) | 2012-09-28 | 2018-08-07 | Oracle International Corporation | Parameterized continuous query templates |
US9292574B2 (en) | 2012-09-28 | 2016-03-22 | Oracle International Corporation | Tactical query to continuous query conversion |
US9563663B2 (en) | 2012-09-28 | 2017-02-07 | Oracle International Corporation | Fast path evaluation of Boolean predicates |
US9703836B2 (en) | 2012-09-28 | 2017-07-11 | Oracle International Corporation | Tactical query to continuous query conversion |
US9361308B2 (en) | 2012-09-28 | 2016-06-07 | Oracle International Corporation | State initialization algorithm for continuous queries over archived relations |
US9715529B2 (en) | 2012-09-28 | 2017-07-25 | Oracle International Corporation | Hybrid execution of continuous and scheduled queries |
US9990401B2 (en) | 2012-09-28 | 2018-06-05 | Oracle International Corporation | Processing events for continuous queries on archived relations |
US9256646B2 (en) | 2012-09-28 | 2016-02-09 | Oracle International Corporation | Configurable data windows for archived relations |
US9805095B2 (en) | 2012-09-28 | 2017-10-31 | Oracle International Corporation | State initialization for continuous queries over archived views |
US9990402B2 (en) | 2012-09-28 | 2018-06-05 | Oracle International Corporation | Managing continuous queries in the presence of subqueries |
US9852186B2 (en) | 2012-09-28 | 2017-12-26 | Oracle International Corporation | Managing risk with continuous queries |
US9946756B2 (en) | 2012-09-28 | 2018-04-17 | Oracle International Corporation | Mechanism to chain continuous queries |
US9953059B2 (en) | 2012-09-28 | 2018-04-24 | Oracle International Corporation | Generation of archiver queries for continuous queries over archived relations |
US9286352B2 (en) | 2012-09-28 | 2016-03-15 | Oracle International Corporation | Hybrid execution of continuous and scheduled queries |
US10956422B2 (en) | 2012-12-05 | 2021-03-23 | Oracle International Corporation | Integrating event processing with map-reduce |
US10298444B2 (en) | 2013-01-15 | 2019-05-21 | Oracle International Corporation | Variable duration windows on continuous data streams |
US9098587B2 (en) | 2013-01-15 | 2015-08-04 | Oracle International Corporation | Variable duration non-event pattern matching |
US9047249B2 (en) | 2013-02-19 | 2015-06-02 | Oracle International Corporation | Handling faults in a continuous event processing (CEP) system |
US9262258B2 (en) | 2013-02-19 | 2016-02-16 | Oracle International Corporation | Handling faults in a continuous event processing (CEP) system |
US10083210B2 (en) | 2013-02-19 | 2018-09-25 | Oracle International Corporation | Executing continuous event processing (CEP) queries in parallel |
US9390135B2 (en) | 2013-02-19 | 2016-07-12 | Oracle International Corporation | Executing continuous event processing (CEP) queries in parallel |
US9418113B2 (en) | 2013-05-30 | 2016-08-16 | Oracle International Corporation | Value based windows on relations in continuous data streams |
US9934279B2 (en) | 2013-12-05 | 2018-04-03 | Oracle International Corporation | Pattern matching across multiple input data streams |
JP2015158767A (en) * | 2014-02-24 | 2015-09-03 | 富士通株式会社 | Information processing device, data conversion program, and data conversion method |
US9244978B2 (en) | 2014-06-11 | 2016-01-26 | Oracle International Corporation | Custom partitioning of a data stream |
US9712645B2 (en) | 2014-06-26 | 2017-07-18 | Oracle International Corporation | Embedded event processing |
US10120907B2 (en) | 2014-09-24 | 2018-11-06 | Oracle International Corporation | Scaling event processing using distributed flows and map-reduce operations |
US9886486B2 (en) | 2014-09-24 | 2018-02-06 | Oracle International Corporation | Enriching events with dynamically typed big data for event processing |
US10216817B2 (en) | 2015-03-11 | 2019-02-26 | International Business Machines Corporation | Creating XML data from a database |
US9940351B2 (en) * | 2015-03-11 | 2018-04-10 | International Business Machines Corporation | Creating XML data from a database |
US20160267061A1 (en) * | 2015-03-11 | 2016-09-15 | International Business Machines Corporation | Creating xml data from a database |
US9972103B2 (en) | 2015-07-24 | 2018-05-15 | Oracle International Corporation | Visually exploring and analyzing event streams |
Also Published As
Publication number | Publication date |
---|---|
WO2001042881A3 (en) | 2002-01-10 |
AU4521101A (en) | 2001-06-18 |
US7353222B2 (en) | 2008-04-01 |
US20060101320A1 (en) | 2006-05-11 |
WO2001042881A2 (en) | 2001-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7353222B2 (en) | System and method for the storage, indexing and retrieval of XML documents using relational databases | |
US8484210B2 (en) | Representing markup language document data in a searchable format in a database system | |
US7370061B2 (en) | Method for querying XML documents using a weighted navigational index | |
Yoshikawa et al. | XRel: a path-based approach to storage and retrieval of XML documents using relational databases | |
US6721727B2 (en) | XML documents stored as column data | |
US8935267B2 (en) | Apparatus and method for executing different query language queries on tree structured data using pre-computed indices of selective document paths | |
US7412444B2 (en) | Efficient indexing of hierarchical relational database records | |
US8219563B2 (en) | Indexing mechanism for efficient node-aware full-text search over XML | |
US8229932B2 (en) | Storing XML documents efficiently in an RDBMS | |
EP2901318B1 (en) | Evaluating xml full text search | |
US8126932B2 (en) | Indexing strategy with improved DML performance and space usage for node-aware full-text search over XML | |
EP2652643B1 (en) | A hybrid binary xml storage model for efficient xml processing | |
US20080010256A1 (en) | Element query method and system | |
US20040103105A1 (en) | Subtree-structured XML database | |
US8447785B2 (en) | Providing context aware search adaptively | |
US20120047186A1 (en) | Encoding Semi-Structured Data for Efficient Search and Browsing | |
Pluempitiwiriyawej et al. | A classification scheme for semantic and schematic heterogeneities in XML data sources | |
Yang et al. | Managing scientific metadata using XML | |
Li et al. | Representing UML snowflake diagram from integrating XML data using XML schema | |
Noh et al. | A comparison of two approaches to utilizing XML in parametric databases for temporal data | |
Zwol et al. | Using webspaces to model document collections on the web | |
JP2004348485A (en) | Structured document processing method and device, structured document processing program, and storage medium storing structured document processing program | |
Hu et al. | Querying and indexing XML documents | |
El-Sofany et al. | A DOM-based approach of storage and retrieval of XML documents using relational databases | |
Delpratt | Space efficient in-memory representation of XML documents |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: B-BOP ASSOCIATES, INC, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:DODDS, DAVID;KUO, LARRY;SENGUPTA, SOUMITRA;AND OTHERS;REEL/FRAME:011643/0891 Effective date: 20010308 |
|
AS | Assignment |
Owner name: SONIC SOFTWARE CORPORATION, MASSACHUSETTS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:B-BOP ASSOICATES, INC.;REEL/FRAME:013992/0862 Effective date: 20030204 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |