XML is a versatile markup language, capable of labeling information contentfromof diverse information sources including structured and semi-structured documents, relational databases, and object repositories. XQuery is a declarative query language that uses the structure of XML intelligently. It can express queries across all these kinds of data, whether physically stored in XML or viewed as XML via middleware and it is designed to be broadly applicable across many types of XML data sources, independently of their original format or location. XQuery is currently under standardization as part of the World Wide Web Consortium and already adopted by industry, research and open source communities alike. Given that it is likely that large amounts of information will be represented in near future using XML, XQuery will play a fundamental role for data search, integration and aggregation; it will be the basic building block for such activities.
XQuery is currently and will be in the future used in a variety of different environments. Examples to date include XML database systems, XML document repositories, XML data integration on the Web and within single economical structures, workflow systems, and publish and subscribe systems. In addition, XPath of which XQuery is a superset is used in various products such as Web browsers. Although the W3C XQuery specification has not yet attained recommendation status, and the definition of the language has not entirely stabilized, a number of alternative proposals to implement and optimize XQuery have appeared both in industry and in the research community. Given the wide range of applications for which XQuery is applicable, a wide spectrum of alternative techniques has been proposed for XQuery processing. Some of these techniques are only useful for certain applications, other techniques are general-purpose.