Part III Beyond Relational creating tables with XML columns, and allows declaring XML variables and using them as parameters and return values. XQuery is a W3C-recommended language created to query and format XML documents. XQuery can be used to query XML documents just like a SQL query is used to retrieve information from relational tables. The XML data type implements a limited subset of the XQuery specification and a T-SQL query can use XQuery to retrieve information from XML columns or variables. XQuery is built into the Relational Engine of SQL Server, and the Query Optimizer can build query plans that contain. | Part III Beyond Relational creating tables with XML columns and allows declaring XML variables and using them as parameters and return values. XQuery is a W3C-recommended language created to query and format XML documents. XQuery can be used to query XML documents just like a SQL query is used to retrieve information from relational tables. The XML data type implements a limited subset of the XQuery specification and a T-SQL query can use XQuery to retrieve information from XML columns or variables. XQuery is built into the Relational Engine of SQL Server and the Query Optimizer can build query plans that contain relational query operations as well as XQuery operations. Results of XQuery operations can be joined with relational data or relational data can be joined with XQuery results. SQL Server supports creating special types of indexes on XML columns to optimize XQuery operations. XML Schema Definition XSD is another W3C-recommended language created for describing and validating XML documents. XSD supports creating very powerful and complex validation rules that can be applied to XML documents to verify that they are fully compliant with the business requirements. The XML data type supports XSD validation and is explained later in this chapter. The XML data type supports a number of methods listed here value exist query modify nodes Each of these methods is explained in detail later in this chapter. Typed and untyped XML As mentioned earlier support for XSD schema validation is implemented in SQL Server in the form of XML schema collections. An XML schema collection can be created from an XML schema definition. XML columns or variables can be bound to an XML schema collection. An XML column or variable that is bound to an XML schema collection is known as typed XML. When a typed XML value is modified SQL Server validates the new value against the rules defined in the XML schema collection. The assignment or modification operation will succeed only if the new .