XQuery, a specification for querying XML data sources such as documents and databases, is a superset of XPath. Learn more about this programming language, including its numerous specifications that cover semantics, syntax, and core library functions.
XQuery 1.0: An XML Query Language [in development] is a specification for querying XML data sources -- documents and databases. XQuery is a fairly complete programming language, constituting a superset of XPath. XQuery is being developed in tandem with XPath 2.0, and is controversial because of its complexity, which many argue is unnecessary. Others argue that you can learn its basics quickly and may never need the more difficult portions. The XQuery 1.0/XPath 2.0 system is defined in a daunting array of specifications that cover semantics, syntax, and the core function libraries:
- XML Query Use Cases [in development] anchors XQuery by setting forth usage scenarios with XQuery examples.
- XQuery 1.0 and XPath 2.0 Data Model (XDM) [in development] defines precisely the information contained in the input to an Extensible Stylesheet Language Transformations (XSLT) 2.0 or XQuery processor, as well as all permissible values of expressions in XSLT 2.0, XQuery, and XPath 2.0.
- XQuery 1.0 and XPath 2.0 Formal Semantics [in development] gives a precise formal meaning to each of the expressions of the XPath 2.0 and XQuery 1.0 specification in terms of their data model.
- XPath 2.0 [in development] defines the core syntax of XPath 2.0.
- XQuery 1.0 and XPath 2.0 Functions and Operators [in development] defines common processing tasks used in expressions.
- XQuery 1.0: An XML Query Language [in development] defines the core syntax of XQuery 1.0.
- XML Syntax for XQuery 1.0 (XQueryX) [in development] provides an optional XML representation of XQuery.
- XSLT 2.0 and XQuery 1.0 Serialization [in development] defines how data model values look in XML, HTML, and text, in effect replacing the XSLT section on processor output.
- XQuery 1.0 and XPath 2.0 Full-Text [in development] is an adjunct to the XQuery and XPath languages to allow full-text searching of XML text and documents.
- XQuery Update Facility [in development] provides expressions to create, modify, and delete nodes within instances of the XQuery data model such as documents and databases.
- XML Transformations (XSLT) Version 2.0 [in development] is not directly part of the XQuery family but is tightly coupled to XPath 2.0 and XQuery 1.0 and is completely dependent on the former.
- An introduction to XQuery, by Howard Katz (recently updated), introduces XQuery and offers some examples, updated to the most recent working drafts (developerWorks, January 2006).
- Process XML using XML Query, by Nicholas Chase, teaches XQuery and looks at the changes in XPath 2.0. It covers somewhat older working drafts but is still useful (developerWorks, September 2002).
- Per Bothner wrote the article, What Is XQuery (O'Reilly xml.com, October 2002), as well as a recent update (O'Reilly xml.com, September 2003) covering the latest drafts.
- Review Frank Cohen's article Debunking XQuery myths and misunderstandings (developerWorks, July 2005).
- Learn which tasks are better suited for XSLT and which for XQuery in Working XML: Comparing XSLT 2.0 and XQuery by Benoit Marchal (developerWorks, April 2006).
- The XQuery Wikipedia page is a good hub resource for XQuery.
- Read about other XML standards: Index of XML standards.
- Participate in any of several XML-centered forums: XML zone discussion forums.
- Get involved in the developerWorks community: developerWorks blogs
- Find out how you can become an IBM-Certified Developer in XML and related technologies at IBM XML certification.
- See the developerWorks XML Zone for a wide range of technical articles and tips, tutorials, standards, and IBM Redbooks at XML technical library.
- Stay current with technology in these sessions: developerWorks technical events and webcasts.
- Build your next development project with trial software available for download directly from developerWorks: IBM trial software