XML Database ProductsCopyright 2000-2007 by Ronald Bourret
Last updated on: March 13, 2007Table of ContentsIn 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. 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 or an XML 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. 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.
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. This includes the category formerly known as persistent DOM (PDOM) implementations.For data- and document-centric applications.
XML Servers: XML-aware J2EE servers, Web application servers, integration engines, and custom servers. Some of these are used to build distributed applications while others are used simply to publish XML documents to the Web. Includes the category formerly known as XML application servers. For data- and document-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.
Discontinued products: Products that appear to be discontinued, since I can no longer find entries for them on the Web.
Except for content management systems, you will need to write code to integrate these products with your applications, although XML servers generally require more scripting and less code than the other categories. You will need to configure content management systems, which may be a non-trivial task in itself. 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". 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). 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.
| Product |
Developer |
License |
DB Type |
DB=> XML |
XML =>DB |
| ADO |
Microsoft |
Commercial |
Relational |
x | 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 |
| ASP2XML |
Stonebroom |
Commercial |
Relational |
x | x |
| Attunity Connect |
Attunity Ltd. |
Commercial |
Relational, hierarchical, etc. |
x | x |
| C24 Integration Objects |
Century 24 Solutions |
Commercial |
Relational |
x | x |
| Castor |
exolab.org |
Open Source |
Relational |
x | x |
| Charteris Integration Toolkit |
Charteris |
Commercial |
Relational |
x | x |
| Connect for SQL/XML |
DataDirect Technologies |
Commercial |
Relational |
x | x |
| Connect XML-2-DB |
Skyhawk Systems |
Commercial |
Relational |
-- | x |
| DataDirect XQuery |
DataDirect Technologies |
Commercial |
Relational, XML |
x | -- |
| Data Junction |
Data Junction, Inc. |
Commercial |
Relational, ISAM, etc. |
x | x |
| DB2XML |
Volker Turau |
Open Source |
Relational |
x | -- |
| dbsql2xml |
Stepan RYBAR |
Open Source |
Relational |
x | -- |
| DbToXml |
SoftRUs |
Commercial |
Relational |
x | 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 |
DataMirror Corp. |
Commercial |
Relational |
x | x |
| Easysoft XML-ODBC Server |
Easysoft |
Commercial |
Relational |
x | -- |
| e.Report |
Actuate |
Commercial |
Relational |
x | -- |
| eTools XML |
GA eXpress |
Commercial |
MultiValue |
x | x |
| Extreme Translator |
Etasoft |
Commercial |
Relational |
x | x |
| Hyperjaxb |
Aleksei Valikov |
Open Source |
Relational |
x | x |
| iConnector |
infoteria |
Commercial |
Relational, Lotus Notes |
x | x |
| idx-xmnesia |
IDEALX |
Open Source |
mnesia |
x | x |
| iWay XML Transformation Engine (iXTE) |
iWay Software |
Commercial |
Relational, hierarchical, etc. |
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 |
| Osage |
George Stewart, et al |
Open Source |
Relational |
x | x |
| PowerXML Pro |
Wizen Software |
Commercial |
Relational |
x | x(?) |
| sql2dtd |
David Mertz |
Public domain |
Relational |
x | -- |
| sql2xml |
Scott Hathaway |
Public domain |
Relational |
x | -- |
| sqlToXml, xmlToSql |
Jim Kent |
Free for non-commercial use |
Relational |
x | x |
| SXQL |
Goetz Hatop |
Shareware |
Relational |
x | x |
| Sypram XML Studio |
Sypram Technology |
Commercial |
Relational |
x | x |
| SysDB |
Sysalys |
Shareware |
Relational |
x | x |
| truExchange XML |
nuBridges |
Commercial |
Relational |
x | x |
| XChainJ |
Cogent Logic Corp. |
Commercial |
Relational |
x | x |
| X:Forge |
Bibop Research International |
Open Source |
Relational, Native XML |
x | -- |
| xlinkit |
xlinkit.com |
Free/commercial |
Relational |
x | -- |
| XML DataDesk |
NetBryx Technologies |
Commercial |
Relational |
x | -- |
| XML-DBMS |
Ronald Bourret, et al |
Open Source |
Relational |
x | x |
| XML for Tables |
IBM |
Evaluation only |
Relational (DB2) |
x | -- |
| XML Gateway |
SPI Ltd. |
Commercial |
Relational, Excel, Word, text files |
x | x |
| XML::Generator::DBI |
Matt Sergeant |
Open Source |
Relational |
x | -- |
| XML Junction |
Data Junction, Inc. |
Commercial |
Relational, ISAM, etc. |
x | x |
| XML Lightweight Extractor (XLE) |
IBM |
Evaluation |
Relational |
x | -- |
| XMLServer |
Hydrosoft |
Free |
Relational |
x | -- |
| XQuare Bridge, XQuare Fusion |
Odonata |
Open Source |
Relational, XML documents |
x | x |
| XVRL (eXtensible Value Resolution Language) |
xvrl.org |
Open Source |
Relational |
x | -- |
| Product |
Developer |
License |
DB Type |
DB=> XML |
XML =>DB |
| Alchemist XML IDE |
Mentat Technologies |
Commercial |
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 |
| Product |
Developer |
License |
DB Type |
| Access 2002 |
Microsoft |
Commercial |
Relational |
| Cache |
InterSystems Corp. |
Commercial |
Post-relational |
| DB2 |
IBM |
Commercial |
Relational, native XML |
| eXtremeDB |
McObject |
Commercial |
Navigational |
| FileMaker |
FileMaker |
Commercial |
FileMaker |
| FoxPro |
Microsoft |
Commercial |
Relational |
| Informix |
IBM |
Commercial |
Relational |
| Matisse |
Matisse Software |
Commercial |
Object-oriented |
| Objectivity/DB |
Objectivity |
Commercial |
Object-oriented |
| OpenInsight |
Revelation Software |
Commercial |
Multi-valued |
| Oracle |
Oracle |
Commercial |
Relational, native XML |
| PostgreSQL |
PostgreSQL Global Development Group |
Open Source |
Relational |
| SQL Server |
Microsoft |
Commercial |
Relational |
| Sybase ASE 12.5 |
Sybase |
Commercial |
Relational |
| UniData |
IBM |
Commercial |
Nested relational |
| UniVerse |
IBM |
Commercial |
Nested relational |
| Versant enJin |
Versant Corp. |
Commercial |
Object-oriented |
| View500 |
eB2Bcom |
Commercial |
Proprietary (LDAP) |
| Product |
Developer |
License |
DB Type |
| 4Suite, 4Suite Server |
FourThought |
Open Source |
Object-oriented |
| Berkeley DB XML |
Oracle |
Open Source |
Key-value |
| Birdstep RDM XML |
Birdstep |
Commercial |
Object-oriented |
| Centor Interaction Server |
Centor Software Corp. |
Commercial |
Proprietary |
| 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(?) |
| eXist |
Wolfgang Meier |
Open Source |
Proprietary |
| eXtc |
M/Gateway Developments Ltd. |
Commercial |
Post-relational |
| Extraway |
3D Informatica |
Commercial |
Files plus indexes |
| GoXML DB |
XML Global |
Commercial |
Proprietary (Model-based) |
| Infonyte DB |
Infonyte |
Commercial |
Proprietary (Model-based) |
| Ipedo |
Ipedo |
Commercial |
Proprietary |
| Lore |
Stanford University |
Research |
Semi-structured |
| MarkLogic Server |
Mark Logic Corp. |
Commercial |
Proprietary(?) |
| myXMLDB |
Mladen Adamovic |
Open Source |
MySQL |
| Natix |
data ex machina |
Commercial |
File system(?) |
| NaX Base |
Naxoft |
Commercial |
Proprietary |
| Neocore XMS |
Xpriori |
Commercial |
Proprietary |
| ozone |
ozone-db.org |
Open Source |
Object-oriented |
| 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 (Text-based) |
| 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 |
| XDBM |
Matthew Parry, Paul Sokolovsky |
Open Source |
Proprietary (Model-based) |
| XDB |
ZVON.org |
Open Source |
Relational (PostgreSQL only?) |
| XediX TeraSolution |
AM2 Systems |
Commercial |
Proprietary |
| X-Hive/DB |
X-Hive Corporation |
Commercial |
Proprietary. Relational through JDBC |
| Xindice |
Apache Software Foundation |
Open Source |
Proprietary (Model-based) |
| XML Transactional DOM |
Ontonet |
Commercial |
Object-oriented |
| XpSQL |
Makoto Yui |
Open Source |
Relational (PostgreSQL) |
| XQuantum XML Database Server |
Cognetic Systems |
Commercial |
Proprietary |
| XStreamDB Native XML Database |
Bluestream Database Software Corp. |
Commercial |
Proprietary (Model-based) |
| Xyleme Zone Server |
Xyleme SA |
Commercial |
Proprietary |
| Product |
Developer |
License |
DB Type |
| ATG Relationship Management Platform |
ATG |
Commercial |
Relational (JDBC), LDAP, file system |
| AxKit |
AxKit.com Ltd. |
Open Source |
Relational |
| Cocoon |
Apache.org |
Open Source |
Relational |
| ColdFusion |
Macromedia |
Commercial |
Relational |
| Enhydra |
enhydra.org |
Open Source |
Relational |
| Enosys Integration Suite |
Enosys Software |
Commercial |
Relational, XML, HTML, Web services, flat files |
| Interaction Server |
Netegrity |
Commercial |
Relational |
| Lasso |
Blue World Communications |
Commercial |
Relational |
| Liquid Data |
BEA |
Commercial |
Relational (JDBC), XML, Web services, CSV files, etc. |
| MatriXML |
MojoTechnology, Inc. |
Commercial |
Oracle. External relational through ODBC |
| Net.Data |
IBM |
Commercial |
Relational |
| Nimble Integration Suite |
Nimble Technology |
Commercial |
Relational, IMS, SAP, Notes, flat files, etc. |
| Noetix Web Query |
Aris Software, Inc. |
Commercial |
Relational |
| Orbeon Presentation Server |
Orbeon.org |
Open Source |
Relational, native XML |
| Pi.gia.ma Power |
PGM Technology |
Commercial |
Relational |
| PolarLake Database Integrator |
PolarLake |
Commercial |
Relational (JDBC) |
| Rhythmyx Content Manager |
Percussion Software |
Commercial |
Relational, Lotus Notes |
| SQml Web, SQml Publisher |
Agave Software Design |
Commercial |
Relational |
| Total-e-Business |
HP Bluestone |
Commercial |
Relational (JDBC). Non-relational through Data Source Integration Modules |
| Visual Net Server |
CNet |
Commercial |
Relational |
| WebObjects |
Apple Computer |
Commercial |
Relational |
| XA-Suite |
XAware, Inc. |
Commercial |
Relational, native XML, mainframe, etc. |
| XML Portal Server (XPS) |
Uniway |
Commercial |
Relational, Lotus Notes, etc. |
| Zope |
Digital Creations |
Open Source |
Object-oriented, Relational, LDAP |
| Product |
Category |
Developer |
License |
DB Type |
| Beanstalk |
Middleware |
Beanstalk Corp. |
Commercial |
Relational |
| Coherity XML Database |
Native XML Databases |
Coherity |
Commercial |
Proprietary |
| DatabaseDom |
Middleware |
IBM |
Evaluation only |
Relational |
| DataCraft |
Middleware |
IBM |
Evaluation only |
DB2, Microsoft Access |
| DB-X |
Middleware |
Swift Inc. |
Commercial |
Relational |
| Eclipse |
Content Management Systems |
LightSpeed Software |
Commercial |
ObjectStore |
| Hynet Directive |
Content Management Systems |
Hynet Technologies |
Commercial |
Unknown |
| iINTEGRATOR |
Middleware |
LightSpeed Software |
Commercial |
Relational |
| Information Manager |
Content Management Systems |
Interleaf |
Commercial |
Unknown |
| InterAccess |
Middleware |
XML Software Corporation |
Commercial |
Relational |
| LivePage Enterprise |
Content Management Systems |
Janna Systems |
Commercial |
Relational |
| MindSuite XDB |
Native XML Databases |
Wired Minds |
Commercial |
Object-oriented |
| PXSLServlet |
Middleware |
Paul A. Tchistopolskii |
Open Source |
Relational |
| Rhythmyx Integrator |
XML Servers |
Percussion Software |
Commercial |
Relational |
| Tendara Mobile XML Database |
Native XML Databases |
Tendara |
Commercial |
Proprietary |
| TransVerse |
Middleware |
Coyote Consultants |
Commercial |
Relational, MultiValued |
| WSDOM XML-Portal |
Content Management Systems |
Radian Systems |
Commercial |
Unknown |
| Xfinity Server |
Native XML Databases |
B-Bop Associates, Inc. |
Commercial |
Relational. Others through "data connectors". |
| XMLDataLink |
Middleware |
BASD, Integra Micro Systems (P), Ltd. |
Commercial |
Relational |
| XML Servlet |
Middleware |
Cerium Component Software Incorporated |
Commercial |
Relational |
| XMLShark |
Middleware |
infoShark |
Commercial |
Oracle |
| XYZFind Server |
Native XML Databases |
XYZFind Corporation |
Commercial |
Proprietary |
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: 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. 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: For links to a variety of XML / database resources, including more software and papers about XML and databases, see the XML / Database Links page. Please send comments and questions to me at rpbourret@rpbourret.com. 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.
|
|