W3C XML Query (XQuery) (original) (raw)
Architects
XQuery for the systems analyst or architect
The W3C XML Query Working Group worked with the W3C XML Schema Working Group and the W3C XSL Working Group to make a set of specifications that all work together.
Use XQuery to take data from multiple databases, from XML files, from remote Web documents, even from CGI scripts, and to produce XML results that you can process with XSLT.
Use XQuery on the back-end of a Web server, or to generate Enterprise-wide executive reports.
Examples of XML Query In Action
Submit your entry by sending mail to liam at w3.org, with [XQuery site] in the subject. Remember to give the full URL, and remember that it must be public.
Oxford African American Studies Center is a site published by Oxford University Press using an XQuery system. See the Site Credits link there for more details.
Alberta learning Center for education in the Canadian province of Alberta; e.g. see the Search link, which does not require registration.
AuthorMapper shows authors of scientific papers and articles broken down by geography and subject. The site is by Springer.
Business Week Business School Comparator is said to use XQuery to let users compare universities and business schools; it didn't seem to work for me, so maybe IE only? Or maybe I'm not cut out for business.
Business Exchange, another Business Week site, uses XQuery to drive a site where, it says, usiness professionals can collaborate and network around business topics.
CQ Legislative Impact is a tool to explore how pending US legislation might affect existing laws.
Data Request Broker, DRB, at Gael Consultant, is an open source Java API for processing heterogeneous data. It includes XQuery and Scema support. License is LGPL.
TheDolley Madison Digital Edition by the University of Virginia Press.
fromoldbooks.org has animage search engine powered by XML Query; you can see the text of the queries (follow the About link on the Search page). This is also used by Liam Quin'sPhotograph search page.
MarkMail is an XQuery-based application for searching and visualising mailing lists.
The New England Journal of Medicine uses XQuery to search and retrieve comprehensive case summaries and graphical icons that identify available supplemental content such as lab reports, radiological scans, histopathology slides, and photos associated with a particular case record.
O'Reilly Labs use XQuery to power code search, image search, statistics and more.
Pop Culture Universe is a Web site about American popular culture, including movies, books and music, with over 300 publications indexed and searchable.
Springer Images uses XQuery to search and retrieve scientific images, photos, tables, charts etc. for researchers.
Springer Exemplar provides a full-text interface to large numbers of scientific and technical journals, together with tools for narrowing down search results.
Wiley Custom Select is a Web site for creating custom course books.
Worldcolor has a custom publishing system using XQuery; they have a Flash demo.
Have you got a Web site that's powered by XML Query? A success story to share? Contact liam at w3.org.
Users
XQuery: choosing an implementation
There are over 40 different software packages that support XML Query in some way. Things to look for include availability of support, platforms, price, performance, all the usual issues, but you should also ask whether the software supports the final syntax from the W3C Recommendation or implements an earlier draft. Another XML Query specific feature is support for XML files, for fetching documents via HTTP, and for connecting to relational (or other) data sources: that is, whether the package lives up to the XML Query promise of unifying access to many different forms of information.
List of XQuery Implementations
Learning
There are some books listed; there are also people offering training and tutorials. If there is anything you found particular helpful, let us know!
There are also some mailing lists devoted to XML and to XML Query. You should look at the archives of each list before posting; you'll also need to subscribe to the list before you can post to it in most cases.
This is the W3C public mailing list on query languages, including (but not limited to) discussion on the XML Query project. Do not use this to send comments on the specification, such as errata or feature requests; see the Status section in each specification for instructions on how to send comments to the Working Group.
A mailing list hosted at x-query.com, especially for discussing XQuery.
Probably the most widely-known list for discussing XML.
Reading the Specs
W3C Specifications are aimed first and foremost at programmers writing implementations of them. We also try to make them readable for people trying to learn the languageābut given a choice between making a standard precise and making it easy to read, we have to make it precise.
If you are fairly technical, you could start by reading the XML Query specification, and the XQuery Use Cases document has some examples. Many people would rather look for a book or tutorial.
Implementers
XQuery for the implementer: hard core query
Implementers: what would you most like to see here? What would have helped you the most?
The XQuery Test Suite
W3C test suites exist to show that specifications can be implemented. They are testing the specs, not the code!
- The QT 3.0 Test suite is for people implementing XQuery 3, XPath 3, Functions and Operators 3 and related specifications.
- XQuery Update Facility 1.0 Test Suite
- XQuery and XPath Full Text 1.0 Test Suite (Joint with the XSLT WG)
- The much older XQuery 1.0 Test Suite is no longer used.
Static Typing and Formal Semantics
XPath 2 has typed values; that is, the language associates a value type with each expression, variable or function. The set of possible types is that defined by W3C XML Schema, augmented by user-defined types derived from those basic Schema types using an external schema. The way in which an XPath or XQuery system derives and checks the type of an expression is defined formally, using a mathematical notation, in the XQuery 1.0 and XPath 2.0 Formal Semantics Recommendation.
Note that both external W3C Schema support and static typing are optional features, so not all implementations support them.
Conformance Statements
You will often see things in the specifications marked as being implementation defined. You must document what your implementation does for each of these.