"The upcoming release of Microsofts SQL Server 2005 allows storage of XML data in a new, rich data type called XML. This data type stores both rooted XML trees and XML fragments in a binary representation (binary XML). The query language on XML data type is a subset of XQuery, an emerging W3C recommendation (currently in Last Call) that includes the navigational language XPath 2.0. It is supported using the relational query processing framework with some enhancements. SQL Server 2005 also supports a data modification language on XML data type for incremental updates, which is not discussed further in this paper. This paper discusses the XQuery processing architecture in SQL Server 2005 and how XQuery expressions are compiled into query trees containing relational operators and a small number of new operators introduced for the purpose of XQuery processing. An XQuery expression is parsed and compiled into an internal structure called the XML algebra tree on which rule-based optimizations are applied. This is followed by a transformation of the XML algebra tree into the relational operator tree. This paper describes some of the interesting aspects of the implementation instead of being a comprehensive manual on the subject."
[ via Michael Rys ]
Saturday, September 24, 2005 11:55 PM