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


Help: OASIS Mailing Lists Help | MarkMail Help



   Re: [xml-dev] XML-enabled databases, XQuery APIs

[ Lists Home | Date Index | Thread Index ]

It's a bit hard to get used to the idea, but an "XML type" is a first 
class data type whose disk storage is optimized for XML.

By analogy, think about how other data types are stored. A two byte 
integer data type is stored in two bytes where each bit is treated as a 
digit in a binary number. A ten-byte ASCII character data type is stored 
as ten bytes where each byte is treated as an integer representing an 
ASCII character. And an XML data type is stored (insert leap of faith 
here) in a structure designed to hold an XML document.

What's weird about this is that we're used to thinking of relational 
data types as scalar types, whereas the XML data type has much more 
structure. However, this isn't much different than in object-relational 
databases where a column can have an object data type, although that is 
presumably mapped to a set of scalar storage locations under the covers.

How the XML data type is actually stored depends on the database. For 
example, Oracle stores complete XML documents in CLOBs and indexes the 
heck out of them. SQL Server stores documents using a proprietary binary 
format in BLOBs, as well as storing them in a node table with columns 
like node ID, node name, node type, parent ID, and node value. DB2 
stores documents using a proprietary disk format that is designed for 
node-level addressability and is separate from their relational storage.

Another way to think about all of this is that the XML data type is the 
exposed tip of a native XML database embedded inside a relational database.

Clear as mud?

-- Ron

Bullard, Claude L (Len) wrote:

> I don't understand this nearly well enough.   In a 
> relational database, what are the characteristics 
> of an "XML type"?


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

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