OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: Xml and Object/Relational Database

[ Lists Home | Date Index | Thread Index ]
  • From: "Steve Muench" <SMUENCH@us.oracle.com>
  • To: xml-dev@ic.ac.uk
  • Date: 03 Dec 98 12:26:58 -0800

In Oracle8i we're taking a approach to allow developers
the flexibility of storing XML Documents in any way they
choose along the spectrum of:

Single, Indexed text-BLOB ==> Fully Expanded into Foreign-Key linked Tables

The middle ground is that highly structured data gets mapped into
a set of related tables and structured text markup doc fragments
get mapped into text-BLOB's.

The simple example I use to show off why this might be interesting
would be to consider an Insurance Claim XML document like:

<?xml version="1.0"?>
<InsuranceClaim>
  <ClaimID>12345</ClaimID>
  <LossCategory>7</LossCategory>
  <Settlements>
    <Payment>
      <Payee>Borden Real Estate</Payee>
      <Date>12-OCT-1998</Date>
      <Amount>200000</Amount>
      <Approver>JCOX</Approver>
    </Payment>
  </Settlements>
  <DamageReport>
    A massive <Cause>Fire</Cause> ravaged the building and
    <Casualties>12</Casualties> people were killed. Early
    FBI reports indicate that <Motive>arson</Motive> is
    suspected.
  </DamageReport>
  </InsuranceClaim>

If you map the settlement payment sections into tables and columns
and the DamageReport doc fragment into a text blob, then you can
query over your datawarehouse of Insurance Claims to answer a
question like:

"How much money has Jim Cox approved to date in settlement
 payments for arson-related fire claims? "

Using a straightforward SQL statement like:

SELECT SUM(csp.Amount)
  FROM Claim_Header ch,
       Claim_Settlements cs,
       Claim_Settlement_Payments csp
WHERE csp.Approver = 'JCOX'
   AND CONTAINS (DamageReport, 'Arson WITHIN Motive') > 0
   AND CONTAINS (DamageReport, 'Fire WITHIN Cause'  ) > 0
   AND . . . /* Join Clauses */

We're participating in the W3C Query Language workshop today and tomorrow
(as well as follow-on W3C XML Query work) to help shape the eventual W3C
standard syntax for XML document queries. In the future, you may have
alternative syntaxes to answer the same questions of your enterprise
information, but this is our near term game plan.

____________________________________________________________________________
 Steve  | Consulting PM & XML Technology Evangelist | smuench@oracle.com
 Muench |      Java Business Objects Dev Team       | geocities.com/~smuench

                Oracle XML Homepage http://www.oracle.com/xml


  • From: Kacper Nowicki <kacper@odi.com>
  • To: "Prashanth K. Salur" <xmldoubts@hotmail.com>, xml-dev@ic.ac.uk
  • Date: 03 Dec 98 11:19:42
At 07:48 AM 12/3/98 -0800, Prashanth K. Salur wrote:
>Hi All,
>While creating an Object database for an XML file, is it advisable to 
>store just the root node of the XML file or store each node of the XML 
>file seperately.

It depends on what you plan to do.
If you want to run a query on XML document content, you'll be better off
storing each node separately.

If you will send this document to other recipent without any processing, I
guess you can store it as a (Unicode) String.

Kacper


xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo@ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo@ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa@ic.ac.uk)







 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS