XML Database Products
Copyright 2000-2010 by Ronald Bourret
Last updated on: June 20, 2010
WARNING!
This list has not been updated since roughly 2010. As a result, information may be out of date and products may no longer be available. If you are interested in a product whose link does not work, search for it on the Web, as product pages frequently change and products/companies are frequently sold.
1.0 Introduction
In this Web page, I have tried to capture the current state of the market for XML database products. These are gathered from Web sites, product reviews, XML webzines, XML resource guides, and email from product users and developers.
1.1 XML and Databases
Although complete description of how to use XML with databases is beyond the scope of this page (see instead "XML and Databases"), a brief review will help you choose what product is right for you.
XML documents fall into two broad categories: data-centric and document-centric. Data-centric documents are those where XML is used as a data transport. They include sales orders, patient records, and scientific data. Their physical structure -- the order of sibling elements, whether data is stored in attributes or PCDATA-only elements, whether entities are used -- is often unimportant. A special case of data-centric documents is dynamic Web pages, such as online catalogs and address lists, which are constructed from known, regular sets of data. Document-centric documents are those in which XML is used for its SGML-like capabilities, such as in user's manuals, static Web pages, and marketing brochures. They are characterized by irregular structure and mixed content and their physical structure is important.
To store and retrieve the data in data-centric documents, what kind of software you need will depend on how well structured your data is. For highly structured data, such as the white pages in a telephone book, you will need an XML-enabled database that is tuned for data storage, such as a relational or object-oriented database, and some sort of data transfer software. This may be built in to the database (in which case the database is said to be XML- enabled) or might be third-party software, such as middleware, data integration software, or a Web application server. If your data is semi-structured, such as the yellow pages in a telephone book or health data, you have two choices. You can try to fit your data into a well-structured database, such as a relational database, or you can store it in a native XML database, which is designed to handle semi-structured data. In addition, wrappers can treat an XML document as a source of relational data.
To store and retrieve document-centric documents, you will need a native XML database or content (document) management system. (Some XML- enabled databases provide native storage as well.) These are designed to store content fragments, such as procedures, chapters, and glossary entries, and may include document metadata, such as author names, revision dates, and document numbers. Content management systems generally have additional functionality, such as editors, version control, and workflow control. Although content management systems often use a native XML database for storage, this is hidden from the user.
1.2 Product Categories
I have divided products into the following categories. Please note that the boundaries between some of these categories are somewhat arbitrary.
Middleware: Software you call from your application to transfer data between XML documents and databases. For data-centric applications.
IDEs and Editors: Software designed to help you write XML applications or edit XML documents. For data-centric applications.
Data Integration Software: Standalone servers designed to transfer data between multiple data sources, including XML and databases. For data-centric applications.
XML-Enabled Databases: Databases with extensions for transferring data between XML documents and themselves. Primarily for data-centric applications.
Native XML Databases: Databases that store XML in "native" form, generally as some variant of the DOM mapped to an underlying data store. For data- and document-centric applications.
Web Application Servers: Software that builds database-driven XML documents for access over the Web. For data-centric applications.
Wrappers: Software that treats XML documents as a source of relational data. These products typically query XML documents using SQL. For data-centric applications.
Content (Document) Management Systems: Applications built on top of native XML databases and/or the file system for content/document management. Include features such as check-in/check-out, versioning, and editors. For document-centric applications.
XML Query Engines: Standalone engines that can query XML documents. For data- and document-centric applications.
XML Data Binding: Products that can bind XML documents to objects. Some of these can also store/retrieve objects from the database. For data-centric applications.
Except for content management systems, you will need to write code to integrate these products with your applications, although data integration software and Web application servers generally require more scripting or GUI work, and less code, than the other categories. You will need to configure content management systems, which may be a non-trivial task in itself.
1.3 Terminology
The term template is described in section 5.2.1, "Template-Based Query Languages" of "XML and Databases". The terms table-based mapping and object-relational mapping are described in "Mapping DTDs to Databases".
1.4 Disclaimer
The product summaries in this Web site are not guaranteed to be complete, accurate, or up- to-date. You should use them as a starting point for your own research. Product summaries that have been written by the company are clearly labeled as "From the Web site" or "From the company". I have written all other summaries myself. I have not used any of these products except my own (XML-DBMS).
1.5 Copyrights, Trademarks, etc.
Quotes from Web sites and product descriptions written by companies are copyrighted by those companies. The remainder of this document is copyrighted by Ronald Bourret. Unless you specifically know otherwise, it should be assumed that all product and company names are trademarked by their owners.
2.0 Product Index
2.1 Middleware
Product | Developer | License | DB Type | DB=> XML |
XML =>DB |
---|---|---|---|---|---|
ADO | Microsoft | Commercial | Relational | x | x |
Aioob XML Database Converter | Aioob Software | Commercial | Relational | x | -- |
Alliance XML/400 | Patrick Townsend & Associates | Commercial | Relational | x | x |
Allora | HiT Software | Commercial | Relational | x | x |
Altova MapForce | Altova | Commercial | Relational | x | x |
Artix Data Services | Iona | Commercial | Relational | x | x |
ASP2XML | Stonebroom | Commercial | Relational | x | x |
Attunity Connect | Attunity Ltd. | Commercial | Relational, hierarchical, etc. | x | x |
Castor | exolab.org | Open Source | Relational | x | x |
Connect XML-2-DB | Skyhawk Systems | Commercial | Relational | -- | x |
DataDirect XQuery | DataDirect Technologies | Commercial | Relational, XML, EDI, flat files | x | x |
dbsql2xml | Stepan RYBAR | Open Source | Relational | x | -- |
DbToXml | SoftRUs | Commercial | Relational | x | x |
DBIx::XML::DataLoader | Christopher Berning | Open Source | Relational | -- | x |
DBIx::XMLMessage | Andrei Nossov | Open Source | Relational | x | x |
DBIx::XML_RDB | Matt Sergeant | Open Source | Relational | x | x |
DBIx::XMLServer | Martin Bright | Open Source | Relational | x | -- |
DB/XML Transform | IBM | Commercial | Relational | x | x |
DPS X-Link | Treehouse Software | Commercial | Adabas | x | x |
Easysoft XML-ODBC Server | Easysoft | Commercial | Relational | x | -- |
EMS Data Import and Export | EMS | Commercial | Relational | x | x |
Extreme Translator | Etasoft | Commercial | Relational | x | x |
Hibernate | Red Hat | Open Source | Relational | x | x |
Hyperjaxb | Aleksei Valikov | Open Source | Relational | x | x |
JaxMe | Jochen Wiedmann / Apache Software Foundation | Open Source | Relational, native XML | x | x |
mysql, mysqldump | MySQL | Open Source | Relational | x | -- |
ODBC2XML | Intelligent Systems Research | Shareware | Relational | x | -- |
ODBC Socket Server | Team FXML | Open Source | Relational | x | -- |
Oracle XML Developer's Kit (XDK) | Oracle | Free | Relational | x | x |
Oracle XML Query Service (XQS) | Oracle | Commercial | Relational, application data, flat files, etc. | x | -- |
Osage | George Stewart, et al | Open Source | Relational | x | x |
RefleX | Phillipe Poulard | Open Source | Relational | x | -- |
sql2dtd, dtd2sql, xml2sql | David Mertz | Public domain | Relational | x | x |
sql2xml | Scott Hathaway | Public domain | Relational | x | -- |
SQL2XML.SQL | Rob Verschoor/Sypron B.V. | Open Source | Relational | x | -- |
sqlToXml, xmlToSql | Jim Kent | Free for non-commercial use | Relational | x | x |
SQLXML | Microsoft | Commercial | Relational | x | x |
SXQL | Goetz Hatop | Shareware | Relational | x | x |
X:Forge | Bibop Research International | Open Source | Relational, Native XML | x | -- |
xlinkit | xlinkit.com | Commercial | Relational | x | -- |
XML Converter | RustemSoft | Commercial | Relational | x | -- |
XML-DBMS | Ronald Bourret, et al | Open Source | Relational | x | x |
xmlDig | SysOnyx | Commercial | Relational | x | -- |
XML::Generator::DBI | Matt Sergeant | Open Source | Relational | x | -- |
XQuare Bridge, XQuare Fusion | Odonata | Open Source | Relational, XML documents | x | x |
2.2 IDEs and Editors
Product | Developer | License | DB Type | DB=> XML |
XML =>DB |
---|---|---|---|---|---|
Alchemist XML IDE | Mentat Technologies | Freeware | Relational | x | -- |
Delphi | Borland | Commercial | Relational | x | x |
<oXygen/> | SyncRO Soft Ltd. | Commercial | Relational | x | -- |
Unicenter SQL-Station | Computer Associates International | Commercial | Relational | x | x |
Stylus Studio | DataDirect Technologies | Commercial | Relational, native XML | x | x |
XML Spy | Altova | Commercial | Relational | x | x |
2.3 Data Integration Software
Product | Developer | License | Data Sources |
---|---|---|---|
Ab Initio | Ab Initio | Commercial | Relational, mainframe, etc. |
Actuate iServer | Actuate | Commercial | Relational, applications (SAP, PeopleSoft, etc.), flat files |
ASTERIA WARP | Infoteria | Commercial | Relational, XML databases, Lotus Notes, Salesforce, LDAP, flat files, etc. |
BEA AquaLogic Data Services Platform | Oracle | Commercial | Relational, Web services, flat files, etc. |
BusinessObjects Data Integrator, BusinessObjects Data Federator | Business Objects | Commercial | Relational, mainframe, applications (Salesforce, Siebel, etc.), flat files, etc. |
Centerprise Data Integrator | Astera | Commercial | Relational, Salesforce, flat files, etc. |
DataMirror Constellar Hub | IBM | Commercial | Relational, mainframe, applications (SAP, PeopleSoft, etc.), etc. |
DataMirror Transformation Server | IBM | Commercial | Relational, flat files |
ETI Solution | ETI | Commercial | Relational, mainframe, applications, etc. |
FusionWare Integration Server | FusionWare | Commercial | Relational, multivalue, flat files, EDI, HL7, etc. |
Genio | Hummingbird | Commercial | Relational, applications, SAP, flat files, etc. |
IBM Cognos DecisionStream | IBM | Commercial | Relational, SAP, flat files, etc. |
IBM InfoSphere Information Server, IBM InfoSphere DataStage | IBM | Commercial | Relational, applications (SAP, PeopleSoft, SAS, etc.), flat files, etc. |
Informatica PowerCenter, Informatica PowerExchange | Informatica | Commercial | Relational, mainframe, applications, flat files, etc. |
Ipedo XIP | Ipedo | Commercial | Relational, applications (PeopleSoft, Salesforce.com, SAP, Siebel, etc.), flat files, etc. |
iWay DataMigrator | iWay Software | Commercial | Relational, hierarchical, multi-value, applications (SAP, PeopleSoft, etc.), etc. |
Microsoft SQL Server 2008 Integration Services | Microsoft | Commercial | Relational, applications, flat files, etc. |
Oracle Data Integrator | Oracle | Commercial | Relational, Salesforce, LDAP, etc. |
Pervasive Data Integrator | Pervasive Software | Commercial | Relational, mainframe, native XML, applications (Salesforce, Siebel, etc.), flat files, etc. |
PolarLake Integration Suite | PolarLake | Commercial | Relational, applications (SAP, PeopleSoft, Siebel, etc.), flat files, etc. |
Sybase Data Integration Suite | Sybase | Commercial | Relational, mainframe, flat files, etc. |
Visual Net Server | CNet | Commercial | Relational, flat files |
XAware | XAware | Commercial | Relational, native XML, mainframe, applications, flat files, etc. |
2.4 XML-Enabled Databases
Product | Developer | License | DB Type |
---|---|---|---|
Access 2007 | Microsoft | Commercial | Relational |
Cache | InterSystems Corp. | Commercial | Post-relational |
DB2 | IBM | Commercial | Relational, native XML |
eXtremeDB | McObject | Commercial | Object-oriented |
FileMaker | FileMaker | Commercial | FileMaker |
FoxPro | Microsoft | Commercial | Relational |
Informix | IBM | Commercial | Relational |
Matisse | Matisse Software | Commercial | Object-oriented |
MonetDB/SQL | CWI Database Group | Open Source | Relational |
MySQL | Sun Microsystems | Open Source | Relational |
Objectivity/DB | Objectivity | Commercial | Object-oriented |
OpenInsight | Revelation Software | Commercial | Multi-valued |
Oracle | Oracle | Commercial | Relational, native XML |
Orient ODBMS | Orient Technologies | Open Source | Object-oriented |
PostgreSQL | PostgreSQL Global Development Group | Open Source | Relational |
RDM Embedded | Raima, Inc. | Commercial | Network, relational |
RDM Server | Raima, Inc. | Commercial | Network, relational |
Sentences | Lazy Software, Ltd. | Free | Associative |
SQL Server | Microsoft | Commercial | Relational, native XML |
Sybase ASE | Sybase | Commercial | Relational |
UniData | IBM | Commercial | Nested relational |
UniVerse | IBM | Commercial | Nested relational |
Versant Object Database | Versant Corp. | Commercial | Object-oriented |
ViewDS | eB2Bcom | Commercial | Proprietary (LDAP) |
2.5 Native XML Databases
Product | Developer | License | DB Type |
---|---|---|---|
4Suite, 4Suite Server | FourThought | Open Source | Object-oriented |
BaseX | University of Konstanz | Open Source | Proprietary |
Berkeley DB XML | Oracle | Open Source | Key-value |
DBDOM | K. Ari Krupnikov | Open Source | Relational |
dbXML | dbXML Group | Open Source | Proprietary |
Dieselpoint | Dieselpoint, Inc. | Commercial | None (indexes only) |
DOMSafeXML | Ellipsis | Commercial | File system(?) |
EMC Documentum xDB | X-Hive Corporation | Commercial | Proprietary. Relational through JDBC |
eXist | Wolfgang Meier | Open Source | Proprietary |
eXtc | M/Gateway Developments Ltd. | Free | Post-relational |
Extraway | 3D Informatica | Commercial | Files plus indexes |
Infonyte DB | Infonyte | Commercial | Proprietary |
Ipedo XML Database | Ipedo | Commercial | Proprietary |
Lore | Stanford University | Research | Semi-structured |
MarkLogic Server | Mark Logic Corp. | Commercial | Proprietary |
M/DB:X | M/Gateway Developments Ltd. | Free | Hierarchical |
MonetDB/XQuery | CWI Database Group | Open Source | Proprietary |
myXMLDB | Mladen Adamovic | Open Source | MySQL |
Natix | University of Mannheim | Free / non-commercial | Proprietary |
ozone | ozone-db.org | Open Source | Object-oriented |
Qizx | XMLMind | Commercial | Proprietary |
Sedna XML DBMS | ISP RAS MODIS | Free | Proprietary |
Sekaiju / Yggdrasill | Media Fusion | Commercial | Proprietary |
SQL/XML-IMDB | QuiLogic | Commercial | Proprietary (native XML and relational) |
Sonic XML Server | Sonic Software | Commercial | Object-oriented (ObjectStore). Relational and other data through Data Junction |
Tamino | Software AG | Commercial | Proprietary. Relational through ODBC. |
TeraText DBS | TeraText Solutions | Commercial | Proprietary |
TEXTML Server | IXIASOFT, Inc. | Commercial | Proprietary |
TigerLogic XDMS | Raining Data | Commercial | Pick |
Timber | University of Michigan | Open Source (non-commercial only) | Shore, Berkeley DB |
TOTAL XML | Cincom | Commercial | Object-relational? |
Virtuoso | OpenLink Software | Commercial | Proprietary. Relational through ODBC |
XediX TeraSolution | AM2 Systems | Commercial | Proprietary |
Xindice | Apache Software Foundation | Open Source | Proprietary |
xml.gax.com | GAX Technologies | Commercial | Proprietary |
Xpriori XMS | Xpriori | Commercial | Proprietary |
XQuantum XML Database Server | Cognetic Systems | Commercial | Proprietary |
XStreamDB Native XML Database | Bluestream Database Software Corp. | Commercial | Proprietary |
Xyleme Zone Server | Xyleme SA | Commercial | Proprietary |
2.6 Web Application Servers
Product | Developer | License | DB Type |
---|---|---|---|
AxKit | Apache Software Foundation | Open Source | Relational |
Cocoon | Apache Software Foundation | Open Source | Relational |
ColdFusion | Adobe | Commercial | Relational |
Enhydra | enhydra.org | Open Source | Relational |
Lasso | LassoSoft | Commercial | Relational |
Pi.gia.ma Power | PGM Technology | Commercial | Relational |
WebObjects | Apple Computer | Commercial | Relational |
Zope | Zope Corporation | Open Source | Object-oriented, Relational, LDAP |
2.7 Wrappers
Product | Developer | License | Read? | Write? |
---|---|---|---|---|
Ashpool | Rob Rohan | Open Source | x | x |
DB2 Information Integrator | IBM | Commercial | x | x |
SQL Server | Microsoft | Commercial | x | -- |
Sunopsis XML Driver | Sunopsis | Commercial | x | x |
2.8 Content (Document) Management Systems
Product | Developer | License | DB Type |
---|---|---|---|
Amaxus XML Content Management System | Box UK | Commercial | Relational |
Arca Document Management System | 3Squared | Commercial | Native XML (TEXTML Server) |
Astoria | LightSpeed Software | Commercial | Object-oriented |
Cascade Server | Hannon Hill Corporation | Commercial | Relational |
CMS | Sorman | Commercial | Object-oriented (POET) |
Content@XML | XyEnterprise | Commercial | Relational (Oracle) |
Documentum | Documentum, Inc. | Commercial | Relational |
Dynabase | Red Bridge Interactive | Commercial | Object-oriented (ObjectStore) |
eidonXportal | eidon | Commercial | Relational |
engenda | Red Bridge Interactive | Commercial | ObjectStore/Dynabase |
entrepid | Red Bridge Interactive | Commercial | Oracle 8i |
The Environment | Ecosystems Design | Commercial | Unknown |
EXPLOit | Document Solutions | Commercial | Relational |
Frontier | UserLand Software | Commercial | Object-oriented |
GEMt | X.Systems, Inc. | Commercial | Native XML (Tamino) |
GroveMinder | Epremis | Commercial | Unknown |
iENGINE | LightSpeed Software | Commercial | Pluggable |
Ingeniux Content Management System | Ingeniux Corporation | Commercial | Relational |
InsightBuilder | Polar Design | Commercial | Relational |
Life*CDM | Corena | Commercial | Relational (Oracle) |
Lucid e-Globalizer | Lucid'i.t. | Commercial | Native XML (Lucid XML Data Manager) |
One-to-One Content | BroadVision | Commercial | Unknown |
Prowler | infozone | Open Source | Object-oriented, relational, etc. |
Rhythmyx Content Manager | Percussion Software | Commercial | Relational, Lotus Notes |
RSuite CMS | Really Strategies | Commercial | Native XML (MarkLogic Server) |
SCHEMA ST4 | SCHEMA GmbH | Commercial | Relational |
SiberSafe | SiberLogic | Commercial | Relational |
SigmaLink | STEP Electronic Publishing Solutions GmbH | Commercial | Relational |
TeamSite | Interwoven | Commercial | Relational, file system |
Vasont | Vasont Systems | Commercial | Relational |
Vignette Content Suite | Vignette Corp. | Commercial | Unknown |
XCMS | KwareSoft Inc. | Commercial | Relational |
XDocs | Bluestream Database Software Corp. | Commercial | Native XML (XStreamDB) |
X-Hive/Docato | X-Hive Corporation | Commercial | Native XML (X-Hive/DB) |
3.0 Related Products
3.1 XML Query Engines
XML query engines are standalone programs that can query XML documents. Currently, these implement a variety of languages: XQL, XPath, XML-QL, Quilt, XQuery, etc. In the future, I expect most to standardize on the W3C query languages: XPath and XQuery.
The line between XML query engines and native XML databases is somewhat blurry, as native XML databases invariably support an XML query language. In general, XML query engines appear to support querying and nothing else, while native XML databases offer more database functionality: their own data store, transaction support, APIs, etc.
I have not had time to track XML query languages and their implementations. For more information about XML query languages, see:
W3C's XQuery page. Includes news, mailing lists, a list of known XQuery implementations, the XQTS test suite, and links.
XQuery.com. Various XQuery resources, including a tutorial, mailing list, product list, and the BumbleBee test harness.
XML Query and Search Resources. List of XML query languages and other XML query resources. Last updated December, 2002.
Note that some middleware products and XML- enabled databases support XML query languages as well, although these generally support XML queries over back end data, rather than over XML documents themselves.
3.2 XML Data Binding
XML data binding is the binding of XML documents to objects designed especially for the data in those documents. This allows applications (usually data-centric) to manipulate data that has been serialized as XML in a way that is more natural than using the DOM. For a more complete explanation of XML data binding, as well as a list of products that support XML data binding, see:
4.0 Additional Links
For links to a variety of XML / database resources, including more software and papers about XML and databases, see the XML / Database Links page.
5.0 Comments and Questions
Please send comments and questions to me at rpbourret@rpbourret.com.
5.1 Suggested Products
If there is a product that you would like to see listed on this page, please send me information at the above email address. The only criteria for inclusion is that the product must be designed to let users store generic XML documents in or extract generic XML documents from databases. Products that only use XML internally or that severely restrict the XML that can be used -- such as to a single dialect -- do not qualify.
You are welcome to include a description of the product. This will help get your product listed faster, as I am always behind in researching/writing such descriptions. Your description will be clearly labeled as "From the company:" and I reserve the right to edit it. Any changes I make will be returned to you for technical review/approval.
Here are some guidelines to help you out:
Audience. The intended audience is programmers.
Technical detail. The purpose of the description is to give a concise technical description of the product: what it does, how it does it, and what features it has.
Focus on XML. Focus on the XML aspects of the product, even if these took less time to write than that cool GUI tool. Mention the GUI tool in one sentence or less. ("Other features include ...")
User tasks. Be sure to describe what the user must do. Writing code is different from filling in forms, both in terms of flexibility and difficulty.
No vaporware. The features you describe must be in a released version of the product, not just in the specification or "under development".
No marketing lingo. All marketing lingo will be deleted. Obvious examples of marketing terms are "enterprise-wide solution" and "business critical". Less obvious examples are such unverifiable terms as "fast", "scalable", and "robust".
Still not sure what to write? Look at the descriptions of similar products in the list.