Dagstuhl Seminar 06472
XQuery Implementation Paradigms
( Nov 19 – Nov 22, 2006 )
- Peter A. Boncz (CWI - Amsterdam, NL)
- Torsten Grust (TU München, DE)
- Jérome Siméon (IBM TJ Watson Research Center - Hawthorne, US)
- Maurice van Keulen (University of Twente, NL)
Only a couple of weeks after the participants of seminar No. 06472 met in Dagstuhl, the W3C published the Final Recommendation documents that fix the XQuery 1.0 syntax, data model, formal semantics, built-in function library and the interaction with the XML Schema Recommendations (see W3C's XQuery web site at http://www.w3.org/XML/Query/). With the language's standardization nearing its end and now finally in place, the many efforts to construct correct, complete, and efficient implementations of XQuery finally got rid of the hindering "moving target" syndrome. This Dagstuhl seminar on the different XQuery implementation paradigms that have emerged in the recent past, thus was as timely as it could have possibly been.
From the beginning, XQuery has been designed as a declarative language in the style of modern functional programming languages. For the query author, declarativity means that the formulation of queries solely depends on the desired input and output - efficiency concerns should not have any impact at all. For XQuery implementations, declarativity provides a sheer endless pool of alternative strategies to consume and represent data model instances as well as to compile, optimize, and execute queries. In principle, all of these strategies are acceptable as long as they respect the language's formal semantics.
This freedom has led to a plethora of, sometimes radically different, approaches to the implementation of XQuery. It is characteristic for most of the implementation projects in this "zoo", that a specific set of XQuery features drove their initial development, e.g., the evaluation of XPath location steps or the efficient implementation of nested FLWOR expressions and the derivation of equivalent database-style join strategies. To this end, our colleagues out in the field applied existing techniques and devised new approaches rooted in the programming language and database query language domains. Still, XQuery implementations which excel in both, completeness and efficiency, are rare (if available at all) today.
It was the foremost goal of this seminar to bring together a vivid group of academic and industrial researchers who are representatives of the distinct implementation camps that can be currently found in the XQuery landscape. In particular, the organizers tried to make sure that the native, relational, and streaming implementation camps all had their fair share of participants. We are happy to report that a total of 31 colleagues found their way to Dagstuhl - in effect, for three days the castle saw a concentration of expertise in the XQuery language and its implementation that goes unmatched even when compared to the major global scientific conferences in the field.
Concluding Remarks and Future Plans
The functional nature of the XQuery language makes it particularly amenable to implementation techniques developed in the functional programming languages domain (this point was made by Kristoffer Rose, Philippe Michiels, Jérôme Siméon, Maurice van Keulen, and Torsten Grust). It is indeed perceivable to define faithful reformulations of the XQuery semantics in terms of combinator languages or variants of monad comprehensions, two expressions forms from which efficient database-style algebraic plans can be derived. A group of seminar participants will engage in an effort to further develop and study a ( unified ) algebraic representations for XQuery (see fourth breakout session). Ideally, this will lead to interoperability between some of the many promising XQuery implementation efforts.
We hoped that the participants were prepared and willing to teach each other in a constructive fashion and we were lucky to find exactly that during the seminar days. Dagstuhl greatly helped to create an atmosphere in which the formerly separate camps collaboratively worked on the syntheses of proven XQuery compilation and evaluation techniques.
The organizers would like to sincerely thank the Dagstuhl Scientific Directorate of Dagstuhl castle and are looking forward to put forward a follow-up seminar proposal which will re ect the then current developments around the XQuery language. Quite possibly this will include XQuery 1.1, whose initial requirements analysis phase has started just as we write this, and the forthcoming XQuery Scripting Extension which will bring the worlds of functional XML querying and stateful programming even closer together.
- Loredana Afanasiev (VU University Amsterdam, NL)
- Peter M.G. Apers (University of Twente, NL)
- Peter A. Boncz (CWI - Amsterdam, NL) [dblp]
- Vinayak R. Borkar (BEA Systems - San Jose, US) [dblp]
- Matthias Brantner (Universität Mannheim, DE)
- Gajanan Chinchwadkar (Sybase - Dublin, US)
- Massimo Franceschet (University of Udine, IT)
- Christian Grün (Universität Konstanz, DE)
- Torsten Grust (TU München, DE) [dblp]
- Sven Helmer (University of London, GB)
- Jan Hidders (University of Antwerp, BE) [dblp]
- Carl-Christian Kanne (Universität Mannheim, DE) [dblp]
- Michael Kay (Saxonica - Reading, GB)
- Bettina Kemme (McGill University - Montreal, CA) [dblp]
- Stefan Manegold (CWI - Amsterdam, NL) [dblp]
- Norman May (Universität Mannheim, DE)
- Xiaofeng Meng (Renmin University of China - Beijing, CN)
- Philippe Michiels (University of Antwerp, BE)
- Guido Moerkotte (Universität Mannheim, DE)
- Matthias Nicola (IBM Silicon Valley Lab., US)
- Paul Pedersen (FLWOR Foundation - Palo Alto, US)
- Christopher Ré (University of Washington - Seattle, US) [dblp]
- Jan Rittinger (TU München, DE)
- Kristoffer Rose (IBM TJ Watson Research Center - Yorktown Heights, US)
- Marc H. Scholl (Universität Konstanz, DE)
- Jayavel Shanmugasundaram (Cornell University, US)
- Jérome Siméon (IBM TJ Watson Research Center - Hawthorne, US) [dblp]
- Jens Teubner (TU München, DE) [dblp]
- Maurice van Keulen (University of Twente, NL)
- Felix Weigel (LMU München, DE)
- Ying Zhang (CWI - Amsterdam, NL)
- data bases / information retrieval web programming languages / compiler
- XQuery Compilers
- Relational Database Systems
- Native XML Database Systems
- XML Stream Processing
- Database Query Processing and Optimization
- Database Benchmarks