| As XML becomes more ubiquitous as a format for data
storage and
interchange, querying of XML data sources takes on increasing
importance. Researchers at IBM are studying the properties that
distinguish XML from other data formats and the implications of these
properties for query language design. The goal is to develop a standard
XML query language that is adaptable to many environments and
applications; easy to learn and use; rigorously defined; implementable;
declarative and susceptable to optimization; and compatible with other
related standards. |
- Don Chamberlin (Almaden Research Center) contact
- Jerome
Simeon (Watson Research Center, New York)
|
- Members of the W3C XML Query Working Group
|
- The Experts on XQuery: Views from the Working
Group. (H. Katz, editor), Addison Wesley, 2004.
- XQuery 1.0: An XML Query Language. W3C
Recommendation, 23 January 2007. See http://www.w3.org/TR/xquery.
- K. Beyer et al, "Extending XQuery for Analytics." Proceedings
of the 2005 ACM SIGMOD Conference, Baltimore, June 2005.
- D. Chamberlin, "XQuery: An XML Query Language." IBM
Systems Journal, Vol. 41, No. 4, 2002. See http://www.research.ibm.com/journal/sj/414/chamberlin.pdf.
|
|
Open standards are important to the
software
industry because they create markets in which many vendors can
participate. They also promote the development of common tools and
educational materials, and provide a focus for collecting user feedback
and for controlling language evolution. The history of the database
industry has provided many examples of the benefits of open standards.
The
members of this project are participating in the W3C XML Query Working
Group, a collaborative effort by several companies with a common
interest in creating an industry standard for XML Query. The goal of
the Working Group is to produce a standard XML query language that is
widely implemented and used. If we are successful, the query language
will be deployed in many environments, including database and content
management systems, data integration and conversion tools, web service
platforms, and service-oriented architectures.
Some properties of XML data that impact
query language design include the following:
- It has an intrinsic order
- It is hierarchic
- It is self-describing
- It includes metadata as well as data
- It is often heterogeneous (varying in structure from
one instance to the next)
- It is often sparsely populated
- Sometimes it conforms to a known schema and sometimes
it does not
Some technical challenges in the design
of an XML query language include the following:
- Merging
facilities for structured query and unstructured search (approximate
match, scoring and ranking) into a seamless language
- Striking
a balance between static typing (when schema is known) and dynamic
evaluation (when schema is unknown or heterogeneous)
- Maintaining
a compatible relationship between XQuery and related standards
including XML Schema, XML Namespaces, XPath, and XSLT
- Reducing
the impedance mismatch between a declarative XML query language and a
host programming language, which tends to add complexity to
applications and to interfere with global optimization
- Defining
appropriate interfaces for storage and retrieval of XML data in
relational databases, including extensions to the SQL language standard
(SQL/XML)
|
- XQuery
Version 1.0 was published as a W3C Recommendation on January 23, 2007.
The Recommendation includes a language syntax, a formal semantics
specification, a data model, and a function library.
- W3C
has also published a conformance test suite for XQuery, including more
than 15,000 test cases. As of March 2007, fourteen XQuery
implementations from various vendors have published their results
against the conformance test, and eleven of these implementations have
passed 98% or more of the test cases.
- The XML Query Working Group has been rechartered to
create the following new language specifications during 2007-08:
- XQuery Version 1.1, including enhanced query
features
such as explicit grouping and error recovery
- XQuery Update Facility, including operators for
insert, delete, update, and transform of persistent XML data
- XQuery Full-text Search Facility, including
operators
for stem matching, approximate search, scoring and ranking
- XQuery
Scripting Extension, including facilities for development of
applications for processing XML data using XQuery without relying on a
host programming language
|
|
|