XQuery for Databases Building Momentum

Accelerating their efforts to forge standards together, Microsoft and IBM this week submitted a test suite for
viewing and creating information in corporate databases tagged with the XML
language to the World Wide Web Consortium

The language, called XML Query
(XQuery), uses queries to extract data from real and virtual Web documents,
paving the way for XML files to be accessed like databases. The firms
described the suite as a way for XQuery application developers to test
their own work.

Jeff Jones, director of strategy, data management at IBM, said XQuery is
important because of the vast amounts of information existing on the Web
that many developers are trying to reign in. This creates a lucrative
opportunity for companies who make and sell databases because businesses can
retrieve data quicker and easier with such applications that support XQuery.
It is likely that this fast, easy data retrieval will be attractive to
prospective database customers looking for products from the vendor with the
most to offer.

“It is the most powerful way to handle XML content,” Jones said. “It offers
the full power to manipulate, browse, search integrate, and aggregate data.”

Jones said XQuery, which has its roots in the SQL language for
tapping information in databases, will help vendors that adhere to the
standard make their products work with related software from any developer.
A common standard, he said, will also enable products to fully take
advantage of the benefits of XML, which tags information on the Web, and in
software applications in a descriptive manner so that information can be
exchanged in a much more accurate and flexible way.

XQuery will also help developers work around using proprietary code used to
place queries to XML-tagged business information in databases.

Not yet an
official standard, XQuery is currently in “last call” status at W3C, which
is the phase in the W3C process where the working group believes its work is
mostly done, and they ask other W3C groups to make sure that their specs are
referenced and are interoperable.

But that hasn’t stopped some software makers, including BEA Systems and
Oracle, from working with XQuery. BEA’s Liquid Data product is based
on it, while Oracle supports it in its current 9i Database 2. In fact, IBM and Oracle are teaming on a Java API for the XQuery. The firms will create a work group within the Java Community Process intent on crafting a standard way for a Java program to search for documents written in XML.

Interestingly, Microsoft and IBM, who have recently fielded allegations of
refusing to work together within certain working groups of the W3C (such as
WS-Choreography), spearhead the W3C XML Query working group. Could this lead
to a source of contention? One analyst thinks not.

Stephen O’Grady, senior analyst with research firm Redmonk, said: “We haven’t been
seeing much contention on the standard, instead it seems like a direction a
majority of vendors are pursuing – exhibit A is bitter rivals BEA and IBM
being on the same page. Even Oracle has released some XQuery prototypes, so
it looks like it’s going to be the way to go.”

O’Grady, who likes XQuery’s potential despite the fact that it is a work in
progress, distinguished XQuery from its SQL sister.

“The one caveat to remember here is that while comparisons with SQL are not
off base, for all that XQuery and SQL have in common there are important
differences. Where SQL is declarative, XQuery is semi-procedural – and
that’s an important difference as it pertains to the skill sets necessary to
learn either. And there is a learning curve attached to XQuery – that’s why
these prototypes and test suites are so important – these technologies need
to make their way into the hands of
developers and enterprises everywhere, so that they can get comfortable with
the technology and see its implications to their business.”

IBM is using XQuery as the basis for its strategy
(formerly known as the Xperanto Project) to bundle XML with its database
software for data integration. In that test scenario, IBM used XQuery in a
prototype database using XQuery to integrate commands from its Informix
software and two SOAP feeds. Using the practical examples of stock quotes
and mutual funds, that Xperanto experiment showed how Web services could be
used as distributed data sources.

Jones said the adoption of XQuery in IBM’s DB2 products is one of the
objectives of IBM’s information integration strategy
to create technology that will make information available to businesses on
demand, part of its overarching strategy for computing. In one example,
XQuery will be used by IBM’s DB2 Information Integrator, which lets
businesses integrate and search the repositories and formats of information
as if they were a single database.

DB2 Information Integrator will enable users to access data in structured
formats, such as traditional databases with information represented in rows
and columns and unstructured formats, such as text documents, multimedia and

In time, XQuery will also be built into DB2 Universal Database itself, as
well as DB2 Content Manager.

The new suite will be released on IBM’s Alphaworks developer site next week.

News Around the Web