Source: http://www.google.com/patents/US7516121?dq=7,194,691
Timestamp: 2016-02-14 13:15:26
Document Index: 389827395

Matched Legal Cases: ['Application No. 2001290693', 'application No. 2007229358', 'application No. 2007229359', 'application No. 2001290693', 'application No. 2007229358', 'application No. 2007229359', 'application No. 200480011704', 'application No. 200480011704', 'art 1', 'art 2']

Patent US7516121 - Efficient evaluation of queries using translation - Google PatentsSearch Images Maps Play YouTube News Gmail Drive More »Sign inPatentsTechniques are provided for processing a query including receiving the query, where the query specifies certain operations; determining that the query includes a first portion in a first query language and a second portion in a second query language; generating a first in-memory representation for the...http://www.google.com/patents/US7516121?utm_source=gb-gplus-sharePatent US7516121 - Efficient evaluation of queries using translationAdvanced Patent SearchPublication numberUS7516121 B2Publication typeGrantApplication numberUS 10/948,523Publication dateApr 7, 2009Filing dateSep 22, 2004Priority dateJun 23, 2004Fee statusPaidAlso published asUS20050289125Publication number10948523, 948523, US 7516121 B2, US 7516121B2, US-B2-7516121, US7516121 B2, US7516121B2InventorsZhen Hua Liu, Muralidhar Krishnaprasad, Anand Manikutty, James Warner, Hui X. Zhang, Vikas Arora, Susan M. KotsovolosOriginal AssigneeOracle International CorporationExport CitationBiBTeX, EndNote, RefManPatent Citations (112), Non-Patent Citations (81), Referenced by (40), Classifications (17), Legal Events (4) External Links: USPTO, USPTO Assignment, EspacenetEfficient evaluation of queries using translation
US 7516121 B2Abstract
Techniques are provided for processing a query including receiving the query, where the query specifies certain operations; determining that the query includes a first portion in a first query language and a second portion in a second query language; generating a first in-memory representation for the first portion; generating a second in-memory representation for the second portion; generating a third in-memory representation of the query based on the first in-memory representation and the second in-memory representation; and performing the certain operations based on the third in-memory representation.
15. The method of claim 1, wherein the first abstract syntax is an SQL-related abstract syntax and the second abstract syntax is an XQuery-related abstract syntax; wherein the markup language portion comprises an XML if-then-else expression in the second abstract syntax; and wherein the step of generating the fourth in-memory representation comprises generating an SQL case—when expression in the first abstract syntax based on the XML if-then-else expression in the second abstract syntax.
CROSS REFERENCE TO RELATED APPLICATIONS; PRIORITY CLAIM
This application claims benefit of Provisional Application Ser. No. 60/582,706, filed Jun. 23, 2004, entitled “TECHNIQUES FOR PROCESSING XQUERY QUERIES IN A RELATIONAL DATABASE MANAGEMENT SYSTEM,” by Zhen Hua Liu et al, the entire contents of which are incorporated by reference for all purposes as if originally set forth herein, under 35 U.S.C. � 119(e) and is referred to herein as to '706.
This application claims benefit of U.S. Patent Application Ser. No. 60/599,652 entitled “PROCESSING QUERIES AGAINST ONE OR MORE MARKUP LANGUAGE SOURCES,” filed by Zhen Hua Liu et al. on Aug. 5, 2004, the contents of which are herein incorporated by reference for all purposes as if originally set forth herein, under 35 U.S.C. � 119(e) and is referred to herein as to '652.
This application claims benefit of Provisional Application Ser. No. 60/599,319, filed Aug. 6, 2004, entitled “EFFICIENT EVALUATION OF QUERIES USING TRANSLATION,” by Zhen Hua Liu et al, the entire contents of which are incorporated by reference for all purposes as if originally set forth herein, under 35 U.S.C. � 119(e) and is referred to herein as '319.
This application is related to U.S. patent application Ser. No. 10/428,443, entitled “TECHNIQUES FOR RETAINING HIERARCHICAL INFORMATION IN MAPPING BETWEEN XML DOCUMENTS AND RELATIONAL DATA,” filed by Ravi Murthy et alon May 1, 2003, the contents of which are herein incorporated by reference for all purposes as if originally set forth herein, referred to herein as to '443.
This application is related to U.S. patent application Ser. No. 09/948,949, filed together herewith, entitled “APPARATUS AND METHOD FOR MAPPING RELATIONAL DATA AND METADATA TO XML,” naming as inventors Muralidhar Krishnaprasad et al., filed 6 Sep. 2001, the contents of which are herein incorporated by reference for all purposes as if originally set forth herein, referred to herein as to '949.
The present invention relates to query processing. The invention relates more specifically to efficient evaluation of queries using translation.
Queries submitted to the database server must conform to the syntactical rules of a particular query language. One popular query language, known as the Structured Query Language (SQL), provides users a variety of ways to specify information to be retrieved. Another query language based on the Extensible Markup Language (XML) is XML Query Language (XQuery). XML Query language may have multiple syntactic representations. For instance, one of them is a human-readable version and another is an XML representation (XQueryX). XQuery is described in “XQuery 1.0: An XML Query Language.” W3C Working Draft Jul. 23, 2004 at www.w3.org/TR/xquery. XQueryX is described in “XML Syntax for XQuery 1.0 (XQueryX).” W3C Working Draft 19 Dec. 2003 at www.w3.org/TR/xqueryx. Another related technology, XPath, is described in “XML Path Language (XPath) 2.0.” W3C Working Draft 12 Nov. 2003 at www.w3.org/TR/xpath20. XQuery and XQueryX may use XPath for path traversal.
The coprocessor approach has numerous problems. First, the XQuery processor is not aware of any of the underlying techniques for storing XML data. Therefore, the XQuery processor needs fully materialized XML as input. Consequently, the XML input needed by the XQuery processor must be constructed or materialized by the RDBMS. Often the XML input needed for the XQuery is stored in the database and may be “shredded” into one or component XML elements, and those XML elements may be stored in one or more relational or object relational tables. Under these conditions, the process of materializing the XML data is time and resource consuming, and therefore makes the coprocessor approach inefficient.
Techniques for efficient evaluation of queries using translation are described. In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, that the present invention may be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the present invention.
When the database server receives a query, it determines whether any portion of the query is in a query language other than SQL (e.g. XQuery or XQueryX). For each such portion, the database server parses the portion and compiles the portion into an abstract syntax tree (AST) in an abstract syntax related to the non-SQL query language. Such ASTs are referred to herein as “non-SQL ASTs” or as AST related to particular query languages, such as XQuery ASTs. The non-SQL AST is then converted into an AST in an abstract syntax related to SQL. Such ASTs are referred to herein as “SQL ASTs.” This is repeated for each portion of the query that is in a non-SQL query language (e.g. XQuery or XQueryX). Each portion of the query in the SQL is also compiled into an SQL AST. The database server then combines all of the ASTs corresponding to each portion of the query. This combined AST can then be optimized and executed or stored for later execution.
Some RDBMSs and object-relational database systems (ORDBMS) support “XML” or “XMLType” as a native datatype. Using XMLType, users can store XML documents in databases via the use of XML tables or XMLType columns of tables. Furthermore, users can convert their relational data into XMLType views via the use of SQL/XML publishing functions, such as XMLElement, XMLConcat, etc. XQuery can be used in SQL through a function such as XMLQuery, which enables queries on XMLType values. The XMLTable function enables one to convert XML values (possibly from one or more XMLType columns, or values returned from an XQuery) into a virtual relational table. Consider an example where a table called “purchaseOrder” is an XMLType table with each row storing a purchaseOrder XML document instance. Each XML document instance has contents similar to the following:
select xmlquery(‘for $i in/PurchaseOrder where $i/items/lineitem/price>45 return $i/ShippingAddress’ passing value(p) returning content) from purchaserOrder p; Here is an example of converting the XML document instance into relational tables via XMLTable construct:
select xt.name, xt.price from purchaseOrder p, xmltable(‘/PurchaseOrder/items/lineitem’ passing value(p) columns name varchar2(20) path ‘name’, price number path ‘price’) xt; 3.0 System Overview
In step 205, a query is received. The query may be in any appropriate format. For example, the query may be in SQL, XQuery, or XQueryX. The query may also utilize a language for addressing parts of a markup language document, such as XPath. The query may contain one or more “portions”. Each of the portions may be in the different formats than each of the other portions. For example, in the context of FIG. 1, the database server 150 may receive a query that contains both SQL and XQuery portions:
select xmlquery(‘for $i in /PurchaseOrder where $i/items/lineitem/price > 45 return $i/ShippingAddress’ passing value(p) returning content) from purchaserOrder p; where the outer portion of the query is in SQL and the portion of the query inside the xmlquery( . . . ) is in XQuery. The query may also be in a single format.
The AST for the portion of the query in XQuery will be in a particular abstract syntax related to XQuery. In step 225, the XQuery AST for the XQuery portion of the query is converted into an equivalent SQL AST in a particular abstract syntax related to SQL. Each term in the AST is converted in turn. In one embodiment, the elements at the “leaves” or deepest level of the AST are converted from the XQuery-related abstract syntax to the SQL-related abstract syntax. Then the nodes on the next lowest level are converted. The “higher” levels of the AST are processed one level at a time and from the bottom up. Alternatively, one or more of the leaves of the AST are converted and the parent nodes of these leaves are converted once all of their child nodes in the AST are converted. Details of what XQuery statements are converted to which SQL statements are given in the section entitled XQuery Translation and in '706. Once the XQuery AST has been converted into an equivalent SQL AST, then the equivalent SQL AST may later be combined with any other SQL ASTs in step 245 (described below).
Logical expressions (and, or) The ff:not function The WHERE clause of a FLWOR expression Certain types of predicates, such as a[b] Conditional expressions (if) Quantified expressions (some, every) The effective Boolean value returns “false” in the following cases. Otherwise it returns “true”.
i. If the type is number or Boolean—convert the collection to a subquery and add the following subquery expression on top—EXISTS(select * from (select count(*)cnt, sum(value(p))sm from table(xmlsequence(<expr>))x where (x.cnt=1 and x.sm=1) or (x.cnt>1)) ii. For all other types map it to IS NOT NULL (<expr>) in case the <expr> is a non-subquery operand or to EXISTS(<expr>) if expr is an SQL subquery.
Literal Expressions in XQuery are translated to SQL literals. Boolean are mapped as numbers 0 & 1. For example, the expression “1” is mapped to STRTCONS with value “1”. Numeric literals are mapped to SQL literals of type NUMBER and string literals are mapped to SQL literals with type VARCHAR2.
Example rule: Map logical expressions to SQL logical expressions (AND, OR). In case when the logical expression appears as a top-level expression (outside of the WHERE clause or IF clause) then add a CASE Expression to the result. E.g. if the query is the expressions “a<20 and b>30”, map it to CASE WHEN (a<20 and b>30) then 1 else 0.
from TABLE(XMLSEQUENCE( <sql-rhs-expr1> ) as “var1”
TABLE(XMLSEQUENCE( <sql-rhs-expr2> ) as “var2”
Simple FLWOR Clause
select xmlagg(XMLCast(XMLCast(value(“$i”) as number) + 1 as
returning sequence) as “$i”
where XMLCast(value(“$i”) as number) > 1;
FLWOR Clause with XPath Expressions
for $i in doc(“foo.xml”)/PurchaseOrder where $i/PoNo = 21 return <A>{$i}</A> becomes select xmlagg(XMLElement(“A”, value(“$i”))) from table(xmlsequence( extract ( select extract(Res,’/Contents/*’) from resource_view where equals_path(res,’/foo.xml’) = 1), ‘/PurchaseOrder’))) “$i” where XMLCast( OPTXATG(value(“$i”, ‘/PoNo’) as number) = 21 5.1.14.1. Let Clause Handling
for $i in doc(“foo.xml”)/PurchaseOrder//LineItems
let $j := doc(“baditems.xml”)//BadItems
select xmlagg(xmlconcat(“$i”, OPTXATG(“$j”,’/BadItem’)))
(select /*+ NO_MERGE */ value(“$I”) as “$I”,
extract ( select extract(Res,’/Contents/*’)
where equals_path(res,’/baditems.xml’) = 1),
‘//BadItems’))) “x”
) as “$j”
OPTXATG ( select extract(Res,’/Contents/*’)
where equals_path(res,’/foo.xml’) = 1),
‘/PurchaseOrder’),
‘//LineItems))) “$i”
OPTXATG(“$j”,’/ItemNo’))) x
where XMLCast(OPTXATG(“$I”,’/ItemNo’)as number) =
select xmlagg(value(“$i”)
select extract(Res,’/Contents/*’)
extract (select extract(Res,’/Contents/*’)
‘//BadItems’))) “$j”
where XMLCast(OPTXATG(“$i”,’/ItemNo’) as number) =
XMLCast(OPTXATG(“$j”,’/ItemNo’) as number));
for $i in doc(“foo.xml”)/PurchaseOrder//LineItems let $j := count(doc(“baditems.xml”)//BadItems[ItemNo = $i/ItemNo]) where $i/ItemNo > 200 return $j $j is often used in the return clause and not in the WHERE clause—so that the WHERE clause may be evaluated before the LET clause. This query is equivalent to
count(doc(“baditems.xml”)//BadItems[ItemNo = $i/ItemNo]
from table(xmlsequence( <expr1> ) as “var1” ,
table(xmlsequence( <expr2>) as “var2”, . . .
value(“var1”) as “var1”,
value(“var2”) as “var2”, . . .
<expr3> as “var3”
For <var1> in <expr1>, <var2> in <expr2> let <var3> in <expr3> where <cond-not-referencing-var3> return <expr4-refecencing-var3> is mapped to select xmlagg(<expr4-referencing-var3> ) from (select /*+ NO_MERGE */ value(“var1”) as “var1”, value(“var2”) as “var2”, . . . <expr3> as “var3” from table(xmlsequence( <expr1> ) as “var1” , table(xmlsequence( <expr2>) as “var2”, . . . where <cond-referencing-var3> ) 5.1.15. Path Expressions
OPTXATG(OPTXATG($i, ‘PurchaseOrder’), ‘PoNo’).
OPTXATG(OPTXATG(XMLElement(“A”, XMLElement(“B”, 33)),
‘A’), ‘B’)
The XATG that extracts A and the XMLElement( ) creating A are collapsed and the result is XMLElement(“B”, 333) which corresponds to the result <B>33</B>.
XMLCast( OPTXATG( OPTXATG ( $i , ‘PurchaseOrder’), ‘PoNo’)
‘PurchaseOrder’), ‘PoNo’)))) x
$i/PurchaseOrder[PoNo eq 21] gets mapped to select OPTXATG( $i, ‘PurchaseOrder’) from dual where XMLCast( OPTXATG( OPTXATG ( $i , ‘PurchaseOrder’), ‘PoNo’) as number) = 21 and in the case of general comparison with no schema inputs,
$i/PurchaseOrder[PoNo = 21] gets mapped to select XMLAGG(value(v)) from table(xmlsequence(OPTXATG($I, ‘PurchaseOrder’)) v where exists( select null from table(xmlsequence(OPTXATG( value($v), ‘PoNo’))) x where XMLCast(value(x) as number) = 21); 5.1.15.2. Path Steps with Kind Test
a) If the step is a name test, then map it to the OPTXATG operator. <expr> <step> <QName-or-wildcard> maps to OPTXATG(<expr>, <step>, <localname>, <namespace>) b) If the step is a kind test, then map it to the OPTXATG operator with type information <expr> <step> <type> is mapped to OPTXATG(<expr>, <step>, <type>) c) If the step is a filter step, then normalize the expression as follows—<expr> <step> <filterexpr> is normalized to (for $m in <expr> return <filterexpr> with the context node in the filter expr changed to $m. This is then rewritten to SQL. For example, $i/PurchaseOrder/(for $j in LineItems return count($j/Orders)) is normalized into for $m in $i/PurchaseOrder return (for $j in $m/LineItems return count($j/Orders)) and then mapped to SQL.
for $I in ora:view(“po_TAB”)//PurchaseOrder where some $j in $i//LineItem satisfies for $k in ora:view(“bad_items”) where $k//ItemNo = $j/ItemNo return $k, where “ora:view( )” is an XQuery function that returns the data from a relation table in XML form, may be mapped to
select value(“$I”) from “po_TAB” “$I” where exists( select( select “$k” from (select value(p) “$k” from “bad_items” p) where OPTXATG(“$k”, ’//ItemNo’) = OPTXATG(“$j”, ’/ItemNo’) ) from ( select value(“$j”) as “$j” from table(xmlsequence(OPTXATG(value(“$I”), ‘//LineItem’))) “$j” ) ) 5.1.18. Direct Element Constructor Expression
<A> { “21” } </A> is mapped to XMLelement(NAME “A”, ‘21’) and
<A b=”21”>22</A> is mapped to XMLElement(NAME “A”,
XMLAttributes(21 as “b”), ‘22’)
element {“a” } { “21” }
XMLElement(NAME EXPR ‘a’, ‘21’)
element {“a” } {
Attribute b { “21” }
XMLElement(NAME EXPR ‘a’, XMLAttributes(‘21’ as “a”), ‘22’)
Attribute “a” { “21” } </A>
XMLAttribute(21 as “a”)
for $i in doc(“Po.xml”)
equals_path(res, ‘Po.xml’) = 1) x
‘PurchaseOrder’), ‘LineItems’))) z
Since XQuery allows overloading of arithmetic and comparison function to handle a variety of datatypes, the mapping to an SQL operator may vary depending on the run-time input types of the operands. XQuery operators utilizing such overloading are called “polymorphic operators.”
declare $b xs:boolean external; (if ($b) then 3.3 else xs:date(“2001-08-25”))+(if ($b) then 44 else xdt:yearMonthDuration(“P5Y0M”) Depending on the value at run time for the external variable $b, the addition in XQuery can be translated to decimal addition (in this case, it adds decimal value 3.3 and 44) or can be translated to date addition with yearMonthDuration (in this case, it adds five years and zero months to the date ‘2001-08-25’ which yields the date ‘2006-08-25’).
“”) is true; Collation support (NLS) needed
xmlagg(xmlelement(“ROW”, xmlforest(col1,
relational tables and no xmlelement(“ROW”)
for $i in doc(“/public/purchaseorder.xml”)
select XMLAgg(XMLElement(“PO”, XMLAttributes(
XMLCast (OPTXATG( OPTXATG(“$i”.res, ’/
PurchaseOrder’),’/@Id’) as number)
as “pono”)))
where equals_path(res,’/public/purchaseorder.xml’) = 1)
“$i” where XMLCast(OPTXATG(“$i”.res, ’/PurchaseOrder/
@Id’) as number) = 2001;
XMLCast(OPTXATG(OPTXATG(res, ’/
PurchaseOrder’), ‘@Id’) as number)
where equals_path(res, ’/public/purchaseorder.xml’) = 1
and XMLCast(OPTXATG(res, ’/PurchaseOrder/@Id’)
for $i in collection(“/public”)
XMLCast(OPTXATG(“$i”.xmlv, ’/PurchaseOrder/
@Id’) as number) as “pono”)))
where under_path(res, ’/public’) = 1) “$i”
where XMLCast(OPTXATG(“$i”.xmlv, ’/PurchaseOrder/@Id’) as
for $emp in ora:view(“EMP”), $dept in ora:view(“DEPT”) where $emp/ROW/DEPTNO = $dept/ROW/DEPTNO return ($emp/ROW/ENAME, $dept/ROW/DNAME) becomes select XMLAgg( XMLConcat(XMLCast(OPTXATG(“$emp”.xmlv, ’/ ROW/ENAME’) as number), XMLCast(OPTXATG(“$dept”.xmlv, ’/ ROW/DNAME’) as number))) from (select XMLElement(“ROW”,XMLForest(empno, ename, sal, deptno)) as xmlv from emp ) “$emp”, (select XMLElement(“ROW”,XMLForest(deptno, dname) as xmlv from dept) “$dept” where XMLCast(OPTXATG(“$emp”.xmlv, ’/ROW/DEPTNO’) as number) = XMLCast(OPTXATG(“$dept”.xmlv, ’/ ROW/DEPTNO) as number); which gets rewritten into select XMLAgg(XMLConcat(e.ename, d.dname)) from emp e, dept d where e.deptno =d.deptno; 6.0 Example Alternatives
Patent CitationsCited PatentFiling datePublication dateApplicantTitleUS5404513Jun 17, 1993Apr 4, 1995Dimensional Insight, Inc.Method for building a database with multi-dimensional search tree nodesUS5680614May 20, 1993Oct 21, 1997Nec CorporationRelational database management systemUS5878410Sep 13, 1996Mar 2, 1999Microsoft CorporationFile system sort order indexesUS5974407Sep 29, 1997Oct 26, 1999Sacks; Jerome E.Method and apparatus for implementing a hierarchical database management system (HDBMS) using a relational database management system (RDBMS) as the implementing apparatusUS5999941Nov 25, 1997Dec 7, 1999Micron Electronics, Inc.Database access using active server pagesUS6012067Mar 2, 1998Jan 4, 2000Sarkar; Shyam SundarMethod and apparatus for storing and manipulating objects in a plurality of relational data managers on the webUS6055544Mar 16, 1999Apr 25, 2000Inso Providence CorporationGeneration of chunks of a long document for an electronic book systemUS6128610Aug 25, 1998Oct 3, 2000Oracle CorporationIndex with entries that store the key of a row and all non-key values of the rowUS6141655Sep 23, 1997Oct 31, 2000At&T CorpMethod and apparatus for optimizing and structuring data by designing a cube forest data structure for hierarchically split cube forest templateUS6199195Jul 8, 1999Mar 6, 2001Science Application International CorporationAutomatically generated objects within extensible object frameworks and links to enterprise resourcesUS6208993Jul 22, 1999Mar 27, 2001Ori Software Development Ltd.Method for organizing directoriesUS6236988Sep 3, 1998May 22, 2001International Business Machines Corp.Data retrieval systemUS6240407Dec 17, 1998May 29, 2001International Business Machines Corp.Method and apparatus for creating an index in a database systemUS6253195 *Oct 20, 1998Jun 26, 2001Microsoft CorporationOptimized query treeUS6263332Aug 14, 1998Jul 17, 2001Vignette CorporationSystem and method for query processing of structured documentsUS6279007Nov 30, 1998Aug 21, 2001Microsoft CorporationArchitecture for managing query friendly hierarchical valuesUS6343287May 19, 1999Jan 29, 2002Sun Microsystems, Inc.External data store link for a profile serviceUS6356920Mar 8, 1999Mar 12, 2002X-Aware, IncDynamic, hierarchical data exchange systemUS6366934Jun 2, 1999Apr 2, 2002International Business Machines CorporationMethod and apparatus for querying structured documents using a database extenderUS6370537Dec 30, 1999Apr 9, 2002Altoweb, Inc.System and method for the manipulation and display of structured dataUS6418448Dec 6, 1999Jul 9, 2002Shyam Sundar SarkarMethod and apparatus for processing markup language specifications for data and metadata used inside multiple related internet documents to navigate, query and manipulate information from a plurality of object relational databases over the webUS6438540Jun 19, 2001Aug 20, 2002Vignette CorporationAutomatic query and transformative processUS6449620Mar 2, 2000Sep 10, 2002Nimble Technology, Inc.Method and apparatus for generating information pages using semi-structured data stored in a structured mannerUS6470344Aug 27, 1999Oct 22, 2002Oracle CorporationBuffering a hierarchical index of multi-dimensional dataUS6487546Aug 27, 1998Nov 26, 2002Oracle CorporationApparatus and method for aggregate indexesUS6496842May 28, 1999Dec 17, 2002Survol Interactive TechnologiesNavigating heirarchically organized informationUS6510434Dec 29, 1999Jan 21, 2003Bellsouth Intellectual Property CorporationSystem and method for retrieving information from a database using an index of XML tags and metafilesUS6574655Jun 29, 1999Jun 3, 2003Thomson Licensing SaAssociative management of multimedia assets and associated resources using multi-domain agent-based communication between heterogeneous peersUS6584459Jun 2, 1999Jun 24, 2003International Business Machines CorporationDatabase extender for storing, querying, and retrieving structured documentsUS6604100Feb 8, 2001Aug 5, 2003At&T Corp.Method for converting relational data into a structured documentUS6636845Jan 31, 2002Oct 21, 2003International Business Machines CorporationGenerating one or more XML documents from a single SQL queryUS6643633Jan 31, 2002Nov 4, 2003International Business Machines CorporationStoring fragmented XML data into a relational database by decomposing XML documents with application specific mappingsUS6654734Aug 30, 2000Nov 25, 2003International Business Machines CorporationSystem and method for query processing and optimization for XML repositoriesUS6684204Jun 19, 2000Jan 27, 2004International Business Machines CorporationMethod for conducting a search on a network which includes documents having a plurality of tagsUS6708186Sep 28, 2000Mar 16, 2004Oracle International CorporationAggregating and manipulating dictionary metadata in a database systemUS6721727Nov 29, 2000Apr 13, 2004International Business Machines CorporationXML documents stored as column dataUS6725212Aug 31, 2001Apr 20, 2004International Business Machines CorporationPlatform-independent method and system for graphically presenting the evaluation of a query in a database management systemUS6772412Mar 16, 2001Aug 3, 2004Omron CorporationData processing device equipped with a thread switching circuitUS6782380Apr 14, 2000Aug 24, 2004David Victor ThedeMethod and system for indexing and searching contents of extensible mark-up language (XML) documentsUS6785673Dec 28, 2001Aug 31, 2004At&T Corp.Method for converting relational data into XMLUS6836778May 1, 2003Dec 28, 2004Oracle International CorporationTechniques for changing XML content in a relational databaseUS6871204Sep 6, 2001Mar 22, 2005Oracle International CorporationApparatus and method for mapping relational data and metadata to XMLUS6918082Dec 17, 1998Jul 12, 2005Jeffrey M. GrossElectronic document proofing systemUS7028028May 17, 2001Apr 11, 2006Enosys Markets,Inc.System for querying markup language data stored in a relational database according to markup language schemaUS7031956Oct 9, 2001Apr 18, 2006Verizon Laboratories Inc.System and method for synchronizing and/or updating an existing relational database with supplemental XML dataUS7043716 *Jun 13, 2001May 9, 2006Arius Software CorporationSystem and method for multiple level architecture by use of abstract application notationUS7062507Feb 24, 2003Jun 13, 2006The Boeing CompanyIndexing profile for efficient and scalable XML based publish and subscribe systemUS7072896Feb 14, 2001Jul 4, 2006Verizon Laboratories Inc.System and method for automatic loading of an XML document defined by a document-type definition into a relational database including the generation of a relational schema thereforUS7124137Dec 19, 2002Oct 17, 2006International Business Machines CorporationMethod, system, and program for optimizing processing of nested functionsUS7139746May 5, 2003Nov 21, 2006Samsung Electronics Co., Ltd.Extended markup language (XML) indexing method for processing regular path expression queries in a relational database and a data structure thereofUS7181438May 30, 2000Feb 20, 2007Alberti Anemometer, LlcDatabase access systemUS20010037345Mar 19, 2001Nov 1, 2001International Business Machines CorporationTagging XML query results over relational DBMSsUS20020015042Nov 29, 2000Feb 7, 2002Robotham John S.Visual content browsing using rasterized representationsUS20020035606May 18, 2001Mar 21, 2002Kenton Stephen J.Method and system for straight through processingUS20020038358Aug 8, 2001Mar 28, 2002Sweatt Millard E.Method and system for remote television replay controlUS20020054090Aug 30, 2001May 9, 2002Silva Juliana FreireMethod and apparatus for creating and providing personalized access to web content and services from terminals having diverse capabilitiesUS20020056025Mar 1, 2001May 9, 2002Qiu Chaoxin C.Systems and methods for management of memoryUS20020073019Sep 22, 1997Jun 13, 2002David W. DeatonSystem, method, and database for processing transactionsUS20020087510Sep 20, 2001Jul 4, 2002Weinberg Paul N.Method and apparatus for structuring, maintaining, and using families of dataUS20020100027 *Jul 24, 2001Jul 25, 2002International Business Machines CorporationMethod of externalizing relational and ASN.1-formatted data into XML formatUS20020116371Dec 5, 2000Aug 22, 2002David DoddsSystem and method for the storage, indexing and retrieval of XML documents using relation databasesUS20020116457Feb 21, 2002Aug 22, 2002John EshlemanSystems and methods for managing distributed database resourcesUS20020120685Apr 10, 2002Aug 29, 2002Alok SrivastavaSystem for dynamically invoking remote network services using service descriptions stored in a service registryUS20020123993Nov 29, 2000Sep 5, 2002Chau Hoang K.XML document processingUS20020124100Apr 27, 2000Sep 5, 2002Jeffrey B AdamsMethod and apparatus for access to, and delivery of, multimedia informationUS20020133484Jan 31, 2002Sep 19, 2002International Business Machines CorporationStoring fragmented XML data into a relational database by decomposing XML documents with application specific mappingsUS20020156772Jan 31, 2002Oct 24, 2002International Business MachinesGenerating one or more XML documents from a single SQL queryUS20020169788Feb 14, 2001Nov 14, 2002Wang-Chien LeeSystem and method for automatic loading of an XML document defined by a document-type definition into a relational database including the generation of a relational schema thereforUS20020184401Oct 22, 2001Dec 5, 2002Kadel Richard WilliamExtensible information systemUS20020198874Jul 26, 2002Dec 26, 2002Nasr Roger I.Automatic query and transformative processUS20030004937Sep 13, 2001Jan 2, 2003Jukka-Pekka SalmenkaitaMethod and business process to maintain privacy in distributed recommendation systemsUS20030009361Jan 25, 2001Jan 9, 2003Hancock Brian D.Method and system for interfacing with a shipping serviceUS20030014397Jan 31, 2002Jan 16, 2003International Business Machines CorporationGenerating one or more XML documents from a relational database using XPath data modelUS20030028563Jun 26, 2001Feb 6, 2003William StutzMethods and apparatus for extendible information aggregation and presentationUS20030033285Sep 27, 2002Feb 13, 2003Neema JalaliMechanism to efficiently index structured data that provides hierarchical access in a relational database systemUS20030065659Sep 27, 2002Apr 3, 2003Oracle CorporationProviding a consistent hierarchical abstraction of relational dataUS20030101194Nov 1, 2001May 29, 2003Michael RysSystem and method for loading hierarchical data into relational database systemsUS20030140308Sep 27, 2002Jul 24, 2003Ravi MurthyMechanism for mapping XML schemas to object-relational database systemsUS20030154204Jan 14, 2003Aug 14, 2003Kathy Chen-WrightSystem and method for a hierarchical database management system for educational training and competency testing simulationsUS20030158897Nov 30, 2000Aug 21, 2003Viryanet Ltd.Networked platform for creating and supporting communitiesUS20030182624Sep 19, 2002Sep 25, 2003Openwave Systems Inc.Method and apparatus for developing web services using standard logical interfaces to support multiple markup languagesUS20030200214 *Apr 14, 2003Oct 23, 2003Doole Douglas J.Detection and prevention of writing conflicts within nested query statementsUS20030212662May 5, 2003Nov 13, 2003Samsung Electronics Co., Ltd.Extended markup language (XML) indexing method for processing regular path expression queries in a relational database and a data structure thereofUS20030233618Jun 16, 2003Dec 18, 2003Canon Kabushiki KaishaIndexing and querying of structured documentsUS20040006563Jun 26, 2002Jan 8, 2004Arthur ZwiegincewManipulating schematized data in a databaseUS20040015783 *Jun 20, 2003Jan 22, 2004Canon Kabushiki KaishaMethods for interactively defining transforms and for generating queries by manipulating existing query dataUS20040043758Aug 29, 2002Mar 4, 2004Nokia CorporationSystem and method for providing context sensitive recommendations to digital servicesUS20040064463Sep 30, 2002Apr 1, 2004Rao Raghavendra J.Memory-efficient metadata organization in a storage arrayUS20040064466May 1, 2003Apr 1, 2004Oracle International CorporationTechniques for rewriting XML queries directed to relational database constructsUS20040088415Nov 26, 2002May 6, 2004Oracle International CorporationTechniques for scalably accessing data in an arbitrarily large document by a device with limited resourcesUS20040143581 *Jan 15, 2003Jul 22, 2004Bohannon Philip L.Cost-based storage of extensible markup language (XML) dataUS20040148278Mar 28, 2003Jul 29, 2004Amir MiloSystem and method for providing content warehouseUS20040167904 *Feb 20, 2003Aug 26, 2004Ji-Rong WenSemi-structured data storage schema selectionUS20040176958Feb 4, 2002Sep 9, 2004Jukka-Pekka SalmenkaitaSystem and method for multimodal short-cuts to digital sevicesUS20040193575 *Mar 25, 2003Sep 30, 2004Chia-Hsun ChenPath expressions and SQL select statement in object oriented languageUS20040199524Jul 17, 2003Oct 7, 2004Michael RysSystems and methods for transforming query results into hierarchical informationUS20040215600Oct 11, 2002Oct 28, 2004International Business Machines CorporationFile system with access and retrieval of XML documentsUS20040220912May 1, 2003Nov 4, 2004Oracle International CorporationTechniques for changing xml content in a relational databaseUS20040220927May 1, 2003Nov 4, 2004Oracle International CorporationTechniques for retaining hierarchical information in mapping between XML documents and relational dataUS20040221226Apr 30, 2003Nov 4, 2004Oracle International CorporationMethod and mechanism for processing queries for XML documents using an indexUS20040225680May 8, 2003Nov 11, 2004Kim CameronDeclarative rules for metadirectoryUS20040230667Oct 22, 2003Nov 18, 2004Wookey Michael J.Loosely coupled intellectual capital processing engineUS20040260691 *Jun 23, 2003Dec 23, 2004Desai Arpan A.Common query runtime system and application programming interfaceUS20040267719Jun 27, 2003Dec 30, 2004Microsoft CorporationSystem and method for managed database query pre-optimizationUS20040267760 *Jun 23, 2003Dec 30, 2004Brundage Michael L.Query intermediate language method and systemUS20050004892 *Jun 23, 2003Jan 6, 2005Brundage Michael L.Query optimizer system and methodUS20050010896Jul 7, 2003Jan 13, 2005International Business Machines CorporationUniversal format transformation between relational database management systems and extensible markup language using XML relational transformationUS20050022115 *May 28, 2002Jan 27, 2005Roberts BaumgartnerVisual and interactive wrapper generation, automated information extraction from web pages, and translation into xmlUS20050044078Sep 8, 2004Feb 24, 2005Overture Services, Inc.Technique for processing data in a networkUS20050091188Oct 24, 2003Apr 28, 2005MicrosoftIndexing XML datatype content system and methodUS20050097084Oct 31, 2003May 5, 2005Balmin Andrey L.XPath containment for index and materialized view matchingUS20050160076 *Jun 25, 2004Jul 21, 2005Fujitsu LimitedMethod and apparatus for referring to database integration, and computer product* Cited by examinerNon-Patent CitationsReference1"A Performance Evaluation of Storing XML Data in Relational Database Management Systems"-Latifur Khan and Yan Rao-ACM-2001 (pp. 31-38).2"From XML Schema to Relations: A Cost-Based Approach to XML Storage"-Bell Laboratories: Philip Bohannon, Juliana Freire, Prasan Roy and Jerome Simeon-IEEE-2002-Proceedings of the 18th International Conference on Data Engineering (ICDE '02), pp. 1-28.3"Notice of Allowance and Fee Due" received in U.S. Appl. No. 10/944,170 dated Apr. 7, 2008, 8 pages.4"Oracle 9i Project XDB"-The XML Database-Oracle-2001 (pp. 1-18).5"Oracle8i-The XML Enabled Data Management System"-Oracle Corporation: Sandeepan Banerjee, Vishu Krishnamurthy, Muralidhar Krishnaprasad and Ravi Murthy-Mar. 2000, IEEE, pp. 561-568.6"SRQL: Sorted Relational Query Language"-Ragu Ramakrishnan, Donko Donjerkovic, Arvind Ranganathan, Kevin S. Beyer and Muralidhar Krishnaprasad-Jul. 1-3, 1998, IEEE, pp. 84-95.7Amended Claims (50277-2177), App. No. 01 970 715.7, 13 pages.8Australian Application No. 2001290693-current claims, 17 pgs.9Australian Government, "Examiner's first report on patent application No. 2007229358", received Mar. 5, 2008, 2 pages.10Australian Government, "Examiner's first report on patent application No. 2007229359", received Mar. 5, 2008, 2 pages.11Australian Office Action; Examiner's first report on patent application No. 2001290693, dated Jun. 27, 2006, 4 pgs.12Bourret, R et al., "A Generic load/extract utility for data transfer between XML documents and relational databases", IEEE Jun. 2000, 11 pages.13Chen, Cindy Xinmin, et al., "XML Queries SQL," Proceedings of the First International Conference on Web-Age Information Management, ISBN: 3-540-67627-9, 8 pages.14Chen, Ruey-Shun et al., "Developing an XML framework for metadata system", Trinity College Dublin, Proc. of the 1st Inter. Sympo. on Information and Communications, pp. 267-272.15Cheng, Josephine, et al., "IBM XML Extender An End to End solution for storing and retrieving XML Documents", IBM Silicon Valley, Copyright IEEE, Feb. 2000, 11 pages.16Cheng, Josephine, et al., "XML and DB2," 16th International Conference on Data Engineering, May 2000, 5 pages.17Choi, Byron et al., "The XQuery Formal Semantics: A Foundation for Implementation Optimization," May 31, 2002, IEEE XP-002353605, 15 pages.18Claims as filed with the application, PCT/US2005/021259, 15 pages.19Claims dated Apr. 25, 2006, PCT/US2005/021259, 8 pages.20Claims, patent application No. 2007229358, 8 pages.21Claims, patent application No. 2007229359, 8 pages.22Claims, PCT/US2005/021259, dated Nov. 30, 2006, 8 pages (attached).23Cooper, et al., "A Fast Index for Semistructured Data," Proceedings of the International Conference on Very Large Data Bases, 2001, pp. 341-350, XP002303292.24Current claims in China for foreign patent application No. 200480011704.3 (4 pgs).25Current claims in PCT/US02/30783, pp. 1-8.26Current claims in PCT/US03/35551, pp. 1-4.27Current Claims Patent App. 2001290693 (50277-2175), 7 pages.28Damiani, Ernesto, et al., "Design and Implementation of an access control processor for XML documents", Computer Networks 33 (2000), Jun. 2000, 17 pages.29Damiani, Ernesto, et al., "Securing XML Documents", LNCS 1777, Mar. 2000, 15 pages.30Daniele Braga et al., "A Graphical Environment to Query XML Data with Query," Proceedings of the Fourth International Conference on Web Information Systems Engineering (WISE '03), 2003, IEEE, 10 pages.31Dayen, I., "Storing XML in Relational Databases", XML.com, XP-002275971(1998-2004), pp. 1-13.32European Patent Office, "Communication Pursuant to Article 96(2) EPC," App. No. 01 970 715.7 (50277-2177), sated Jul. 19, 2006, 8 pages.33Florescu, Daniela et al., "A Performance Evaluation of Alternative Mapping Schemes for Storing XML Data In A Relational Database," Inria Rocquencourt P Project Rodin-Rapport de Recherche, May 1999, pp. 1-31.34Funderbunk, J. et al., "XML programming with SQL/XML and XQuery", IBM Systems Journal, XP-002295973 (2002), pp. 642-665.35Gennick, Jonathan, "SQL in, XML out", May/Jun. 2003, Oracle Magazine, 5 pages.36Hansrudi Noser, et al., "Dynamic 3D Visualization of Database-Defined Tree Structures on the WWW by Using Rewriting Systems," 2000, IEEE, XP-002262516, pp. 247-254.37Hierarchical Queries, XP-002295972, pp. 8-3 to 8-7.38International Preliminary Examination Report, Application No. PCT/US02/30783, Apr. 1, 2004, 15 pages.39International Preliminary Examination Report, Application No. PCT/US03/35551, Oct. 8, 2004, pp. 1-17.40International Preliminary Examining Authority, "Notification Concerning Informal Communications with the Applicant," PCT/US2005/021259, dated May 11, 2006, 5 pages.41International Preliminary Examining Authority, "Notification of Transmittal of the International Preliminary Report on Patentability," PCT/US2005/011763, received May 15, 2006, 10 pages (including 3 pages of claims).42International Preliminary Examining Authority, "Notification of Transmittal of the International Preliminary Report on Patentability," PCT/US2005/021259, dated Feb. 2, 2007, 9 pages.43International Searching Authority, "Notification of Transmittal of the International Search Report and the Written Opinion of the International Authority, or the Declaration," Nov. 2, 2004, PCT/US2004/010018, 14 pages.44International Searching Authority, "Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration," PCT/US2005/021259, dated Nov. 24, 2005, 13 pages.45International Searching Authority,"Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration," PCT/US2005/011763, Received Aug. 3, 2005, 10 pages.46IP Australia, "Examiner's Report No. 2,"Patent App. 2001290693, received Mar. 8, 2007, 2 pages.47Jayavel Shanmugasundaram, et al., "Querying XML Views of Relational Data," Proceedings of the 27th Very Large Databases Conference, Rome, Italy, Sep. 2001, pp. 261-270.48Jim Melton, "ISO-ANSI Working Draft, XML-Related Specifications (SQL/XML)," WG3: DRS-020, H2-2002-365, Aug. 2002, 154 pages.49Josephine Cheng, et al., "IBM DB2 XML Extender, An end-to-end solution for storing and retrieving XML documents.," IEEE, ICDE '00 Conference, San Diego, Feb. 2000, 128 pages.50Kang, Ji-Hoon et al., "An XQuery Engine for Digital Library Systems that support XML data," Proceedings of the 2004 International Symposium on Application and the Internet Workshops, IEEE XP-0010684128, 5 pages.51Katz, Howard et al., "Integrating XQuery and Relational Database Systems," Chapter 7-XQuery from the Experts: A Guide to the W3C XML Query Language, Addison Wesley Professional, Aug. 22, 2003, ISBM 978-0-321-18060-5, pp. 353-391.52Lawrence et al. "Integrating Relational Database Schemas Using a Standardized Dictionary"-2001-ACM (pp. 225-230).53Manolescu, Dragos, Review of "Metadata solutions: using metamodels, repositories, XML, and enterprise portals to generate information on demand by Adrienne Tannenbaum", Mar. 2003, ACM Press, vol. 38, Issue 2, p. 38.54McHugh, Jason et al., "Query Optimization for XML", XP-002333353, Proceedings of the 25th VLDB Conference (1999) pp. 315-326.55McHugh, Jason, et al. "Indexing Semistructured Data," Stanford Science Department, 1998, XP-002248313, pp. 1-21.56Mi-Ok Chae, et al., "Design and Implementation of an Object-Oriented Multimedia DBMS Tightly Coupled with Information Retrieval Functions," Proc. 17th IASTED International Conference on Applied Informatics, Feb. 15-18, 1999, abstract.57Murthy, Ravi et al., "XML Schemas in Oracle XML DB," Proceedings of the 29th VLDB Conference, 2003, IEEE XP-002353604, pp. 1009-1018.58Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration received from International application No. PCT/US2005/011762.59Office Action from China for foreign patent application No. 200480011704.3 dated Feb. 29, 2008 (6 pgs).60Oracle 9I-XML Database Developer's Guide-Oracle, XML DB, Release 2(9.2), Part No. A96620-02, Part IV Chapter 10, 10-1~10-21, Shelley Higgins (24 pgs).61Oracle Corporation, "Oracle9i XML Database Developer's Guide-Oracle XML DB," Release 2 (9.2), Mar. 2002, Part No. A96620-1, pp. 10-1-10-54.62PCT/US2004/010018-current claims.63Pending claims from International application No. PCT/US2005/011762.64Peng, Feng et al., "XPath queries on streaming data", 2003, ACM Press, pp. 431-442.65R. Bourret, et al., "A Generic Load/Extract Utility For Data Transfer Between XML Documents and Relational Databases," Proc. Second International Workshop on Advanced Issues of E-Commerce and Web-Based Information Systems, IEEE Computing Society, Jun. 8-9, 2000, pp. 134-143.66Rollman, Rich, "SQL Server 2000 XML Enhancements", Microsoft Corp., Powerpoint Presentation at Microsoft TechEd, Jun. 2000, 42 pages.67Rys, Michael et al., "Integrating XQuery and Relational Database Systems," Chapter 7-XQuery from the Experts: A Guide to the W3C XML Query Language, Addison Wesley Professional, Aug. 22, 2003, ISBN 978-0-321-18060-5, pp. 353-391.68Schmidt et al.-"Efficient Relational Storage and Retrieval of XML Documents"-CWI, The Netherlands (pp. 1-6).69Scott Vorthmann, et al., "Beyond Schemas, Schema Adjuncts and the Outside World," Markup Languages, Online!, vol. 2, No. 3, Jun. 2000, pp. 1-8.70Sushil Jajodia, et al., "Toward a Multilevel Secure Relational Data Model," ACM, 1991, 8393 SIGMOD Record, Jun. 20, 1991, No. 2, New York, US, XP 000364619, pp. 50-59.71Vion-Dury, Jean-Yves, "XPath on left and right sides of rules: toward compact XML tree rewriting through node patterns", 2003, ACM Press, pp. 19-25.72W3C, "XML Path Langauge (XPath) 2.0," W3C Recommendation, Working Draft, Oct. 29, 2004, retrieved from the internet:<http://www.w3.org/TR/2004/WD-xpath20-20041029>, retrieved on Apr. 14, 2005, pp. 1-111.73W3C, "XML Schema Part 1: Structures," W3C Recommendation, May 2, 2001, retrieved from the internet:<http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/>, retrieved on Apr. 14, 2005, pp. 1-186.74W3C, "XML Schema Part 2: Datatypes," W3C Recommendation, May 2, 2001, retrieved from the internet:<http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/>, retrieved on Apr. 14, 2005, pp. 1-138.75W3C, "XML Syntax for XQuery 1.0 (XQueryX)," W3C Recommendation, Working Draft, Dec. 19, 2003, retrieved from the internet:<http://www.w3.org/TR/2003/WD-xquery-20031219>, retrieved on Apr. 14, 2005, pp. 1-55.76W3C, "XQuery 1.0: An XML Query Language," W3C Recommendation, Working Draft, Oct. 29, 2004, retrieved from the internet:<http://www.w3.org/TR/2004/WD-xquery-20041029>, retrieved on Apr. 14, 2005, pp. 1-189.77Written Opinion, Application No. PCT/US03/35551, Nov. 10, 2004, 6 pages.78Yoshikawa, Masatoshi et al., "XRel: A Path-Based Approach to Storage and Retrieval of XML Documents Using Relational Databases", XP-001143686, ACM Transactions on Internet Technology (2001), pp. 110-141.79Zemke, Fred, "XMLQuery," Change Proposal, ISO/IEC JTC1/SC32 WG3:SIA-nnn ANSI NCITS H2-2004-02lrl, Mar. 14, 2004, 29 pages.80Zhang, Hui et al., "XQuery rewriting at the relational algebra level," Computer Systems Science and Engineering, vol. 18, No. 5, Sep. 2003, IEEE XP-009056809, pp. 241-262.81Zhang, Xin et al., "Honey, I Shrunk the XQuery?-An XML Algebra Optimization Approach," Submission for WIDM'02, IEEE XP-002316448, 14 pages.Referenced byCiting PatentFiling datePublication dateApplicantTitleUS7672925 *Dec 28, 2006Mar 2, 2010Sybase, Inc.Accelerating queries using temporary enumeration representationUS7698260 *Mar 9, 2007Apr 13, 2010International Business Machines CorporationApparatus and method for handling a LET bindingUS7698295Mar 9, 2007Apr 13, 2010International Business Machines CorporationMethod and apparatus for handling a LET bindingUS7870167 *Nov 9, 2007Jan 11, 2011Oracle America, Inc.Implementing event processorsUS8032822 *Jul 28, 2006Oct 4, 2011Intuit Inc.Method and system for explaining dependencies on a documentUS8112385 *Jun 23, 2006Feb 7, 2012International Business Machines CorporationReady to render business intelligence result setsUS8145859Mar 2, 2009Mar 27, 2012Oracle International CorporationMethod and system for spilling from a queue to a persistent storeUS8321450Jul 21, 2009Nov 27, 2012Oracle International CorporationStandardized database connectivity support for an event processing server in an embedded contextUS8352517Mar 2, 2009Jan 8, 2013Oracle International CorporationInfrastructure for spilling pages to a persistent storeUS8386466Aug 3, 2009Feb 26, 2013Oracle International CorporationLog visualization tool for a data stream processing serverUS8387076Jul 21, 2009Feb 26, 2013Oracle International CorporationStandardized database connectivity support for an event processing serverUS8447744Nov 30, 2010May 21, 2013Oracle International CorporationExtensibility platform using data cartridgesUS8498956Aug 26, 2009Jul 30, 2013Oracle International CorporationTechniques for matching a certain class of regular expression-based patterns in data streamsUS8527458Aug 3, 2009Sep 3, 2013Oracle International CorporationLogging framework for a data stream processing serverUS8589436Aug 26, 2009Nov 19, 2013Oracle International CorporationTechniques for performing regular expression-based pattern matching in data streamsUS8676841Aug 26, 2009Mar 18, 2014Oracle International CorporationDetection of recurring non-occurrences of events using pattern matchingUS8713049Jul 28, 2011Apr 29, 2014Oracle International CorporationSupport for a parameterized query/view in complex event processingUS8959106Apr 19, 2011Feb 17, 2015Oracle International CorporationClass loading using java data cartridgesUS8990416May 6, 2011Mar 24, 2015Oracle International CorporationSupport for a new insert stream (ISTREAM) operation in complex event processing (CEP)US9047249Feb 19, 2013Jun 2, 2015Oracle International CorporationHandling faults in a continuous event processing (CEP) systemUS9058360Nov 30, 2010Jun 16, 2015Oracle International CorporationExtensible language framework using data cartridgesUS9098587Mar 15, 2013Aug 4, 2015Oracle International CorporationVariable duration non-event pattern matchingUS9110945Nov 12, 2013Aug 18, 2015Oracle International CorporationSupport for a parameterized query/view in complex event processingUS9189280May 13, 2011Nov 17, 2015Oracle International CorporationTracking large numbers of moving objects in an event processing systemUS9244978Jun 11, 2014Jan 26, 2016Oracle International CorporationCustom partitioning of a data streamUS20070061292 *Jun 23, 2006Mar 15, 2007Soufiane AziziSystem and method of ready to render business intelligence result setsUS20080033968 *Aug 7, 2006Feb 7, 2008Quan Dennis AMethods and apparatus for input specializationUS20080162413 *Dec 28, 2006Jul 3, 2008Kirk Steven AAccelerating queries using temporary enumeration representationUS20080222101 *Mar 9, 2007Sep 11, 2008International Business Machines CorporationApparatus and method for handling a let bindingUS20080222121 *Jun 1, 2007Sep 11, 2008Wolfgang WiesslerSystem for Adaptively Querying a Data Storage RepositoryUS20080222187 *Mar 9, 2007Sep 11, 2008Kevin Scott BeyerMethod and apparatus for handling a let bindingUS20090083397 *Sep 25, 2007Mar 26, 2009Infineon Technologies AgMethod for Loading a Program Module into a Network Device and Network with Network DevicesUS20090125536 *Nov 9, 2007May 14, 2009Yanbing LuImplementing event processorsUS20100057663 *Mar 4, 2010Oracle International CorporationTechniques for matching a certain class of regular expression-based patterns in data streamsUS20100223305 *Sep 2, 2010Oracle International CorporationInfrastructure for spilling pages to a persistent storeUS20110022618 *Jul 21, 2009Jan 27, 2011Oracle International CorporationStandardized database connectivity support for an event processing server in an embedded contextUS20110023055 *Jan 27, 2011Oracle International CorporationStandardized database connectivity support for an event processing serverUS20110029484 *Aug 3, 2009Feb 3, 2011Oracle International CorporationLogging framework for a data stream processing serverUS20110029485 *Feb 3, 2011Oracle International CorporationLog visualization tool for a data stream processing serverUS20110161321 *Nov 30, 2010Jun 30, 2011Oracle International CorporationExtensibility platform using data cartridges* Cited by examinerClassifications U.S. Classification1/1, 707/999.003, 707/999.002, 707/999.004International ClassificationG06F17/30Cooperative ClassificationY10S707/99933, Y10S707/99934, Y10S707/99932, G06F17/30436, G06F17/30451, G06F17/30932, G06F17/30421European ClassificationG06F17/30S4P3T1, G06F17/30X7P2, G06F17/30S8R, G06F17/30S4P2R, G06F17/30S4F9XLegal EventsDateCodeEventDescriptionSep 22, 2004ASAssignmentOwner name: ORACLE INTERNATIONAL CORPORATION, CALIFORNIAFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:LIU, ZHEN HUA;KRISHNAPRASAD, MURALIDHAR;MANIKUTTY, ANAND;AND OTHERS;REEL/FRAME:015831/0163;SIGNING DATES FROM 20040806 TO 20040823Jul 6, 2010CCCertificate of correctionAug 10, 2010CCCertificate of correctionSep 5, 2012FPAYFee paymentYear of fee payment: 4RotateOriginal ImageGoogle Home - Sitemap - USPTO Bulk Downloads - Privacy Policy - Terms of Service - About Google Patents - Send FeedbackData provided by IFI CLAIMS Patent Services