Adam Gartenberg's Blog

Business Analytics and Optimization, IBM and Social Marketing

Conor O’Mahony - Getting Started with Native XML Databases

If you're new to the world of XML databases, or have XML data and are not sure how best to store it, check out the two most recent posts on Conor O'Mahony's "Native XML Database" blog.

The first one (Getting started with Native XML Databases) points out how easy it is to get started, not only with the free DB2 Express-C download, but also with two pureXML redbooks (also free) that can help you get started with XML databases.

Many people come here while searching for the best native XML database. Being employed by a vendor with a leading native XML database, I cannot make impartial judgements in this regard. So I’m not going to try. I can, however, make sure you you know how easy it is to evaluate my employer’s native XML capabilities, so you can make up your own mind.

Not only does IBM offer a production-quality native XML database for no charge. It also provides publication-quality books about it for free. This makes it very easy for you to get started with XML databases.

His most recent post (When to store in XML format) provides some helpful guidance if you're not sure whether you should be storing your data in its native XML form, or in relational form.
The key question that you need to ask yourself is whether the information is best expressed in a relational format or in an XML format. Because XML is so popular as a platform-neutral and transparent data exchange format, data is often sent as XML even when XML is not the ideal format for the information. For instance, information is sometimes force-fitted into a hierarchical data structure even when it has no hierarchical characteristics. If this is the case, examine the data to see if it should in fact be stored in a relational format. The general rule is that you should consider a relational structure when the data is better described in tabular format. This is the characteristic that most readily defines the relational schema.

See his full posts for more details.