XML and Databases

Ronald Bourret

Consulting, writing, and research in XML and databases

XML Guild

Member

XML Database Products:

Discontinued Products

Copyright 2000-2004 by Ronald Bourret

Overview

The products in this section appear to be discontinued, as I can no longer find entries for them on the Web. They are listed here on the off-chance they are still available.

Related categories

None.

Products


Beanstalk (Middleware)

Developer: Beanstalk Corp.
URL: http://www.beanstalk.bz/Products/products.html
License: Commercial
Database type: Relational (ODBC, JDBC)
Direction(s): Database=>XML
Entry last updated: July, 2002

NOTE: No recent information about Beanstalk is available on the Web and no server is registered for the beanstalk.bz domain [March, 2004].

Beanstalk is a relational database engine that sits between the application and the database. The product uses an "object sets messaging model" to improve the peformance of joins. In conventional implementations, joining multiple tables means joining two tables, building a temporary table from the result, joining this with the next table, and so on. Beanstalk "uses an object sets messaging model, [so that] one record can receive messages from many sets of records at one time and join with them all at once."

Beanstalk uses ODBC to communicate with databases. (A side effect of this is support for heterogeneous joins.) Clients use JDBC to communicate with Beanstalk.

Beanstalk provides XML output through its SELECT ... INTO XML statement, which describes an object-relational mapping as follows. Beanstalk extends the syntax of the SELECT statement to allow subselects in the select list to return multiple rows. Since subselects can contain subselects, it is therefore possible to specify an arbitrary tree structure in a single SELECT statement. The tree is mapped to an XML document by returning rows as elements and columns as attributes. The element and attribute names can be derived from database names or specified with AS clauses.

Coherity XML Database (formerly XDisect) (Native XML Databases)

Developer: Coherity
URL: None
License: Commercial
Database type: Proprietary
Entry last updated: July 2003
Coherity was acquired by Ipedo in July, 2003. According to Ipedo, the Coherity XML Database "is no longer commercially available". Ipedo will continue to support Coherity customers and may integrate parts of Coherity's technology into their products.

DatabaseDom (Middleware)

Developer: IBM
URL: http://www.alphaworks.ibm.com/tech/databasedom
License: Evaluation only
Database type: Relational (JDBC)
Direction(s): Database=>XML, XML=>Database
Entry last updated: November, 2000

NOTE: According to the Web page for DatabaseDom, it has been "retired" [4/12/03].

A Java Bean for transferring data between a DOM tree and a single table in a database. The product uses templates, with separate sections in the template for the database access information and the data layout. When transferring data from the database to the DOM tree, the user specifies a SELECT statement or a table name and WHERE clause; when transferring data from the DOM tree to the database, the user can only specify a single table name.

DataCraft (Middleware)

Developer: IBM
URL: http://www.alphaworks.ibm.com/tech/datacraft
License: Evaluation only
Database type: DB2, Microsoft Access
Direction(s): Database=>XML
Entry last updated: November, 2000

NOTE: The Web page for DataCraft has been removed from IBM's Web site.

A tool for generating SELECT statements and returning the results as an XML document containing a single table(?). From the Web site:

"... an application generation tool targeted for RDF/XML applications in the context of Web-commerce applications. DataCraft, a facility capable of generating visual query skeletons and running the queries against DB2, is an excellent tool for Web-Database application generation using XML. DataCraft provides client tools visually navigating resource schema, and query language building queries visually from the schema based on XML and RDF. DataCraft uses RDF and XML to describe data collection structures and to exchange resource schema and query between the server and client."

DB-X (Middleware)

Developer: Swift Inc.
URL: http://www.swiftinc.co.jp/en/frame/products/XMLServerWare/DB-X/
License: Commercial
Database type: Relational (ADO)
Direction(s): Database=>XML, XML=>Database
Entry last updated: November, 2000

NOTE: No recent information about DB-X is available on the Web and no server is registered for the swiftinc.co.jp domain [March, 2004].

A Windows application (also available as an ISAPI extension) for transferring data from one or more ADO recordsets to an XML document. The product uses templates with DB-X specific query elements. Query results may be placed elsewhere in the document and the language is quite flexible, supporting embedded scripting language statements as well as programming constructs such as for loops and if statements. The Web page also states that updates are possible (which makes sense, given that the product is based on ADO), but does not show how to do this.

Eclipse (Content Management Systems)

Developer: LightSpeed Software
URL: None
License: Commercial
Database type: Object-oriented (ObjectStore)
Entry last updated: June, 2003

According to LightSpeed Software (who bought Chrystal Software), Eclipse is no longer an active product.

Hynet Directive (Content Management Systems)

Developer: Hynet Technologies
URL: http://www.hynet.com/Products/main.html
License: Commercial
Database type: Unknown
Entry last updated: November, 2000

NOTE: No recent information about Hynet is available on the Web and no server is registered for the hynet.com domain.

From the Web site:

"... the premier XML content management system for e-Business. It captures content created in familiar content creation applications such as Adobe FrameMaker, Macromedia Dreamweaver, Microsoft Word and XML, and transforms the data blocks (paragraphs, graphics, tables) within them into Information Units (IUs). These IUs are tagged and stored in a repository that can be accessed across the corporate environment with standard browsers. Using "drag and drop", IUs are recalled by virtue of their attributes (metadata assignment) and reused and re-purposed to create varied pieces of corporate collateral. The output can take the form of a web-site or print."

iINTEGRATOR (Middleware)

Developer: LightSpeed Software (who bought PerCurrence)
URL: http://www.percurrence.com/products/index.html
License: Commercial
Database type: Relational
Direction(s): Database=>XML, XML=>Database?
Entry last updated: June, 2003

NOTE: iINTEGRATOR is no longer listed on the LightSpeed or Percurrence Web sites. Presumably it has been integrated into LightSpeed's other products.

An XML transformation engine that can process data from a number of sources. The engine uses templates which are written in a proprietary, XML-based language. This language drives an extensible object layer, so custom objects can be used to access data in sources not directly supported. The language includes tags for retrieving data from a variety of sources, including files, Web sites, and databases, and supports a variety of scripting languages, including JavaScript, VBScript, and PERL. iINTEGRATOR includes an XSLT processor.

Database data is retrieved by specifying an SQL statement, then specifying where the results of that statement are to be placed in the template. It is not clear if results can be used to parameterize further SQL statements.

iINTEGRATOR can be used as an IIS Web server extension or through a COM interface. It can also be used from within XML Spy and Xmetal.

Information Manager (Content Management Systems)

Developer: Interleaf
URL: unknown
License: Commercial
Database type: Unknown
Entry last updated: October, 2001

NOTE: Interleaf was acquired by Broadvision (
http://www.broadvision.com) in April, 2000. Information Manager does not appear to be available any more. It has most likely been integrated into BroadVision's product line.

From the Web site:

"... a comprehensive content and process management system for creating and managing the vital information that you provide to your customers and constituents. Groups of knowledge workers can use IM's collaborative tools to find, edit, review, reuse, and assemble information managed in a secure IM database. IM manages a wide variety of information, from files produced by popular desktop applications to highly modular document objects defined by XML and SGML."

InterAccess (Middleware)

Developer: XML Software Corporation
URL: http://www.xmlsoft.com.au/iaccess.html
License: Commercial
Database type: Relational (ODBC, OLE DB)
Direction(s): Database=>XML, XML=>Database
Entry last updated: November, 2000

NOTE: No recent information about InterAccess is available on the Web and no server is registered for the xmlsoft.com.au domain [March, 2004].

A client/server package for accessing ODBC/OLE DB databases via the Internet, using XML over TCP/IP as a data transfer protocol. InterAccess Server runs on the server and processes requests, either retrieving data from the database and returning it to the client as XML, or receiving data in XML format from the client and storing it in the database. The format of the XML document is the same as that used by ADO, since ADO is used on the server for database access.

On the client side, a COM object handles communications with the server. Applications can either use a proprietary API on this object to access the data with an ADO-like programming model, or request that all XML responses from the server be directed to a callback function. The latter is useful when only the XML is needed and can be used to populate disconnected ADO Recordsets. InterAccess also has a proprietary browser, which acts as a front end for the COM object.

Of interest, InterAccess has built-in encryption and compression.

LivePage Enterprise (Content Management Systems)

Developer: Janna Systems
URL: http://www.janna.com/lpweb/lp_ent.htm
License: Commercial
Database type: Relational
Entry last updated: November, 2000

NOTE: Siebel Systems (http://www.siebel.com) bought Janna systems in Q4 2000. The above link no longer works and it is not clear if LivePage Enterprise is still available.

From the Web site:

"... delivers the power to build, manage and publish large, business-critical web sites and documents. It opens up the enterprise intranet as a direct document publishing medium for a broad set of authors using existing tools and skills. LivePage Enterprise is an integrated XML/SGML/HTML content-base management system (CBMS) which runs on industry standard SQL database engines. At the heart of LivePage Enterprise is the LivePage ContentServer, which uses the Content Relational storage model for high-performance storage of tagged data using SQL database servers."

MindSuite XDB (Native XML Databases)

Developer: Wired Minds
URL: http://xdb.wiredminds.com/
License: Commercial
Database type: Object-oriented
Entry last updated: June, 2002

NOTE: There is no longer any mention of MindSuite XDB (or XML) on the Wired Minds Web site [March, 2004].

MindSuite XDB is a native XML database implemented on top of a proprietary object-oriented database. XML documents are stored in the database as DOM trees. The database supports ACID transactions and user- and group-level read, write, and delete access.

MindSuite XDB supports both XPath and XSLT queries. The XSLT/XPath engine operates directly on the database structures, meaning that only those parts of the document needed for processing are loaded into memory. Performance is further enhanced by use of a memory cache, which is shared by multiple threads. XSLT stylesheets are stored in the database in compiled form and can include user-written extension functions.

MindSuite XDB supports document versioning by assigning version numbers to each node and storing only changes to documents. This allows users to query any version of a document (through version-aware extensions to XPath and XSLT). It is also used to implement rollbacks.

MindSuite XDB also supports read, write, and update events on a per-document type basis. Clients can register listeners for specific events. In addition, triggers can be assigned to particular events. These execute an XSLT stylesheet; for example, inserting a purchase order might cause an invoice to be generated.

MindSuite XDB comes with C++ and Java APIs. These can be used locally (when the database is embedded in the local application) or via a CORBA interface. In addition, MindSuite XDB has GUI and command line tools for browsing the database and issuing database queries.

PXSLServlet (Middleware)

Developer: Paul A. Tchistopolskii
URL: http://www.pault.com/pault/old/Pxsl
License: Open Source
Database type: Relational (JDBC)
Direction(s): Database=>XML, XML=>Database
Entry last updated: November, 2000

NOTE: There is no longer any mention of PXSLServlet on Paul Tchistopolskii's Web site [March, 2004].

A Java servlet for transferring data from XML documents to JDBC databases and vice versa. It can also delete data from the database. The product uses templates. When transferring data from the database to XML, parameters show where the results of SELECT statements are placed in the XML document. These can be used in additional queries, allowing nested queries to be constructed. The resulting XML document can then be transformed with XSL.

When transferring data from XML to the database (as well as when deleting data?), the template appears to act as a mapping from the XML document to the database. This is apparently done by parameterizing a sample XML document. At the least, it appears to create an object-relational mapping; more sophisticated mappings may be possible.

Rhythmyx Integrator (XML Servers)

Developer: Percussion Software
URL: http://www.percussion.com/rhythmyx/xml.htm
License: Commercial
Database type: Relational (JDBC, ODBC)
Entry last updated: November, 2000

NOTE: Rhythmyx Integrator is no longer listed as a product on Percussion's Web site. It is likely the technology has been merged into other products, such as Rhythmyx Content Manager.

Rhythmyx Integrator is a Web server that runs database-driven applications. Developers define these applications with Rhythmyx Workbench, a GUI tool that defines how data is processed. As input, developers pass HTML pages that have been labeled with which fields contain dynamic data -- that is, data from the database. A utility (XSpLit) then generates an XML document and an XSL document from the marked-up HTML and the developer maps the database fields to the XML document. Finally, the developer indicates any additional processing, such as whether the data may be inserted, updated, or deleted in the database, whether any Java code is to be executed immediately before or after calls to the database, and so on. It is not clear in what form data is accepted from the Web (XML documents, HTML form values, etc.)

It appears that the XML document is mapped to the database with an object-relational mapping, with the ability to insert grouping elements. (For example, suppose an Employee table is mapped to the Employee element. The FirstName and LastName columns could be mapped to FirstName and LastName elements, grouped inside a Name element that is a child of Employee.) Of interest, Rhythmyx Integrator can perform heterogeneous joins -- that is, it can join data from different databases -- and update data in multiple, heterogeneous tables.

Tendara Mobile XML Database (Native XML Databases)

Developer: Tendara
URL: http://www.tendara.com/products/native-xml-database.html
License: Commercial
Database type: Proprietary
Entry last updated: April, 2003

NOTE: No recent information about Tendara is available on the Web and the server registered for the tendara.com domain no longer responds [4/12/03].

Tendara is a native XML database designed to be used on handhelds. The storage method used is not described, although compression is supported. Documents can be accessed using XQuery, XPath, or DOM, and transformed with XSLT. An API allows applications to search, retrieve, insert, update, and delete XML data and bindings are supported for a number of languages.

A related product is the Tendara Mobile XML Server, which can transfer data between relational backends and a Mobile XML Database in the form of XML documents. The Mobile XML Server is implemented as a Java Bean and is designed to be used inside a Java-based application server. It is also addressable through SOAP.

Total-e-Business (formerly Bluestone XML-Server)

Developer: HP Bluestone
URL: http://www.bluestone.com/products/total-e-server/default.htm
License: Commercial
Database type: Relational (JDBC). Non-relational through Data Source Integration Modules
Entry last updated: November, 2000

NOTE: Total-e-Business is no longer listed on HP's Web site [12/13/06].

Total-e-Business is a J2EE (Java 2 Enterprise Edition) application server, at the heart of which is an Enterprise Java Beans (EJB) object server (the Universal Business Server). Applications are built from EJBs and run in the context of the object server, which provides resources for handling transactions, persistence, etc. A typical Web-based application is constructed of Java Server Pages (JSPs), which use EJBs to perform various tasks.

XML is used in Total-e-Business applications in several places. First, it can be used as the interface between EJBs and JSPs. That is, a JSP can populate an EJB using data in an XML document. Similarly, an EJB can pass data to a JSP as an XML document. In the latter case, the XML can be transformed by XSLT (such as to an HTML or WML document) or sent directly to a browser on the Web. (It is not clear whether the JSP can receive data from the Web in the form of an XML document. If so, it could be passed directly to the EJB.)

The second way in which XML is used is to persist EJBs. In this case, the EJB's data is persisted to an XML document, which is then passed to the Bluestone XML-Server to be stored in a database. The XML document is mapped to the database with an object-relational mapping, which allows it to contain deeply nested elements that are stored in multiple tables. (EJBs can also be persisted directly to the database using JDBC, but this requires hand-coding.)

The third way in which XML is used is in "XML applications". These consist of an application class and one or more document handlers. The application class receives incoming XML documents and passes them to document handlers for processing. It also sends XML documents back to clients, such as Web browsers or other XML applications. XML applications use the Bluestone XML-Server to transfer data between XML documents and relational databases.

Total-e-Business can be purchased in a number of different configurations (Total-e-B2C, Total-e-B2B, Total-e-Server, Total-e-Global), all of which include the object server and XML server. It also comes with numerous development tools (including a tool for mapping between different DTDs that model the same data) and sample applications.

TransVerse (Middleware)

Developer: Coyote Consultants
URL: http://www.coyote.co.uk/Products.htm
License: Commercial
Database type: Relational, MultiValued
Direction(s): Database=>XML, XML=>Database
Entry last updated: November, 2001

NOTE: No recent information about TransVerse is available on the Web and no server is registered for the coyote.co.uk domain [March, 2004].

Transfers data between an XML document and a relational or multi-valued database. The mapping to multi-valued databases uses the multi-valued equivalent of a table-based mapping. However, due to the nature of multi-valued databases, this allows deeper nesting than would be possible with a table-based mapping over a relatioanl database. The product uses a proprietary XML dialect, which should be easy to convert to more generic dialects with XSLT. Applications can call TransVerse from ASP pages or through COM controls.

WSDOM XML-Portal (Content Management Systems)

Developer: Radian Systems
URL: http://www.radsys.com/products/portal.htm
License: Commercial
Database type: Unknown
Entry last updated: November, 2000

NOTE: No recent information about XML-Portal is available on the Web and the server registered for the radsys.com domain no longer responds.

From the Web site:

"...an information hub and repository. It is a content management system that focuses on storage, data management, transfer, and access to documents and information generated by disparate applications. WSDOM XML-Portal is a single application that provides functionality for storage and retrieval, workflow, document management, and Enterprise Report Management (ERM). Because of the thin-client approach, using a Web browser as the user interface, your system can be deployed as a departmental, enterprise, or global application, using the infrastructure provided by the Internet or an Intranet.

"WSDOM XML-Portal aids the process by creating XML indexes for data, and organizing them to allow full text XML-tagged searching and presenting results via XSL (eXtensible Style Language) style sheets. It also works closely with WSDOM XML-Xpress, Radian Systems' "funnel" application that can interface with any database product or legacy application, and transform the data into XML objects."

Xfinity Server (Native XML Databases)

Developer: B-Bop Associates, Inc.
URL: http://www.b-bop.com/products_xfinity_server.htm
License: Commercial
Database type: Relational (JDBC). Others through "data connectors".
Entry last updated: February, 2002

NOTE: All Web pages on the www.b-bop.com Website return 404 Not Found errors [4/12/03].

Xfinity Server provides native XML document storage using any relational database as the data store. On insertion, documents are parsed and stored in a fixed set of tables. These tables preserve both logical structure (elements, attributes, order, etc.) and physical structure (entities, CDATA sections, etc.) All elements and attributes are indexed when documents are stored.

Xfinity Server supports inserts, updates, copies, and deletes. These operations are performed within transactions, allowing concurrent reads and writes as well as multi-user access.

The query engine supports TQL, a proprietary query language that is a "combination of SQL-like syntax and XPath." TQL, which is XML-based, supports "element and attribute level searches, boolean and wildcard operators, keyword and numeric range searches, and queries constrained on specific types or names of documents." Query results are returned as XML and can be "complete documents, individual elements or attributes, or a list of matching documents." The query engine is built using the XQuery algebra.

Query results can be passed directly to a transformation engine. This can use any XSLT processor (it uses XT by default). The transformation engine is multi-threaded and can chain transforms together. This allows a transformation to be broken into different parts (it appears the user must do this) and run in parallel.

Xfinity can integrate external data through "Data Connectors". This data can be queried dynamically. That is, a virtual XML document with links to external data can be constructed and data then retrieved at query time. It appears that external data can also be updated, although this is not clear. It also appears that Xfinity comes with Data Connectors for relational databases (table-based mapping) and flat files and that users can write their own connectors; again, this is not clear.

Xfinity also supports SAX, DOM Level 2, user-, group-, and role-based security, SSL, multi-threaded access, J2EE, clustering, and an in-memory cache.

XMLDataLink (Middleware)

Developer: BASD, Integra Micro Systems (P), Ltd.
URL: http://www.appsintegra.com/html/xmldatalink.htm
http://www.appsintegra.com/downloads/xmldatalink.pdf
License: Commercial
Database type: Relational (ODBC, native drivers)
Direction(s): Database=>XML, XML=>Database(?)
Entry last updated: February, 2002

NOTE: There is no longer any mention of XMLDataLink on the AppsIntegra Web site. [March, 2004]. From the Web site:

"XMLDataLink creates Web Services to access, update, and exchange information with relational database systems. At design time, the GUI provides a means of connection an XML schema to the relevant back-end tables. At runtime, a Web-enabled application requests these services using standard Internet protocols. XML input sheets can be sent either by mail or via an interactive Web page. When XMLDataLink receives a request for a Web Service, it locates the appropriate service, accesses the database, and executes the service. Results are transformed into XML and sent back to the client."

It is not clear what mappings are possible from the database to XML. Access is available via email or JMS.

XML Servlet (Middleware)

Developer: Cerium Component Software Incorporated
URL: http://ceriumworks.com/tech.html
License: Commercial
Database type: Relational (JDBC)
Direction(s): Database=>XML, XML=>Database
Entry last updated: November, 2000

NOTE: The XMLServlet Web site has been static for some time and no server is registered for the ceriumworks.com domain [March, 2004].

From the Web site: "XMLServlet is a Java Servlet that uses XML instructions to combine XML or HTML templates with one another and with live database values. Use XMLServlet to display or update your database. Just give XMLServlet your fill-in-the-blank XML instructions. XMLServlet reuses the HTML (or XML) and SQL you use today."

It appears that for transferring data between XML documents and the database, XMLServlet models the document as a single table.

XML Servlet comes with two other tools: XMLOutline and XMLDB. XMLOutline takes a hierarchical outline, such as you might create in a text editor, and generates the corresponding DTD and an (empty?) XML document. XMLDB takes the DTD and XML document and generates the SQL statements needed to create the tables in which to store the document, including the necessary primary/foreign key relations.

XMLShark (Middleware)

Developer: infoShark
URL: http://www.infoshark.com/products/,
http://www.biztalk.org/library/view_object_details.asp?id=461 (CARD schema, free registration required)
License: Commercial
Database type: Oracle
Direction(s): Database=>XML, XML=>Database
Entry last updated: November, 2000

NOTE: There is no recent information about XMLShark on the Web and the infoshark.com domain is now a search site [March, 2004].

XMLShark transfers data between an Oracle database and an XML document that conforms to a proprietary schema. It is designed as a tool to regularly transfer data between two databases using XML as a data transport. Using a GUI, the user controlling the source database specifies what data to transfer, the server to transfer it to, and when to transfer it. Similarly, the user controlling the target database specifies when to read data from the XML document. Note that any application can intercept the generated document, since it is simply stored in the file system on the target server.

The XML document has three sections. The first section contains the metadata needed to model a database: tables, columns, data types, primary and foreign key constraints, and so on. The second part contains existing data, modeled as a set of tables. The third part contains data to be inserted, updated, or deleted, again modeled as a set of tables. Each part is optional.

If the XML document contains data that comes from a join, the data is not nested as might be expected. Instead, the data from each table is stored separately (hence the set-of-tables model). The advantage of this is that it provides an efficient format for transferring data, since the code to transfer non-nested data is generally faster than the code to transfer nested data. The disadvantage is that, because the data is not nested, the resulting document cannot be used by general-purpose XML applications.

XYZFind Server (Native XML Databases)

Developer: XYZFind Corporation
URL: http://www.xyzfind.com/product/
License: Commercial
Database type: Proprietary
Entry last updated: Summer, 2001

NOTE: XYZFind's technology has been acquired by Interwoven and integrated into that company's Enterprise Discovery Framework product. It does not appear that XYZFind is available as a standalone product any more [4/12/03].

From the company:

"XYZFind Server provides storage, search, and query for XML documents. It automatically indexes well-formed XML documents without requiring a DTD or schema. When a document is added to the database, it is decomposed into a persistent, parsed structure, which is used to reconstruct the entire document for retrieval. Documents are round-tripped with respect to the XPath data model and the rules for non-validating XML parsers. The storage mechanism is derived from search engine technology, extending the traditional inverted index. Keywords, numbers, and "nodes" (elements, attributes, text, comments, processing instructions, and namespace declarations) are all included in the index."

"XYZFind Server uses a proprietary, XML-based query language (XYZQL) to add, replace, delete, search, and query documents in the database. XYZQL provides similar query functionality to that of XPath and XQL, with the addition of support for numeric-range and full-text keyword search. It provides equivalents to XPath's child, descendant, and attribute axes. Like XPath, it supports queries that use wildcards and boolean constraints, and queries that return document fragments. Unlike XPath, it is expressed in XML syntax and does not support equivalents to all of the XPath axes."

"XYZFind Server functions as an HTTP server, supporting GET requests for retrieving documents, PUT requests for adding/updating documents, and POST requests for sending XYZQL commands. It also supports the bulk indexing of zip files that contain XML documents. The server supports concurrent reads and writes to the database."

"The XYZFind distribution comes with a sample client and Java API (including source code) that serves as a wrapper for the HTTP interface."

Copyright (c) 2007, Ronald Bourret