A Practitioner’s Approach to Normalizing XQuery Expressions
XQuery becomes a standard of the XML query language. Just like in SQL, XQuery allows nested expressions. To optimize XQuery processing, a lot of research has been done on normalization, i.e., transforming nested expressions to equivalent unnested ones. Previous normalization rules are classified into two categories – source-level and algebra-level – depending on whether a construct is specified by using a query language or an algebraic expression. In implementation point of view, we contend that the source-level rule is preferable to the algebra-level rule because algebras used for normalization are hard to be directly exploited in a typical DBMS. However, a complete set of source-level rules is yet to be developed. In this paper, we propose source-level rules for normalizing XQuery expressions and present an implementation mechanism. We show that our rules are correct and complete according to the nesting types classified by Kim. Our mechanism is easily implementable since it adapts the well-known Query Graph Model (QGM) representation. We have successfully implemented this mechanism into our XML DBMS named Odysseus/XML.
Unable to display preview. Download preview PDF.
- 1.Deutsch, A., et al.: A Query Language for XML. In: Proc. 8th Int’l Conf. on World Wide Web, pp. 1155–1169 (May 1999)Google Scholar
- 2.Deutsch, A., Papakonstantinou, Y., Xu, Y.: Minimization and Group-By Detection for Nested XQueries. In: Proc. 30th Int’l Conf. on Data Engineering, p. 839 (March 2004)Google Scholar
- 4.Kiessling, W.: SQL-like and Quel-like Correlation Queries with Aggregates Revisited, UCB/ERL Memo 84/75, Electronics Research Laboratory, California, Berkeley (September 1984)Google Scholar
- 6.Manolescu, I., Florescu, D., Kossmann, D.: Answering XML Queries over Heterogeneous Data Sources. In: Proc. 27th Int’l Conf. on Very Large Data Bases, pp. 241–250 (September 2001)Google Scholar
- 7.May, N., Helmer, S., Moerkotte, G.: Nested Queries and Quantifiers in an Ordered Context. In: Proc. 30th Int’l Conf. on Data Engineering (ICDE), pp. 239–250 (March 2004)Google Scholar
- 8.Pirahesh, H., Hellerstein, J.M., Hasan, W.: Extensible/Rule Based Query Rewrite Optimization in Starburst. In: Proc. Int’l Conf. on Management of Data, ACM SIGMOD, pp. 39–48 (June 1992)Google Scholar
- 9.Robie, J., Lapp, J., Schach, D.: XML Query Language (XQL). In: Proc. the Query Languages Workshop (December 1998)Google Scholar
- 10.Seshadri, P., Pirahesh, H., Leung, T.: Complex Query Decorrelation. In: Proc. 17th Int’l Conf. on Data Engineering (ICDE), pp. 450–458 (February 1996)Google Scholar
- 11.Whang, K., Lee, M., Lee, J., Kim, M., Han, W.: Odysseus: a High-Performance ORDBMS Tightly-Coupled with IR Features. In: Proc. 21th Int’l Conf. on Data Engineering (ICDE), pp. 1004–1005 (April 2005); This paper received the Best Demonstration AwardGoogle Scholar
- 13.World Wide Web Consortium, XML Path Language (XPath) Version 2.0, W3C Recommendation (April 2005), available from: http://www.w3.org/TR/xpath20/
- 14.World Wide Web Consortium, XQuery 1.0: An XML Query Language, W3C Working Draft (April 2005), available from: http://www.w3.org/TR/xquery/