XQuery is a declarative, typed, functional language designed from scratch by the XML Query Working Group specifically for the purpose of querying data stored in XML format. XQuery shares the same data model and the same XML Schema-based type system with other members of the XML standards family such as XPath 2.0 and XSLT 2.0. XQuery is designed to work with XML documents that are untyped (no schema associated with the data), typed with XML Schemas, or a combination of both. XQuery 1.0 is basically a superset of XPath 2.0. In addition to the features of XPath 2.0, it has the following capabilities:
order by clause to the FLWOR (more on this later) clause to sort in nondocument order
let clause to the FLWOR clause to name results of expressions for further use
Provides a way to specify static context items in the query prolog (such as namespace prefix bindings)
Provides the ability to construct new nodes
Provides the ability to specify user-defined functions
Provides the ability to create modules and libraries
In this chapter, you get an in-depth look at the features of XQuery, including its syntax through examples. After that, you will be introduced to the support provided by Java and SQL Server 2005 for XQuery and the steps involved in working with XQuery from within Java and SQL Server 2005.
XQuery is a fairly new language for querying XML data. It was designed from the ground up by the XML Query Working Group of the W3C with the sole purpose ...