Keyword Search on XML Data

Keyword Search on XML Data

Ziyang Liu (Arizona State University, USA) and Yi Chen (Arizona State University, USA)
DOI: 10.4018/978-1-61520-727-5.ch007
OnDemand PDF Download:


The objective of this chapter is to provide an overview of the state-of-the-art in supporting keyword search on XML data, outline the problem space in this area, introduce representative techniques that address different aspects of the problem, and discuss further challenges and promising directions for future work. The problem spectrum that will be covered in this chapter ranges from identifying relevant keyword matches and an axiomatic framework to evaluate different strategies, identifying other relevant data nodes, ranking, indexes and materialized views, to result snippet generation.
Chapter Preview

1.1 Query Model And Query Result

1.1.1 Keyword Query

A keyword search, as the name indicates, is a query which consists of a set of keywords. A keyword may be required (it must appear in each result) or optional. Each keyword may match elements, attributes names and/or values in the XML document. Some search engines, such as XSEarch (Cohen, Jamou, Kanza, & Sagiv, 2003), has a slightly structured query format: each query term is one of the three formats: l:k, l: or:k, where l and k are keywords, l must match name nodes (element names and/or attribute names) and k must match value nodes.

1.1.2 Query Result

A result of a keyword search on textual documents is usually a whole document. On the other hand, due to the structure of XML, each result is not an entire XML document, but a fragment of it. When the user does not separate the keywords into required keywords and optional keywords, a system may opt to use AND semantics or OR semantics. As the names suggest, AND semantics requires a query result to have all keywords in the query, while OR semantics only requires a result to have some of the keywords.

XML search engines generate results as subtrees / subgraphs of the XML document. A query result should contain both relevant keyword matches (i.e., the XML nodes that match the keywords) and other relevant nodes that are deemed relevant. The details of how query results are constructed will be discussed later in this chapter.

In this chapter, “query” and “search” are used interchangeably.


1.2 What Are The Problems Involved?

Due to the structure of XML data, processing keyword search on XML requires fundamentally different techniques than on textual documents. In fact, the structure of XML data provides us with better opportunities than textual documents to generate meaningful results, as long as they can be properly exploited. We summarize processing XML keyword search as the following problems, including generating query results (including finding relevant matches and relevant non-matches), improving efficiency, ranking and generating result snippets.

Complete Chapter List

Search this Book: