XML retrieval, or XML information retrieval, is the content-based retrieval of documents structured with XML (eXtensible Markup Language). As such it is used for computing relevance of XML documents.[1]
Most XML retrieval approaches do so based on techniques from the information retrieval (IR) area, e.g. by computing the similarity between a query consisting of keywords (query terms) and the document. However, in XML-Retrieval the query can also contain structural hints. So-called "content and structure" (CAS) queries enable users to specify what structure the requested content can or must have.
Taking advantage of the self-describing structure of XML documents can improve the search for XML documents significantly. This includes the use of CAS queries, the weighting of different XML elements differently and the focused retrieval of subdocuments.
Ranking in XML-Retrieval can incorporate both content relevance and structural similarity, which is the resemblance between the structure given in the query and the structure of the document. Also, the retrieval units resulting from an XML query may not always be entire documents, but can be any deeply nested XML elements, i.e. dynamic documents. The aim is to find the smallest retrieval unit that is highly relevant. Relevance can be defined according to the notion of specificity, which is the extent to which a retrieval unit focuses on the topic of request.[2]
An overview of two potential approaches is available.[3] [4] The INitiative for the Evaluation of XML-Retrieval (INEX) was founded in 2002 and provides a platform for evaluating such algorithms. Three different areas influence XML-Retrieval:[5]
Query languages such as the W3C standard XQuery[6] supply complex queries, but only look for exact matches. Therefore, they need to be extended to allow for vague search with relevance computing. Most XML-centered approaches imply a quite exact knowledge of the documents' schemas.[7]
Classic database systems have adopted the possibility to store semi-structured data and resulted in the development of XML databases. Often, they are very formal, concentrate more on searching than on ranking, and are used by experienced users able to formulate complex queries.
Classic information retrieval models such as the vector space model provide relevance ranking, but do not include document structure; only flat queries are supported. Also, they apply a static document concept, so retrieval units usually are entire documents.[7] They can be extended to consider structural information and dynamic document retrieval. Examples for approaches extending the vector space models are available: they use document subtrees (index terms plus structure) as dimensions of the vector space.[8]
For data-centric XML datasets, the unique and distinct keyword search method, namely, XDMA[9] for XML databases is designed and developed based on dual indexing and mutual summation.