Introduction to XQuery

David Durand


This tutorial presents the XQuery XML query language defined by the W3C. The goals of the tutorial are to present an introduction to the structure and features of XQuery, along with lots of examples and demonstrations. Students will gain an overview of this new XML processing and management tool, but will also learn enough practical information to be able to use XQuery to create XML retrieval and manipulation tools and interfaces. While we will look at a few different XQuery processors, we will use the popular open-source eXist XML database, because it is freely accessible and because its integrated HTTP server allows the creation of complete applications using only XQuery.

Target Audience

The level of this course is Intermediate. Students should have some prior familiarity with XML and the notion of text markup; XQuery contains a complete programming language for complex queries, but extensive programming experience is not required — simple queries with no advanaced features can accomplish a lot.


David Durand has been working with markup systems since the birth of SGML in the 1980’s. He served on the W3C XML and XLink working groups, and has contributed to the Text Encoding Initiative’s work on schema languages and Hypertext markup. He works on publishing systems and services for Ingenta Inc. and is an Adjunct Associate Professor at Brown University, where he teaches a course on Document Engineering. With Steven J. DeRose, he is co-author of Making Hypermedia Work: A User’s Guide to HyTime.