**Native XML Databases -- A Review**

+-----+--------+-------+-------+---------------------+--------------+
| **  | *      | *     | **DB  | **Pros**            | **Cons**     |
| Pro | *Devel | *Lice | T     |                     |              |
| jec | oper** | nse** | ype** |                     |              |
| t** |        |       |       |                     |              |
+=====+========+=======+=======+=====================+==============+
| [4  | Four   | Open  | Objec | -   Command Line    | >            |
| Sui | T      | S     | t-ori |     Interface       | Installation |
| te, | hought | ource | ented |                     | > requires   |
| 4Su |        |       |       | -   APIs in Python, | > both       |
| ite |        |       |       |     HTTP, SOAP and  | > python & 4 |
| Se  |        |       |       |     XSLT.           | > suite      |
| rve |        |       |       |                     | > software.  |
| r]( |        |       |       | -   Supports        |              |
| htt |        |       |       |     remote,         |              |
| p:/ |        |       |       |     cross-platform  |              |
| /4s |        |       |       |     and             |              |
| uit |        |       |       |     cross-language  |              |
| e.o |        |       |       |     access through  |              |
| rg/ |        |       |       |     HTTP, RPC FTP   |              |
| ind |        |       |       |     and CORBA.      |              |
| ex. |        |       |       |                     |              |
| xht |        |       |       | -   Java API's      |              |
| ml) |        |       |       |                     |              |
|     |        |       |       | -   Last release on |              |
|     |        |       |       |     September 30,   |              |
|     |        |       |       |     2002            |              |
+-----+--------+-------+-------+---------------------+--------------+
| [e  | Wo     | Open  | Relat | -   Appears to be a | -            |
| Xis | lfgang | S     | ional |     strongly        |   Relational |
| t]( | Meier  | ource |       |     developed       |              |
| htt |        |       |       |     project with    |    database. |
| p:/ |        |       |       |     sufficient      |              |
| /ex |        |       |       |     docs.           | -   No       |
| ist |        |       |       |                     |     mention  |
| .so |        |       |       | -   It may either   |     about    |
| urc |        |       |       |     run as a        |     command  |
| efo |        |       |       |     standalone      |     line     |
| rge |        |       |       |     server process, |     support. |
| .ne |        |       |       |     embedded into   |              |
| t/) |        |       |       |     an application  |              |
|     |        |       |       |     or in           |              |
|     |        |       |       |     connection with |              |
|     |        |       |       |     a servlet       |              |
|     |        |       |       |     engine.         |              |
|     |        |       |       |                     |              |
|     |        |       |       | -   Last release on |              |
|     |        |       |       |     January 14,     |              |
|     |        |       |       |     2003            |              |
+-----+--------+-------+-------+---------------------+--------------+
| [D  | K. Ari | Open  | Relat | \[note\]            | -   An       |
| BDO | Kru    | S     | ional |                     |     im       |
| M]( | pnikov | ource |       |                     | plementation |
| htt |        |       |       |                     |     of DOM   |
| p:/ |        |       |       |                     |     in SQL,  |
| /db |        |       |       |                     |     on a     |
| dom |        |       |       |                     |              |
| .so |        |       |       |                     |   relational |
| urc |        |       |       |                     |     database |
| efo |        |       |       |                     |              |
| rge |        |       |       |                     |    platform. |
| .ne |        |       |       |                     |              |
| t/) |        |       |       |                     | -   Turns an |
|     |        |       |       |                     |     RDBMS    |
|     |        |       |       |                     |     into an  |
|     |        |       |       |                     |     XML      |
|     |        |       |       |                     |              |
|     |        |       |       |                     |  application |
|     |        |       |       |                     |     server.  |
+-----+--------+-------+-------+---------------------+--------------+
| [   | St     | Res   | Semi- | \[note\]            | > The Lore   |
| Lor | anford | earch | struc |                     | > project    |
| e]( | Univ   |       | tured |                     | > was        |
| htt | ersity |       |       |                     | > declared a |
| p:/ |        |       |       |                     | > success in |
| /ww |        |       |       |                     | > the year   |
| w-d |        |       |       |                     | > 2000 and   |
| b.s |        |       |       |                     | > is now     |
| tan |        |       |       |                     | > pretty     |
| for |        |       |       |                     | > much out   |
| d.e |        |       |       |                     | > of         |
| du/ |        |       |       |                     | > business.  |
| lor |        |       |       |                     |              |
| e/h |        |       |       |                     |              |
| ome |        |       |       |                     |              |
| /in |        |       |       |                     |              |
| dex |        |       |       |                     |              |
| .ht |        |       |       |                     |              |
| ml) |        |       |       |                     |              |
+-----+--------+-------+-------+---------------------+--------------+

*by Vijay Murthi*

\[note\] -- The Cons completely outweigh any other advantage the
software might have to enable us to use with JIM.

+-----+--------+-------+-------+---------------------+---------------+
| [o  | ozone- | Open  | Objec | \[note\]            | -   Complete  |
| zon | db.org | S     | t-ori |                     |     Java &    |
| e]( |        | ource | ented |                     |               |
| htt |        |       |       |                     |    enterprise |
| p:/ |        |       |       |                     |     stuff     |
| /oz |        |       |       |                     |               |
| one |        |       |       |                     | -   Last      |
| -db |        |       |       |                     |     release   |
| .or |        |       |       |                     |     by July   |
| g/o |        |       |       |                     |     29, 2002  |
| zon |        |       |       |                     |               |
| e_m |        |       |       |                     | -   No        |
| ain |        |       |       |                     |     command   |
| .ht |        |       |       |                     |     line      |
| ml) |        |       |       |                     |               |
|     |        |       |       |                     |    interface. |
+-----+--------+-------+-------+---------------------+---------------+
| [XD | M      | Open  | P     | \[note\]            | -   Last      |
| BM] | atthew | S     | ropri |                     |     updated   |
| (ht | Parry, | ource | etary |                     |     by August |
| tp: |        |       |       |                     |     23, 2000  |
| //s | Paul   |       | (Mode |                     |               |
| our | Soko   |       | l-bas |                     | -   Most of   |
| cef | lovsky |       | ed\*) |                     |     the links |
| org |        |       |       |                     |     not found |
| e.n |        |       |       |                     |               |
| et/ |        |       |       |                     |               |
| pro |        |       |       |                     |               |
| jec |        |       |       |                     |               |
| ts/ |        |       |       |                     |               |
| ozo |        |       |       |                     |               |
| ne) |        |       |       |                     |               |
+-----+--------+-------+-------+---------------------+---------------+
| [Xi | Apache | Open  | P     | -   Xindice         | Need Java for |
| ndi | So     | S     | ropri |     supports three  | Server        |
| ce] | ftware | ource | etary |     APIs: the       | installation. |
| (ht | Foun   |       |       |     [XML:DB         |               |
| tp: | dation |       | (Mode |     API]            |               |
| //x |        |       | l-bas | (http://www.xmldb.o |               |
| ml. |        |       | ed\*) | rg/xapi/index.html) |               |
| apa |        |       |       |     (also from the  |               |
| che |        |       |       |     XML:DB          |               |
| .or |        |       |       |     Initiative), a  |               |
| g/x |        |       |       |     CORBA API, and  |               |
| ind |        |       |       |     an XML-RPC      |               |
| ice |        |       |       |     plugin which    |               |
| /in |        |       |       |     supports access |               |
| dex |        |       |       |     from languages  |               |
| .ht |        |       |       |     such as PHP,    |               |
| ml) |        |       |       |     Perl, and       |               |
|     |        |       |       |     Applescript.    |               |
|     |        |       |       |                     |               |
|     |        |       |       | -   Command Line    |               |
|     |        |       |       |     Interface       |               |
|     |        |       |       |                     |               |
|     |        |       |       | -   XQuery support  |               |
|     |        |       |       |     on high         |               |
|     |        |       |       |     priority TO-Dos |               |
|     |        |       |       |     plus already    |               |
|     |        |       |       |     support XPath.  |               |
|     |        |       |       |     \[XQuery and    |               |
|     |        |       |       |     XPath are the   |               |
|     |        |       |       |     two popular     |               |
|     |        |       |       |     query languages |               |
|     |        |       |       |     for XML         |               |
|     |        |       |       |     databases\]     |               |
|     |        |       |       |                     |               |
|     |        |       |       | -   Ease of use &   |               |
|     |        |       |       |     flexibility.    |               |
+-----+--------+-------+-------+---------------------+---------------+

*Native XML databases fall into two broad categories:*

\*Model-based **storage** Store a binary model of the document (such as
the DOM or a variant thereof) in an existing or custom data store

**Text-based storage** Store the entire document in text form and
provide some sort of database functionality in accessing the document.

*There are two major differences between the two strategies:*

-   First, text-based storage can exactly round-trip the document, down
    to such trivialities as whether single or double quotes surround
    attribute values. Model-based storage can only round-trip documents
    at the level of the underlying document model. This should be
    adequate for most applications but applications with special needs
    in this area should check to see exactly what the model supports.

-   The second major difference is speed. Text-based storage obviously
    has the advantage in returning entire documents or fragments in text
    form. Model-based storage probably has the advantage in combining
    fragments from different documents, although this does depend on
    factors such as document size, parsing speed (for text-based
    storage), and retrieval speed (for model-based storage).