With the increasing number of people using XML as data format, the importance of XML query language has become paramount. We have witnessed many XML query languages emerged in the last few years. Some are raised by the database communities and some are raised by the document community. To integrate the requirements by these two communities, W3C has released a standard called XQuery. It is aimed to become the universal language for XML database users. Many recent databases, which are dedicated for XML repository, have used the XQuery. This is the trend for future XML databases.
Therefore, we need to understand what the XQuery is capable of. We know that this language is used to retrieve XML, with the capability of constructing a certain structure, under some selection condition. Few works have also introduced XQuery features such as the syntax, the operators, the functions, the building blocks, etc. However, there is no work that has provided classification on type of queries that XQuery can perform to different XML structures. This following work will focus on the taxonomy of this query language.
Why do we need to have the taxonomy? Firstly is to show the full capability of XQuery for XML information retrieval. XQuery is considerably a rich query language, yet we are only familiar to simple operators. We aim to show that this language can perform some complex operations. Secondly is to lay a foundation for query optimization in XML retrieval. By knowing the query classification, we can arrange some query plans and select the cheapest scenario.