I am looking into processes for Content management systems content storage that do not involve entity attribute value models or NoSQL. A few of the problems I am attempting to solve:

  1. No DDL for brand new types
  2. Indicating the datatype of the particular node's text() (DTD association?)
  3. Querying over JDBC with DDL (e.g. xquery + Choose, UPDATE, Place, Remove) no OO programming API therefore the client handles record sets.
  4. Data import/export
  5. Any scaling/performance concerns

As I have not found a similar question, and when this really is well accepted, I'll curate making a community wiki.

Beginning with Sql Server 2005 you be capable of store XML like a native type. In addition, but you may also create Schemas and add these to the the database to validate the XML being placed in to the aforementioned XML column type.

Additionally towards the XML type, SQL Server 2005 and 2008 add better support for coming back XML using queries when in comparison to how you made it happen with Sql Server 2000 and FOR XML AUTO.

UPDATE

Following are two pages that could be of great benefit:

White Paper: What's New for XML in SQL Server 2008

Implementing XML in SQL Server

I have used Berkeley DB XML previously. It supports XML Schema and XQuery directly, and it is built on the top of Berkeley DB therefore it should scale pretty much, although I've not tried on the extender inside a large-scale context.

Oracle (since version 9i). Take a look here

http://download.oracle.com/docs/cd/B10501_01/appdev.920/a96620/xdb04cre.htm

for more information.