The W3C XML Query Working Group has released a first public working draft specifying an XML syntax for the W3C XML Query language (XQuery). The draft supplies a W3C XML Schema for the XQuery XML Syntax as well as an XML DTD. The working group intends that the XQueryX DTD and XML Schema "will track the XQuery 1.0 syntax and will be changed as often as the XQuery 1.0 syntax is changed in future Working Drafts." The syntax specification in 'XQueryX' "is a close representation of the abstract syntax found in Appendix B of the XQuery Working Draft; for each production in the abstract syntax, the authors created an equivalent XML representation. XQueryX is thus an XML representation of an XQuery. [Because] it was created by mapping the productions of the XQuery abstract syntax directly into XML productions, the result is not particularly convenient for humans to read and write; however, it is easy for programs to parse, and because XQueryX is represented in XML, standard XML tools can be used to create, interpret, or modify queries." Concurrent with the release of the new XQueryX draft, the XML Query Working Group has published four updated related working drafts: "XQuery 1.0," the "XML Query Use Cases," "XQuery 1.0 and XPath 2.0 Data Model" [replaces the former "XML Query Data Model"], and "XQuery 1.0 Formal Semantics" [replaces the former "XML Query Algebra"]. W3C XQuery "is designed to be a small, easily implementable language in which queries are concise and easily understood. It is also flexible enough to query a broad spectrum of XML information sources, including both databases and documents."
Bibliographic information: XML Syntax for XQuery 1.0 (XQueryX). W3C Working Draft 07-June-2001. Edited by Ashok Malhotra (Microsoft), Jonathan Robie (Software AG), and Michael Rys (Microsoft). Latest version URL: http://www.w3.org/TR/xqueryx.
Motivations for XQueryX. "There are several environments in which XQueryX may be useful: (1) Parser Reuse. In heterogeneous data environments, a variety of systems may be used to execute a query. One parser can generate XQueryX for all of these systems. (2) Queries on Queries. Because XQueryX is represented in XML, queries can be queried and can be transformed into new queries. For instance, a query can be performed against a set of XQueryX queries to determine which queries use FLWR expressions to range over a set of invoices. (3) Generating Queries. In some XML-oriented programming environments, it may be more convenient to build a query in its XQueryX representation than in the corresponding XQuery representation, since XML tools can be used to do so. (4) Embedding Queries in XML. XQueryX can be embedded directly in an XML document..."
XQuery WD abstract: "XML is an extremely versatile markup language, capable of labeling the information content of diverse data sources including structured and semi-structured documents, relational databases, and object repositories. A query language that uses the structure of XML intelligently can express queries across all these kinds of data, whether physically stored in XML or viewed as XML via middleware. Because query languages have traditionally been designed for specific kinds of data, most existing proposals for XML query languages are robust for particular types of data sources but weak for other types. This specification describes a new query language called XQuery, which is designed to be broadly applicable across all types of XML data sources."
Principal references:
- XML Syntax for XQuery 1.0 (XQueryX) Working Draft
- XQuery 1.0: An XML Query Language. W3C Working Draft 07 June 2001.
- XML Query Use Cases. W3C Working Draft 08 June 2001. Usage scenarios for the W3C XML Query data model, algebra, and query language.
- XQuery 1.0 and XPath 2.0 Data Model. W3C Working Draft 7 June 2001.
- XQuery 1.0 Formal Semantics. W3C Working Draft 07 June 2001.
- XML Query Requirements
- XML Query Working Group
- Mailing list archives for 'www-xml-query-comments'
- Mailing list archives for 'www-ql'
- XPath Requirements Version 2.0
- "XML and Query Languages" - Main reference page.