W3C

XQuery and XPath Full-Text Use Cases

W3C Working Draft 14 February 2003

This version:
http://www.w3.org/TR/2003/WD-xmlquery-full-text-use-cases-20030214/
Latest version:
http://www.w3.org/TR/xmlquery-full-text-use-cases
Editors:
Sihem Amer-Yahia, AT&T Labs
Pat Case, Library of Congress

This document is also available in these non-normative formats: XML.


Abstract

This document specifies usage scenarios for full-text queries as part of XML Query [XQuery] and XPath [XPath].

Status of this Document

This is a public W3C Working Draft for review by W3C Members and other interested parties. This section describes the status of this document at the time of its publication. It is a draft document and may be updated, replaced, or made obsolete by other documents at any time. It is inappropriate to use W3C Working Drafts as reference material or to cite them as other than "work in progress." A list of current public W3C technical reports can be found at http://www.w3.org/TR/.

The Full-Text Use Cases have been defined jointly by the XML Query Working Group and the XSL Working Group (both parts of the XML Activity) .

The Full-Text Use Cases are published in conjunction with the XQuery and XPath Full-Text Requirements.

This is the first version of this document.

This document is a work in progress. It contains many open issues, and should not be considered to be fully stable. Vendors who wish to create preview implementations based on this document do so at their own risk. While this document reflects the general consensus of the working groups, there are still controversial areas that may be subject to change.

Public comments on this document and its open issues are welcome. Comments should be sent to the W3C XPath/XQuery mailing list, public-qt-comments@w3.org (archived at http://lists.w3.org/Archives/Public/public-qt-comments/).

Patent disclosures relevant to this specification may be found on the XML Query Working Group's patent disclosure page at http://www.w3.org/2002/08/xmlquery-IPR-statements and on the XSL Working Group's patent disclosure page at http://www.w3.org/Style/XSL/Disclosures.

A list of current W3C Recommendations and other technical documents can be found at http://www.w3.org/TR/.

Table of Contents

1 Full-Text Use Cases: Preliminaries
    1.1 Proper Display of This Unicode Document
    1.2 Introduction
    1.3 Explanation of Query Statements
    1.4 Schema for Sample Data
    1.5 Sample Data
2 Use Case "WORD": Word and Phrase Queries
    2.1 Description
    2.2 Queries and Results
        2.2.1 Q1 Single Word Query
        2.2.2 Q2 Single Phrase Query
        2.2.3 Q3 Single Phrase Query on Long Text Excerpt
        2.2.4 Q4 Single Phrase Query on Chinese Characters
3 Use Case "ELEMENT": Queries on XML Elements and Attributes
    3.1 Description
    3.2 Queries and Results
        3.2.1 Q1 Query on Element
        3.2.2 Q2 Query on Multiple Operands in Same Instance of an Element
        3.2.3 Q3 Query on Multiple Operands in Any Instance of an Element
        3.2.4 Q4 Query on Multiple Operands in Every Instance of an Element
        3.2.5 Q5 Query on Element Returning Different Elements
        3.2.6 Q6 Query on Multiple Elements
        3.2.7 Q7 Query Across Element Boundaries
        3.2.8 Q8 Query on Element and Its Descendants
        3.2.9 Q9 Query on Attribute
        3.2.10 Q10 Query on Element and Attribute
4 Use Case "STOP-WORD": Queries Ignoring and Overriding Stop Words
    4.1 Description
    4.2 Queries and Results
        4.2.1 Q1 Query on Word Ignoring Single Stop Word
        4.2.2 Q2 Query on Phrase Ignoring Single Stop Word
        4.2.3 Q3 Query on Phrase Overriding Single Stop Word
        4.2.4 Q4 Query on Phrase Ignoring Multiple Stop Words
        4.2.5 Q5 Query on Phrase Overriding Multiple Stop Words
5 Use Case "CHARACTER-MANIPULATION": Queries Manipulating Normalized Characters and Tokenized Words, Spaces, and Punctuation
    5.1 Description
    5.2 Queries and Results
        5.2.1 Q1 Query Returning Characters with Diacritics Only
        5.2.2 Q2 Query Returning Characters with and without Diacritics
        5.2.3 Q3 Query Returning Upper Case Characters Only
        5.2.4 Q4 Query Returning Upper Case and Lower Case Characters
        5.2.5 Q5 Query Returning Word with Special Character
        5.2.6 Q6 Query Returning Word with Special Character or Phrase with Space
6 Use Case "WILDCARD": Character Wildcard (Prefix, Infix, Suffix) and Word Wildcard Queries
    6.1 Description
    6.2 Queries and Results
        6.2.1 Q1 Single Prefix Character Wildcard Query
        6.2.2 Q2 Single Suffix Character Wildcard Query
        6.2.3 Q3 Single Infix Character Wildcard Query
        6.2.4 Q4 0 or More Prefix Character Wildcard Query
        6.2.5 Q5 0 or More Suffix Character Wildcard Query
        6.2.6 Q6 0 or More Suffix Character Wildcard Query on a Part of a Word
        6.2.7 Q7 0 or More Infix Character Wildcard Query
        6.2.8 Q8 Specified Range Suffix Characters Wildcard Query
        6.2.9 Q9 Word Wildcard Query
        6.2.10 Q10 Specified Range Word Wildcard Query
7 Use Case "STEMMING": Word Stemming Queries
    7.1 Description
    7.2 Queries and Results
        7.2.1 Q1 Single Word Stemming Query
        7.2.2 Q2 Multiple Word Stemming Query
8 Use Case "THESAURUS": Queries Which Use Thesauri, Dictionaries, and Taxonomies
    8.1 Description
    8.2 Queries and Results
        8.2.1 Q1 Query on Synonyms Identified by a Thesaurus
        8.2.2 Q2 Query on Narrower Terms Identified by a Thesaurus
        8.2.3 Q3 Query on Broader Terms Identified by a Thesaurus
        8.2.4 Q4 Query on Word Which Sounds Like Other Words
        8.2.5 Q5 Query on Word Spelled Similarly to Other Words
        8.2.6 Q6 Query on Subordinate Terms Identified by a Taxonomy
9 Use Case "BOOLEAN": Or, And, and Not Queries
    9.1 Description
    9.2 Queries and Results
        9.2.1 Q1 Or Query
        9.2.2 Q2 Or Query on More than Two Words
        9.2.3 Q3 Or Query on Phrases
        9.2.4 Q4 And Query
        9.2.5 Q5 And Query on More than Two Words
        9.2.6 Q6 And Query on Phrases
        9.2.7 Q7 Unary Not Query
        9.2.8 Q8 And Not Query
        9.2.9 Q9 And Not Query Where Second Operand is a Subset of the First Operand
        9.2.10 Q10 Mild Not Query Where Second Operand is a Subset of the First Operand
10 Use Case "DISTANCE": Queries on Distance Relationships Including Proximity, Window, Sentence, and Paragraph Queries
    10.1 Description
    10.2 Queries and Results
        10.2.1 Q1 Unordered Proximity Query
        10.2.2 Q2 Ordered Proximity Query
        10.2.3 Q3 Unordered Window Query
        10.2.4 Q4 Ordered Window Query
        10.2.5 Q5 Unordered Within a Sentence Query
        10.2.6 Q6 Ordered Within a Sentence Query
        10.2.7 Q7 Unordered Within a Paragraph Query
        10.2.8 Q8 Ordered Within a Paragraph Query
11 Use Case "ADVANCED-WORD": Advanced Word and Phrase Queries
    11.1 Description
    11.2 Queries and Results
        11.2.1 Q1 Ordered Word Query
        11.2.2 Q2 AtLeast Query
        11.2.3 Q3 Starts-With Query
        11.2.4 Q4 Exact Phrase Only Query
12 Use Case "SCORE": Queries Unique to Score
    12.1 Description
    12.2 Queries and Results
        12.2.1 Q1 Multiple Word Query
        12.2.2 Q2 Multiple Phrase Query
        12.2.3 Q3 Query Which Returns Scores
        12.2.4 Q4 Query Returning Results with Top Scores
        12.2.5 Q5 Query Which Filters on Scores
        12.2.6 Q6 Query Which Returns All Documents Ordered
13 Use Case "STRUCTURE": Queries using XPath Axes
    13.1 Description
    13.2 Queries and Results
        13.2.1 Q1 Query on Element and Its Children
        13.2.2 Q2 Query on Element Returning Its First Two Children
        13.2.3 Q3 Query on Element and Its Descendants
        13.2.4 Q4 Query on Element and Its Parent
        13.2.5 Q5 Query on Element and Its Ancestors
        13.2.6 Q6 Query on Element and Its Right Siblings
        13.2.7 Q7 Query on Element and Its Siblings
        13.2.8 Q8 Query on Same Element in Different Sub-Trees
        13.2.9 Q9 Query on Different Elements in Different Sub-Trees
        13.2.10 Q10 Conditional Query on Different Elements in Different Sub-Trees
        13.2.11 Q11 Query on Element and Its Descendants, Returning Ancestors and Descendants
14 Use Case "IGNORE": Queries Ignoring Tags and Content
    14.1 Description
    14.2 Queries and Results
        14.2.1 Q1 Query Ignoring Tags within a Word
        14.2.2 Q2 Query Ignoring Tags within Multiple Words
        14.2.3 Q3 Phrase Query Ignoring All Tags of Descendant Elements
        14.2.4 Q4 Phrase Query Ignoring Explicit List of Tags of Descendant Elements
        14.2.5 Q5 Phrase Query Ignoring All Tags and Content of Descendant Elements
        14.2.6 Q6 Phrase Query Ignoring Explicit List of Tags and Content of Descendant Elements
        14.2.7 Q7 Phrase Query Ignoring Tags and Content of Descendant Elements Identified by a Full-Text Query
        14.2.8 Q8 Phrase Query Ignoring Tags and Content of Descendant Elements Identified by an XPath Query
        14.2.9 Q9 Proximity Query Ignoring All Tags of Descendant Elements
        14.2.10 Q10 Proximity Query Ignoring All Tags and Content of Descendant Elements
15 Use Case "COMPOSABILITY": Queries Illustrating Composability of Full-Text with Other XQuery Functionality
    15.1 Description
    15.2 Queries and Results
        15.2.1 Q1 Query Combining Full-Text with Creation of New Elements
        15.2.2 Q2 Query Combining Full-Text with Aggregate on Number of Elements
        15.2.3 Q3 Query Combining Full-Text with Conditional Return
        15.2.4 Q4 Query Combining Full-Text with Functions on Numerics
        15.2.5 Q5 Query Combining Full-Text with Query on Character String
        15.2.6 Q6 Query Combining Full-Text with Operators on Booleans
        15.2.7 Q7 Query Combining Full-Text with Queries on Nodes and Dates
16 Use Case "COMPLEX": Complex Queries
    16.1 Description
    16.2 Queries and Results
        16.2.1 Q1 Query Entered in More than One Language
        16.2.2 Q2 Query Combining Proximity, Phrase, and Stemmed Queries within an Instance of an Element
        16.2.3 Q3 Nested Proximity Query with Wildcards, Thesaurus Support, and Stemming
        16.2.4 Q4 Query Combining Proximity, Boolean, and Stemming Queries which Ignores Tags and Content of a Descendant Element
        16.2.5 Q5 Query on Different Elements in Different Sub-Trees with a Conditional Return
        16.2.6 Q6 Query Combining Full-Text with Character String, Node, and Date Queries

Appendices

A Acknowledgements
B References
    B.1 References (Primary)
    B.2 References (Background)


1 Full-Text Use Cases: Preliminaries

1.2 Introduction

The use cases listed below were created by XML Query and XSL Working Groups, to illustrate important applications of full-text querying within an XML query language. Each use case exercises a specific functionality relevant to full-text querying. A Schema and sample input data are provided. Each use case specifies a set of queries that might be applied to the input data, and the expected results for each query. In a future version, the use cases will be republished with solutions in XQuery and/or XPath.

The document supplements the XML Query Use Cases which can be found in the W3C XML Query Use Cases [XQuery-UseCases]. Use cases for character string querying are included in the XML Query Use Cases, not in this document.

The full-text queries in the following use cases are performed on text which has been tokenized, i.e., broken into a sequence of words, units of punctuation, and spaces. A word is defined as any character, n-gram, or sequence of characters returned by a tokenizer as a basic unit to be queried. Each instance of a word consists of 0 or more consecutive characters. Beyond that words are implementation defined. Note that consecutive words need not be separated by either punctuation or space, and words may overlap. Tokenization enables functions and operators which work with the relative positioning of words (e.g., proximity operators). Tokenization also enables functions and operators which operate on a part or the root of the word (e.g., wildcards, stemming).

A phrase is a sequence of ordered words. A sequence can contain any number of words.

These use cases:

(1) Present some possible functions and features for tokenized text support in XQuery and XPath. None are yet available in XQuery or XPath. Please comment on these use cases and recommend others.

(2) Illustrate simple and complex queries. The more complex queries would normally only be constructed by programmers, librarians, and other expert users, or provided for novice users via saved queries or graphical user interfaces. Each query is intended to illustrate a single functionality, although queries might overlap in their functionalities (e.g., phrases and ordered proximity queries allowing no intervening words). Overlapping and similar functionalities are noted in the comments on query behavior.

(3) Draw from sample data which are almost entirely in English. Use cases in other languages are solicited, especially where they illustrate language-specific implementations of functions and features. Among the most sought after are use cases for queries using prefix and infix wild cards, proximity queries, and operators and queries requiring functionality which may not have Western language equivalents.

(4) Include queries which in most instances can be written with pure Boolean full-text predicates or with scoring (e.g., scoring on the number of occurrences of a word or phrase, scoring on how close words are to one another within a proximity query, scoring on how similar a word is to the one being stemmed) [BYR99] [HTK00]. A few, in Section 12 (SCORE), cannot be written with Boolean full-text predicates. Scoring methodologies will not be defined in this standard. Scoring will be implementation-defined. Results are provided in document order, except those in Section 12 (SCORE). Results could be returned ordered differently, such as by relevance (based on implementation-defined scoring) or explicitly by an element.

(5) Include queries on element content and attribute values.

(6) Include queries which are case-insensitive. When returning a paragraph, the text is returned as it occurs in the data model. This approach was chosen to keep the sample data short and the expected results meaningful. It would have be equally valid to return only the character queried. An variation is found in Section 5 (CHARACTER-MANIPULATION).

(7) Include queries which when they target XML elements are understood, unless otherwise stated, to query text within any text node descendant of the element.

(8) Include queries which return only elements and attributes which meet all the conditions specified in the query. In particular, Boolean queries return results where the Boolean conditions in the query are satisfied, i.e., are used to select what is being returned to users.

Query results may be returned in different ways. From a query for books containing the word "usability", users might be interested in returning, for each book containing the word "usability", its number and its entire content. In another situtation for the same query, users might be interested in returning, for each book containing the word "usability", its number and only the elements and attributes in the content which contain the word "usability". As in this second situation, the queries in these use cases return only elements and attributes which meet all the conditions specified in the query.

The Return clause may also include additional or different elements and attributes if specified, and may construct new elements.

(9) Include queries which provide some of the basic functionality of fuzzy match querying (e.g., wildcards, stemming, dictionary and thesaurus support, proximity).

(10) Provide highlighting of found words and phrases in the expected results of queries as an aid to users. The presence of highlighting says nothing about whether highlighting will be a feature of XQuery or XPath full-text querying.

(11) Display no Solutions in XQuery because no decisions have been taken on syntax. They will be added in a future version.

Examples of full-text querying functionalities for XML query languages can be found in [FGR01], [HTK00], [MJK98], [SCH01] and [TWE00].

To make the output more readable, the output of queries has been formatted using whitespace which may not be returned by a query processor. This whitespace should not be considered normative for the correctness of results.

These use cases represent a snapshot of an ongoing work. Some important operators and features are not yet adequately covered by a use case. The XML Query and XSL Working Groups reserve the right to add, delete or modify individual queries or whole use cases as the work progresses. The presence of a query in this set of use cases does not necessarily indicate that the query will be expressible in XQuery [XQuery] and/or XPath [XPath] to be created by the XML Query and XSL Working Groups.

1.4 Schema for Sample Data

The example queries in these use cases are based on a collection with the following Schema:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" version="1.0">
<xs:import namespace="http://www.w3.org/XML/1998/namespace" 
schemaLocation = "http://www.w3.org/2001/xml.xsd"/>
   <xs:element name="books">
      <xs:annotation>
      	  <xs:documentation>A possible XML Schema for Sample Data 
      	  in XQuery and XPath  Full-Text Use Cases</xs:documentation>
      </xs:annotation>
      <xs:complexType>
      	  <xs:sequence maxOccurs="unbounded">
      	     <xs:element name="book">
      	        <xs:complexType>
      	           <xs:sequence>
      	              <xs:element name="metadata">
      	                 <xs:complexType>
      	                    <xs:complexContent>
      	                       <xs:extension base="metadataType"/>
      	                    </xs:complexContent>
      	                 </xs:complexType>
      	              </xs:element>
      	              <xs:element name="content" type="contentType"/>
      	           </xs:sequence>
      	           <xs:attribute name="number" type="xs:integer" 
      	           use="required"/>
      	        </xs:complexType>
      	     </xs:element>
      	  </xs:sequence>
      </xs:complexType>
   </xs:element>
   <xs:complexType name="anyXMLTextType" mixed="true">
      <xs:annotation>
      	  <xs:documentation>free text, contains any well-formed 
      	  XML</xs:documentation>
      </xs:annotation>
      <xs:sequence>
      	  <xs:any processContents="skip" minOccurs="0" 
      	  maxOccurs="unbounded"/>
      </xs:sequence>
   </xs:complexType>
   <xs:complexType name="metadataType">
      <xs:sequence>
      	  <xs:element name="title" type="xs:string">
            <xs:complexType>
               <xs:complexContent>
                  <xs:extension base="titlesType">
                     <xs:attribute name="shortTitle" type="xs:string" 
                     use="required"/>
                  </xs:extension>
               </xs:complexContent>
            </xs:complexType>
         </xs:element>
      	  <xs:element name="authors" type="authorsType" 
      	  minOccurs="0"/>
      	  <xs:element name="publicationInfo" 
      	  type="publicationInfoType"/>
      	  <xs:element name="price" minOccurs="0">
      	     <xs:simpleType>
      	        <xs:restriction base="xs:float">
      	           <xs:minInclusive value="0"/>
      	           <xs:maxInclusive value="10000"/>
      	        </xs:restriction>
      	     </xs:simpleType>
      	  </xs:element>
      	  <xs:element name="subjects" maxOccurs="unbounded">
      	     <xs:complexType>
      	        <xs:complexContent>
      	           <xs:extension base="subjectsType">
      	              <xs:attribute ref="xml:lang" use="required"/>
      	           </xs:extension>
      	        </xs:complexContent>
      	     </xs:complexType>
      	  </xs:element>
      </xs:sequence>
   </xs:complexType>
   <xs:complexType name="authorsType">
      <xs:sequence>
      	  <xs:element name="author" type="xs:string" minOccurs="0" 
      	  maxOccurs="unbounded"/>
      </xs:sequence>
   </xs:complexType>
   <xs:complexType name="subjectsType">
      <xs:sequence>
      	  <xs:element name="subject" type="xs:string" 
      	  maxOccurs="unbounded"/>
      </xs:sequence>
   </xs:complexType>
   <xs:complexType name="publicationInfoType">
      <xs:sequence>
      	  <xs:element name="place" type="xs:string" minOccurs="0"/>
      	  <xs:element name="publisher" type="xs:string" 
      	  maxOccurs="unbounded"/>
      	  <xs:element name="dateIssued" type="xs:string"/>
      	  <xs:element name="dateRevised" type="xs:string"/>
      </xs:sequence>
   </xs:complexType>
   <xs:complexType name="contentType">
      <xs:sequence>
      	  <xs:element name="introduction" type="introductionType" 
      	  minOccurs="0"/>
      	  <xs:element name="part" maxOccurs="unbounded">
      	     <xs:complexType>
      	        <xs:complexContent>
      	           <xs:extension base="partType">
      	              <xs:attribute name="number" type="xs:string" 
      	              use="required"/>
      	           </xs:extension>
      	        </xs:complexContent>
      	     </xs:complexType>
      	  </xs:element>
      </xs:sequence>
   </xs:complexType>
   <xs:complexType name="introductionType">
      <xs:sequence>
      	  <xs:element name="author" type="xs:string" minOccurs="0"/>
      	  <xs:element name="p" maxOccurs="unbounded">
      	     <xs:complexType mixed="true">
      	        <xs:choice minOccurs="0" maxOccurs="unbounded">
      	           <xs:element name="b"/>
      	           <xs:element name="emph"/>
      	           <xs:element name="i"/>
      	        </xs:choice>
      	     </xs:complexType>
      	  </xs:element>
      </xs:sequence>
   </xs:complexType>
   <xs:complexType name="partType">
      <xs:sequence>
      	  <xs:element name="container" minOccurs="0">
      	     <xs:complexType>
      	        <xs:simpleContent>
      	           <xs:extension base="xs:string">
      	              <xs:attribute name="type" type="xs:string" 
      	              use="required"/>
      	           </xs:extension>
      	        </xs:simpleContent>
      	     </xs:complexType>
      	  </xs:element>
      	  <xs:element name="title" type="titleType" minOccurs="0"/>
      	  <xs:element name="introduction" type="introductionType" 
      	  minOccurs="0"/>
      	  <xs:element name="chapter" type="chapterType" 
      	  minOccurs="0" maxOccurs="unbounded"/>
      	  <xs:element name="component" type="componentType" 
      	  minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
   </xs:complexType>
   <xs:complexType name="chapterType">
      <xs:sequence>
      	  <xs:element name="title" type="xs:string"/>
      	  <xs:element name="p" type="anyXMLTextType" 
      	  maxOccurs="unbounded"/>
      </xs:sequence>
   </xs:complexType>
   <xs:complexType name="footnoteType" mixed="true">
      <xs:sequence>
      	  <xs:element name="citation" minOccurs="0" 
      	  maxOccurs="unbounded">
      	     <xs:complexType>
      	        <xs:simpleContent>
      	           <xs:extension base="xs:string">
      	              <xs:attribute name="url" type="xs:anyURI" 
      	              use="required"/>
      	           </xs:extension>
      	        </xs:simpleContent>
      	     </xs:complexType>
      	  </xs:element>
      </xs:sequence>
   </xs:complexType>
   <xs:complexType name="componentType">
      <xs:sequence>
      	  <xs:element name="container" minOccurs="0">
      	     <xs:complexType>
      	        <xs:simpleContent>
      	           <xs:extension base="xs:string">
      	              <xs:attribute name="type" type="xs:string" 
      	              use="required"/>
      	           </xs:extension>
      	        </xs:simpleContent>
      	     </xs:complexType>
      	  </xs:element>
      	  <xs:element name="componentTitle">
      	     <xs:complexType mixed="true">
      	        <xs:complexContent mixed="true">
      	           <xs:extension base="componentTitleType"/>
      	        </xs:complexContent>
      	     </xs:complexType>
      	  </xs:element>
      	  <xs:element name="subComponent" type="subComponentType" 
      	  minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
   </xs:complexType>
   <xs:complexType name="titleType" mixed="true">
      <xs:all minOccurs="0">
      	  <xs:element name="date">
      	     <xs:complexType>
      	        <xs:simpleContent>
      	           <xs:extension base="xs:string">
      	              <xs:attribute name="normalize" type="xs:string" 
      	              use="required"/>
      	           </xs:extension>
      	        </xs:simpleContent>
      	     </xs:complexType>
      	  </xs:element>
      </xs:all>
   </xs:complexType>
   <xs:complexType name="componentTitleType" mixed="true">
      <xs:sequence>
      	  <xs:element name="componentDate" minOccurs="0">
      	     <xs:complexType>
      	        <xs:simpleContent>
      	           <xs:extension base="xs:string">
      	              <xs:attribute name="normalize" type="xs:string" 
      	              use="optional"/>
      	           </xs:extension>
      	        </xs:simpleContent>
      	     </xs:complexType>
      	  </xs:element>
      </xs:sequence>
   </xs:complexType>
   <xs:complexType name="subComponentType">
      <xs:sequence>
      	  <xs:element name="container" minOccurs="0">
      	     <xs:complexType>
      	        <xs:simpleContent>
      	           <xs:extension base="xs:string">
      	              <xs:attribute name="type" type="xs:string" 
      	              use="required"/>
      	           </xs:extension>
      	        </xs:simpleContent>
      	     </xs:complexType>
      	  </xs:element>
      	  <xs:element name="componentTitle">
      	     <xs:complexType mixed="true">
      	        <xs:complexContent mixed="true">
      	           <xs:extension base="componentTitleType"/>
      	        </xs:complexContent>
      	     </xs:complexType>
      	  </xs:element>
      	  <xs:element name="subsubComponent" 
      	  type="subSubComponentType" minOccurs="0" 
      	  maxOccurs="unbounded"/>
      </xs:sequence>
   </xs:complexType>
   <xs:complexType name="subSubComponentType">
      <xs:sequence>
      	  <xs:element name="container" minOccurs="0">
      	     <xs:complexType>
      	        <xs:simpleContent>
      	           <xs:extension base="xs:string">
      	              <xs:attribute name="type" 
      	              type="xs:string" use="required"/>
      	           </xs:extension>
      	        </xs:simpleContent>
      	     </xs:complexType>
      	  </xs:element>
      	  <xs:element name="componentTitle">
      	     <xs:complexType mixed="true">
      	        <xs:complexContent mixed="true">
      	           <xs:extension base="componentTitleType"/>
      	        </xs:complexContent>
      	     </xs:complexType>
      	  </xs:element>
      </xs:sequence>
   </xs:complexType>
</xs:schema>

1.5 Sample Data

The data consists of a collection of three books. Two are primarily instructive text. The third is a guide to a manuscript collection. All contain metadata and full text.

<books>
<book number="1">
   <metadata>
      <title shortTitle="Improving Web Site Usability">Improving 
      the Usability of a Web Site Through Expert Reviews and 
      Usability Testing</title>
      <authors>
         <author>Millicent Marigold</author>
         <author>Montana Marigold</author>
      </authors>
      <publicationInfo>
         <place>New York</place>
         <publisher>Ersatz Publications</publisher>
         <dateIssued>2001</dateIssued>
         <dateRevised>2002</dateRevised>
      </publicationInfo>
      <price>25.99</price>   
      <subjects xml:lang="en">
         <subject>Usability testing</subject>
         <subject>Web site development</subject>        
         <subject>Heuristic evaluation</subject>
         <subject>Cognitive walk-through</subject>
         <subject>Web site usability</subject>
      </subjects>
      <subjects xml:lang="fr">        
         <subject>Tests d'ergonomie</subject>
         <subject>Développement de site web</subject>        
         <subject>Évaluation heuristique</subject>
         <subject>Parcours cognitif</subject>
         <subject>Ergonomie de site web</subject>     
      </subjects>
      <subjects xml:lang="zh">    
         <subject>可用性测试</subject>
         <subject>网站建置</subject>        
         <subject>启发式评价</subject>
         <subject>认知推演</subject>
         <subject>网站可用性</subject>
      </subjects>
   </metadata>
   <content>
      <introduction>
         <author>Elina Rose</author>
         <p>The usability of a Web site is how well the 
         site supports the user in achieving specified 
         goals. A Web site should facilitate learning, 
         and enable efficient and effective task 
         completion, while propagating few errors. 
         Satisfaction with the site is also important. 
         The user must not only be well-served, but must 
         feel well-served.</p> 
         <p>Expert reviews and usability testing are 
         methods of identifying problems in layout, 
         terminology, and navigation before they frustrate
         users and drive them away from your site.</p>
         <p>The most successful projects employ multiple 
         methods in multiple iterations. As Millicent 
         Marigold remarked during a recent conference, 
         "Don't stop. Iterate, iterate, then iterate 
         again."</p>
         <p>This book has been approved by the Web Site 
         Users Association.</p>
      </introduction>
      <part number="1">
         <title>Expert Reviews</title>
         <introduction>
            <p>Expert reviewers identify problems 
            and recommend changes to web sites based 
            on research in human computer interaction 
            and their experience in the field.</p> 
            <p>Two expert review methods are discussed 
            here. They are heuristic evaluation and 
            cognitive walk-through.</p> 
            <p>Expert review methods should be 
            initiated early in the development process, 
            as soon as paper <b>p</b>rototypes 
            (hand-drawn pictures of Web pages) or 
            <b>w</b>ireframes (electronic mockups) are 
            available. They should be conducted using 
            the hardware and software similar to that 
            employed by users.</p>
         </introduction>
         <chapter>
            <title>Heuristic Evaluation</title>
            <p>Expert reviewers critique an interface to 
            determine conformance with recognized 
            usability principles. <footnote>One of the 
            best known lists of heuristics is <citation 
            url="http://www.useit.com/papers/heuristic
            /heuristic_list.html">Ten Usability 
            Heuristics by Jacob Nielson</citation>. Another 
            is <citation url="http://usability.gov
            /guidelines/index.html"> Research-Based Web 
            Design and Usability Guidelines</citation>
            </footnote></p> 
         </chapter>
         <chapter>
            <title>Cognitive Walk-Through</title>
            <p>Expert reviewers evaluate Web site 
            understandability and ease of learning while 
            performing specified tasks. They walk through 
            the site answering questions such as "Would a 
            user know by looking at the screen how to 
            complete the first step of the task?" and "If 
            the user completed the first step, would the 
            user know what to do next?," with the goal of 
            identifying any obstacles to completing the 
            task and assessing whether the user would 
            cognitively be aware that he was successful in 
            completing a step in the process.</p>
         </chapter>
      </part>
      <part number="2">
         <chapter>
            <title>Usability Testing</title>
            <p>Once the problems identified by expert 
            reviews have been corrected, it is time to 
            conduct some tests of the site with your unique 
            audience or audiences by conducting usability 
            testing.</p>
            <p>Users are asked to complete tasks which 
            measure the success of the information 
            architecture and navigational elements of the 
            site.</p>
            <p>Then changes are made to improve service to 
            users.</p>
         </chapter>
      </part> 
   </content>
</book>

<book number="2">
   <metadata>
      <title shortTitle="Usability Basics">Usability 
      Basics: How to Plan for and Conduct Usability Tests 
      on Web Site Thereby Improving the Usability of Your 
      Web Site</title>
      <publicationInfo>
         <place>New York</place>
         <publisher>Ersatz Publications</publisher>
         <publisher>Electronic BookWorks</publisher>         
         <dateIssued>2000</dateIssued>
         <dateRevised>2001</dateRevised>
      </publicationInfo>
      <price>174.00</price>   
      <subjects xml:lang="en">
         <subject>Usability testing</subject>
         <subject>Web site development</subject>
         <subject>Guides and finding aids</subject>
      </subjects>
      <subjects xml:lang="fr">
         <subject>Tests d'ergonomie</subject>
         <subject>Développement de site web</subject>
         <subject>Guides et outils de recherche</subject>
      </subjects>
      <subjects xml:lang="zh">
         <subject>可用性测试</subject>
         <subject>网站建置</subject>
         <subject>指南和检索工具</subject>
      </subjects>
   </metadata>
   <content>
      <introduction>
         <p>This is a basic handbook for planning and 
         conducting usability tests on Web sites. Usability 
         testing should be used in conjunction with other 
         expert review methods.</p>
         <p>This book has not been approved by the Web Site 
         Users Association.</p>
      </introduction>
      <part number="1">
         <chapter>
            <title>Planning then Conducting Usability 
            Tests</title> 
            <p>Take the following steps to plan usability 
            testing. <step number="1">Clarify and 
            articulate the goal of the usability testing.
            </step> <step number="2">Identify tasks which 
            are critical for users to be able to complete 
            successfully. </step> <step number="3">Compile 
            a script of questions or instructions which 
            will prompt the user to attempt those 
            tasks.</step> <step number="4">Identify your 
            users and begin recruiting them.</step> <step 
            number="5">Conduct a pretest on a few users.
            </step> <step number="6">Edit the script based 
            on insights gleaned from the pretest.</step> 
            <step number="7">Resume testing.</step></p>
         </chapter>
      </part>
      <part number="2">
         <chapter>
            <title>Conducting Usability Tests</title> 
            <p>Users can be tested at any computer 
            workstation <footnote>They may be most 
            comfortable at their own workstation.
            </footnote> or in a lab.</p>
            <p>Give the user the script, then assure them 
            that you are testing the Web site, not them. 
            Users are asked to verbalize their thoughts as 
            they complete the tasks. The event is recorded 
            or someone takes notes. It is often preferable 
            to have two testers, <footnote>Usability 
            testing can be done at great expense or on a 
            shoe string, using <testingProcedure>in-house 
            expertise</testingProcedure> or 
            <testingProcedure>contracting with human 
            computer interaction professionals
            </testingProcedure>.</footnote> one to ask the 
            questions, another to take notes. Testers should 
            offer no guidance or comments to the user. Mouse 
            movements, typing, expressions, and the user's 
            words should be recorded.</p>
         </chapter>
         <chapter>
            <title>Evaluating and Implementing Results</title> 
            <p>Compile the results and review collectively. 
            Make changes to the site to alleviate the problems 
            found in Web site components which were propagating 
            the largest number of or the most devastating errors. 
            Begin new iterations of testing and changes, until 
            users are successful in the accomplishing the 
            tasks.</p>
         </chapter>
      </part>
   </content>
</book>

<book number="3">
   <metadata>
      <title shortTitle="Usabilityguy Manuscript 
      Guide">John Wesley Usabilityguy: A Register of His 
      Papers</title>
      <authors>
         <author>Millicent Marigold</author>
         <author>Morty Marigold</author>
      </authors>
      <publicationInfo>      
         <publisher>Ersatz Manuscript Library</publisher>
         <dateIssued>1998</dateIssued>
         <dateRevised>2002</dateRevised>
      </publicationInfo>
      <price>21.49</price>   
      <subjects xml:lang="en">
         <subject>Computers</subject>
         <subject>Software evaluation</subject>
         <subject>Usability testing</subject>
         <subject>Manuscript collections</subject>
      </subjects>
      <subjects xml:lang="fr">
         <subject>Ordinateurs</subject>
         <subject>Évaluation de logiciels</subject>
         <subject>Tests d'ergonomie</subject>
         <subject>Collections de manuscrits</subject>
      </subjects>
      <subjects xml:lang="zh">
         <subject>计算机</subject>
         <subject>软件评价</subject>
         <subject>可用性测试</subject>
         <subject>手稿专藏</subject>
      </subjects>
   </metadata>
   <content>
      <introduction>
         <p>The papers of John Wesley Usabilityguy span the 
         years 1946-2001, with the bulk of the items 
         concentrated in the period from 1985 to 2001. The 
         papers feature his career as a developer of software 
         applications and usability specialist. The collection 
         consists of correspondence, memoranda, journals, 
         speeches, article drafts, book drafts, notes, charts, 
         graphs, family papers, clippings, printed matter, 
         photographs, résumés and other materials.</p>
      </introduction>
      <part number="1"> <container type="box">1-12</container>
         <title>Subject File, <date normalize="1930/1974">
         1930-1974</date></title>
         <introduction>
            <p>Correspondence, telegrams, memoranda, journals, 
            logs, testimony, approved travel orders, invitations, 
            charts, graphs, forms, biographical data, photographs, 
            book drafts, clippings and other printed matter, 
            résumés and miscellaneous material. Organized by 
            name of person or organization, topic, or type of 
            material.</p>
         </introduction>
         <component><container type="box">1</container>
           <componentTitle>Computers</componentTitle>
           <subComponent>
              <componentTitle>Software, 
              <componentDate normalize="1946/1947">1946-1947
              </componentDate>
              </componentTitle>
           </subComponent>
           <subComponent>
              <componentTitle>Human Computer Interaction 
              research, <componentDate normalize="1945/1952">
              1945-1952</componentDate>
              </componentTitle>
              <subsubComponent>
                 <componentTitle>Flow diagram, 
                 <componentDate normalize="1950">1950
                 </componentDate>
                 </componentTitle>
              </subsubComponent>
              <subsubComponent>
                 <componentTitle>General, 
                 <componentDate normalize="1947/1951">1947-1951
                 </componentDate>
                 </componentTitle>
              </subsubComponent>
              <subsubComponent><container type="box">2</container>
                 <componentTitle>Eye Movement research,
                 <componentDate normalize="1949/1950">1949-1950
                 </componentDate>
                 </componentTitle>
              </subsubComponent> 
              <subsubComponent>
                 <componentTitle>User profiling, 
                 <componentDate normalize="1950/1959">1950s
                 </componentDate>
                 </componentTitle>
              </subsubComponent>
            </subComponent>
         </component>
         <component>
           <componentTitle>Web User Appreciation Award, 
           <componentDate normalize="1956">1956</componentDate>
           </componentTitle>
         </component>
      </part>
      <part number="2"><container type="box">3-5</container>
         <title>Writings File, 
         <date normalize="1985/1999">1985-1999</date>
         </title>
         <introduction>
            <p>Correspondence, articles, book drafts, notes, 
            contracts, clippings, and printed matter. Arranged 
            alphabetically by type (articles, books, reports, 
            and miscellaneous) and therein alphabetically by 
            type of material, subject, or title.</p>
         </introduction>
         <component>
            <componentTitle>Writings by Usabilityguy
            </componentTitle>
            <subComponent>
               <componentTitle><componentDate normalize="1996">
               1996</componentDate>
               </componentTitle> 
               <subsubComponent>
                  <componentTitle>"How Many Users Are Enough 
                  for User Testing?"</componentTitle>
               </subsubComponent> 
               <subsubComponent>
                  <componentTitle>"How to Evaluate Results from 
                  User Tests."</componentTitle>
               </subsubComponent>
               <subsubComponent>
                  <container type="box">5</container>
                  <componentTitle>"When Are You Done Testing?"
                  </componentTitle>
               </subsubComponent>
               <subsubComponent>
                  <componentTitle>"Do-It-Yourself User Testing"
                  </componentTitle>
               </subsubComponent> 
            </subComponent>
         </component>
         <component>
            <componentTitle>Charitable Contributions
            </componentTitle> 
            <subComponent>
               <componentTitle>Diseases: AIDS, Hepatitis, 
               Tuberculosis <componentDate normalize=
               "1990/1999">1990-1999</componentDate>
               </componentTitle>
            </subComponent> 
            <subComponent>
               <componentTitle>Environmental Conservation: 
               Rivers <componentDate normalize="1995">1995
               </componentDate>
               </componentTitle>
            </subComponent>
         </component>
      </part>
   </content>
</book>
</books>

2 Use Case "WORD": Word and Phrase Queries

2.2 Queries and Results

3 Use Case "ELEMENT": Queries on XML Elements and Attributes

3.2 Queries and Results

4 Use Case "STOP-WORD": Queries Ignoring and Overriding Stop Words

4.2 Queries and Results

4.2.4 Q4 Query on Phrase Ignoring Multiple Stop Words

Find all books which have not been approved by a Web users organization.

This query finds a phrase ignoring multiple words which has been identified as stop words.

Expected Result:

5 Use Case "CHARACTER-MANIPULATION": Queries Manipulating Normalized Characters and Tokenized Words, Spaces, and Punctuation

5.2 Queries and Results

5.2.2 Q2 Query Returning Characters with and without Diacritics

Verify the existence of a résumé in the papers of John Wesley Usabilityguy.

This query finds a word whether its diacritics are present or not.

Expected Result:

<title>Usability Basics: How to Plan for and Conduct 
Usability Tests on Web Site Thereby Improving the 
Usability of Your Web Site</title> 
   <content>
      ...
         <p>Take the following steps to plan usability 
         testing. <step number="1">Clarify and 
         articulate the goal of the usability testing.
         </step> <step number="2">Identify tasks which 
         are critical for users to be able to complete 
         successfully. </step> <step number="3">Compile 
         a script of questions or instructions which 
         will prompt the user to attempt those 
         tasks.</step> <step number="4">Identify your 
         users and begin recruiting them.</step> <step 
         number="5">Conduct a pretest on a few users.
         </step> <step number="6">Edit the script based 
         on insights gleaned from the pretest.</step> 
         <step number="7">Resume testing.</step></p>
      ...     
   </content>       
   
<title>John Wesley Usabilityguy: A Register of His 
Papers</title>   
   <content>
      ...
         <p>The papers of John Wesley Usabilityguy span the 
         years 1946-2001, with the bulk of the items 
         concentrated in the period from 1985 to 2001. The 
         papers feature his career as a developer of software 
         applications and usability specialist. The collection 
         consists of correspondence, memoranda, journals, 
         speeches, article drafts, book drafts, notes, charts, 
         graphs, family papers, clippings, printed matter, 
         photographs, résumés and other materials.</p>
         ...
            <p>Correspondence, telegrams, memoranda, journals, 
            logs, testimony, approved travel orders, invitations, 
            charts, graphs, forms, biographical data, photographs, 
            book drafts, clippings and other printed matter, 
            résumés and miscellaneous material. Organized by 
            name of person or organization, topic, or type of 
            material.</p>
      ...     
   </content>

6 Use Case "WILDCARD": Character Wildcard (Prefix, Infix, Suffix) and Word Wildcard Queries

6.2 Queries and Results

6.2.5 Q5 0 or More Suffix Character Wildcard Query

Find all books with the word "test" with any suffix.

This query finds a word allowing any suffix (0 or more characters after the last character)

Expected Result:

<title>Improving the Usability of a Web Site Through 
Expert Reviews and Usability Testing</title>
   <content>
      ...
         <p>Expert reviews and usability testing are 
         methods of identifying problems in layout, 
         terminology, and navigation before they frustrate
         users and drive them away from your site.</p>
         ...
            <title>Usability Testing</title>
            <p>Once the problems identified by expert 
            reviews have been corrected, it is time to 
            conduct some tests of the site with your unique 
            audience or audiences by conducting usability 
            testing.</p>
      ...     
   </content>      						

<title>Usability Basics: How to Plan for and Conduct 
Usability Tests on Web Site Thereby Improving the 
Usability of Your Web Site</title>	
   <content>
      ...
         <p>This is a basic handbook for planning and 
         conducting usability tests on Web sites. Usability 
         testing should be used in conjunction with other 
         expert review methods.</p>
         ...
            <title>Planning then Conducting Usability 
            Tests</title> 
            <p>Take the following steps to plan usability 
            testing. <step number="1">Clarify and 
            articulate the goal of the usability testing.
            </step> <step number="2">Identify tasks which 
            are critical for users to be able to complete 
            successfully. </step> <step number="3">Compile 
            a script of questions or instructions which 
            will prompt the user to attempt those 
            tasks.</step> <step number="4">Identify your 
            users and begin recruiting them.</step> <step 
            number="5">Conduct a pretest on a few users.
            </step> <step number="6">Edit the script based 
            on insights gleaned from the pretest.</step> 
            <step number="7">Resume testing.</step></p>
            ...
            <title>Conducting Usability Tests</title> 
            <p>Users can be tested at any computer 
            workstation <footnote>They may be most 
            comfortable at their own workstation.
            </footnote> or in a lab.</p>
            <p>Give the user the script, then assure them 
            that you are testing the Web site, not them. 
            Users are asked to verbalize their thoughts as 
            they complete the tasks. The event is recorded 
            or someone takes notes. It is often preferable 
            to have two testers, <footnote>Usability 
            testing can be done at great expense or on a 
            shoe string, using <testingProcedure>in-house 
            expertise</testingProcedure> or 
            <testingProcedure>contracting with human 
            computer interaction professionals
            </testingProcedure>.</footnote> one to ask the 
            questions, another to take notes. Testers should 
            offer no guidance or comments to the user. Mouse 
            movements, typing, expressions, and the user's 
            words should be recorded.</p>
            ...
            <p>Compile the results and review collectively. 
            Make changes to the site to alleviate the problems 
            found in Web site components which were propagating 
            the largest number of or the most devastating errors. 
            Begin new iterations of testing and changes, until 
            users are successful in the accomplishing the 
            tasks.</p>
      ...     
   </content>      

<title>John Wesley Usabilityguy: A Register of His 
Papers</title>
   <content>
      ...           
         <p>Correspondence, telegrams, memoranda, journals, 
         logs, testimony, approved travel orders, invitations, 
         charts, graphs, forms, biographical data, photographs, 
         book drafts, clippings and other printed matter, 
         résumés and miscellaneous material. Organized by 
         name of person or organization, topic, or type of 
         material.</p>
         ...
               <componentTitle>"How Many Users Are Enough 
               for User Testing?"</componentTitle>
               ...   
               <componentTitle>"How to Evaluate Results from 
               User Tests."</componentTitle>
               ...
               <container type="box">5</container>
               <componentTitle>"When Are You Done Testing?"
               </componentTitle>
               ...
               <componentTitle>"Do-It-Yourself User Testing"
               </componentTitle>
      ...     
   </content>

6.2.6 Q6 0 or More Suffix Character Wildcard Query on a Part of a Word

Find all books with the phrases "usability testing" or "user testing".

This query finds a phrase allowing any suffix (0 or more characters after the last character) on a part of one of the words.

Expected Result:

<title>Improving the Usability of a Web Site Through 
Expert Reviews and Usability Testing</title>
   <content>
      ...
         <p>Expert reviews and usability testing are 
         methods of identifying problems in layout, 
         terminology, and navigation before they frustrate
         users and drive them away from your site.</p>
         ...
            <title>Usability Testing</title> 
            <p>Once the problems identified by expert 
            reviews have been corrected, it is time to 
            conduct some tests of the site with your unique 
            audience or audiences by conducting usability
            testing.</p>     
      ...     
   </content>      
   
<title>Usability Basics: How to Plan for and Conduct 
Usability Tests on Web Site Thereby Improving the 
Usability of Your Web Site</title> 
   <content>
      ...
         <p>This is a basic handbook for planning and 
         conducting usability tests on Web sites. Usability
         testing should be used in conjunction with other 
         expert review methods.</p>
         ...
            <p>Take the following steps to plan usability
            testing. <step number="1">Clarify and 
            articulate the goal of the usability testing.
            </step> <step number="2">Identify tasks which 
            are critical for users to be able to complete 
            successfully. </step> <step number="3">Compile 
            a script of questions or instructions which 
            will prompt the user to attempt those 
            tasks.</step> <step number="4">Identify your 
            users and begin recruiting them.</step> <step 
            number="5">Conduct a pretest on a few users.
            </step> <step number="6">Edit the script based 
            on insights gleaned from the pretest.</step> 
            <step number="7">Resume testing.</step></p>
            ...
            <p>Give the user the script, then assure them 
            that you are testing the Web site, not them. 
            Users are asked to verbalize their thoughts as 
            they complete the tasks. The event is recorded 
            or someone takes notes. It is often preferable 
            to have two testers, <footnote>Usability
            testing can be done at great expense or on a 
            shoe string, using <testingProcedure>in-house 
            expertise</testingProcedure> or 
            <testingProcedure>contracting with human 
            computer interaction professionals
            </testingProcedure>.</footnote> one to ask the 
            questions, another to take notes. Testers should 
            offer no guidance or comments to the user. Mouse 
            movements, typing, expressions, and the user's 
            words should be recorded.</p>
      ...     
   </content>      

<title>John Wesley Usabilityguy: A Register of His 
Papers</title> 
   <content>
      ...
         <componentTitle>"How Many Users Are Enough 
         for User Testing?"</componentTitle>
         ...
         <componentTitle>"Do-It-Yourself User Testing"
         </componentTitle>
         </subsubComponent>
      ...     
   </content>

6.2.8 Q8 Specified Range Suffix Characters Wildcard Query

Find all books with the word "test" with any three to four character suffix.

This query finds a word allowing a number of characters within a specified range in a suffix (specified range of characters after the last character)

Expected Result:

<book number="1">
   <content>
      ...
         <p>Expert reviews and usability testing are 
         methods of identifying problems in layout, 
         terminology, and navigation before they frustrate
         users and drive them away from your site.</p>
         ...
            <title>Usability Testing</title>
            <p>Once the problems identified by expert 
            reviews have been corrected, it is time to 
            conduct some tests of the site with your unique 
            audience or audiences by conducting usability 
            testing.</p>
      ...     
   </content> 
</book>     						

<book number="2">
   <content>
      ...
         <p>This is a basic handbook for planning and 
         conducting usability tests on Web sites. Usability 
         testing should be used in conjunction with other 
         expert review methods.</p>
         ...
            <p>Take the following steps to plan usability 
            testing. <step number="1">Clarify and 
            articulate the goal of the usability testing.
            </step> <step number="2">Identify tasks which 
            are critical for users to be able to complete 
            successfully. </step> <step number="3">Compile 
            a script of questions or instructions which 
            will prompt the user to attempt those 
            tasks.</step> <step number="4">Identify your 
            users and begin recruiting them.</step> <step 
            number="5">Conduct a pretest on a few users.
            </step> <step number="6">Edit the script based 
            on insights gleaned from the pretest.</step> 
            <step number="7">Resume testing.</step></p>
            ...
            <p>Give the user the script, then assure them 
            that you are testing the Web site, not them. 
            Users are asked to verbalize their thoughts as 
            they complete the tasks. The event is recorded 
            or someone takes notes. It is often preferable 
            to have two testers, <footnote>Usability 
            testing can be done at great expense or on a 
            shoe string, using <testingProcedure>in-house 
            expertise</testingProcedure> or 
            <testingProcedure>contracting with human 
            computer interaction professionals
            </testingProcedure>.</footnote> one to ask the 
            questions, another to take notes. Testers should 
            offer no guidance or comments to the user. Mouse 
            movements, typing, expressions, and the user's 
            words should be recorded.</p>
            ...
            <p>Compile the results and review collectively. 
            Make changes to the site to alleviate the problems 
            found in Web site components which were propagating 
            the largest number of or the most devastating errors. 
            Begin new iterations of testing and changes, until 
            users are successful in the accomplishing the 
            tasks.</p>
      ...     
   </content> 
</book>     

<book number="3">
   <content>
      ...
         <componentTitle>"How Many Users Are Enough 
         for User Testing?"</componentTitle>
         ...
         <container type="box">5</container>
         <componentTitle>"When Are You Done Testing?"
         </componentTitle>
         ...
         <componentTitle>"Do-It-Yourself User Testing"
         </componentTitle>
      ...     
   </content>
</book>

6.2.10 Q10 Specified Range Word Wildcard Query

Find all books with a phrase which begins with "propagating", has up to ten words in the middle, and ends with "errors".

This query finds a phrase where a number of words within a specified range (represented by wildcards) are inserted after the first word and before the last.

Expected Result:

7 Use Case "STEMMING": Word Stemming Queries

7.2 Queries and Results

7.2.1 Q1 Single Word Stemming Query

Find all books with the word "test".

This query finds words in an element and its descendants applying a stemming algorithm.

Expected Result:

<title>Improving the Usability of a Web Site Through 
Expert Reviews and Usability Testing</title>
   <content>
      ...
         <p>Expert reviews and usability testing are 
         methods of identifying problems in layout, 
         terminology, and navigation before they frustrate
         users and drive them away from your site.</p>
         ...
            <title>Usability Testing</title>
            <p>Once the problems identified by expert 
            reviews have been corrected, it is time to 
            conduct some tests of the site with your unique 
            audience or audiences by conducting usability 
            testing.</p>
      ...     
   </content>      						

<title>Usability Basics: How to Plan for and Conduct 
Usability Tests on Web Site Thereby Improving the 
Usability of Your Web Site</title>	
   <content>
      ...
         <p>This is a basic handbook for planning and 
         conducting usability tests on Web sites. Usability 
         testing should be used in conjunction with other 
         expert review methods.</p>
         ...
            <title>Planning then Conducting Usability 
            Tests</title> 
            <p>Take the following steps to plan usability 
            testing. <step number="1">Clarify and 
            articulate the goal of the usability testing.
            </step> <step number="2">Identify tasks which 
            are critical for users to be able to complete 
            successfully. </step> <step number="3">Compile 
            a script of questions or instructions which 
            will prompt the user to attempt those 
            tasks.</step> <step number="4">Identify your 
            users and begin recruiting them.</step> <step 
            number="5">Conduct a pretest on a few users.
            </step> <step number="6">Edit the script based 
            on insights gleaned from the pretest.</step> 
            <step number="7">Resume testing.</step></p>
            ...
            <title>Conducting Usability Tests</title> 
            <p>Users can be tested at any computer 
            workstation <footnote>They may be most 
            comfortable at their own workstation.
            </footnote> or in a lab.</p>
            ...
            <p>Give the user the script, then assure them 
            that you are testing the Web site, not them. 
            Users are asked to verbalize their thoughts as 
            they complete the tasks. The event is recorded 
            or someone takes notes. It is often preferable 
            to have two testers, <footnote>Usability 
            testing can be done at great expense or on a 
            shoe string, using <testingProcedure>in-house 
            expertise</testingProcedure> or 
            <testingProcedure>contracting with human 
            computer interaction professionals
            </testingProcedure>.</footnote> one to ask the 
            questions, another to take notes. Testers should 
            offer no guidance or comments to the user. Mouse 
            movements, typing, expressions, and the user's 
            words should be recorded.</p>
            ...
            <p>Compile the results and review collectively. 
            Make changes to the site to alleviate the problems 
            found in Web site components which were propagating 
            the largest number of or the most devastating errors. 
            Begin new iterations of testing and changes, until 
            users are successful in the accomplishing the 
            tasks.</p>
      ...     
   </content>      

<title>John Wesley Usabilityguy: A Register of His 
Papers</title>
   <content>
      ...           
         <componentTitle>"How Many Users Are Enough 
         for User Testing?"</componentTitle>
         ...
         <componentTitle>"How to Evaluate Results from 
         User Tests."</componentTitle>
         ...
         <container type="box">5</container>
         <componentTitle>"When Are You Done Testing?"
         </componentTitle>
         ...
         <componentTitle>"Do-It-Yourself User Testing"
         </componentTitle>
      ...     
   </content>

7.2.2 Q2 Multiple Word Stemming Query

Find all books with the phrases "usability testing" or "user testing".

This query finds phrases in an element and its descendants applying a stemming algorithm to multiple words.

Expected Result:

<title>Improving the Usability of a Web Site Through 
Expert Reviews and Usability Testing</title>
   <content>
      ...
         <p>Expert reviews and usability testing are 
         methods of identifying problems in layout, 
         terminology, and navigation before they frustrate
         users and drive them away from your site.</p>
         ...
            <title>Usability Testing</title> 
            <p>Once the problems identified by expert 
            reviews have been corrected, it is time to 
            conduct some tests of the site with your unique 
            audience or audiences by conducting usability
            testing.</p>     
      ...     
   </content>      
   
<title>Usability Basics: How to Plan for and Conduct 
Usability Tests on Web Site Thereby Improving the 
Usability of Your Web Site</title> 
   <content>
      ...
         <p>This is a basic handbook for planning and 
         conducting usability tests on Web sites. Usability
         testing should be used in conjunction with other 
         expert review methods.</p>
         ...
            <p>Take the following steps to plan usability
            testing. <step number="1">Clarify and 
            articulate the goal of the usability testing.
            </step> <step number="2">Identify tasks which 
            are critical for users to be able to complete 
            successfully. </step> <step number="3">Compile 
            a script of questions or instructions which 
            will prompt the user to attempt those 
            tasks.</step> <step number="4">Identify your 
            users and begin recruiting them.</step> <step 
            number="5">Conduct a pretest on a few users.
            </step> <step number="6">Edit the script based 
            on insights gleaned from the pretest.</step> 
            <step number="7">Resume testing.</step></p>
            ...
            <p>Give the user the script, then assure them 
            that you are testing the Web site, not them. 
            Users are asked to verbalize their thoughts as 
            they complete the tasks. The event is recorded 
            or someone takes notes. It is often preferable 
            to have two testers, <footnote>Usability
            testing can be done at great expense or on a 
            shoe string, using <testingProcedure>in-house 
            expertise</testingProcedure> or 
            <testingProcedure>contracting with human 
            computer interaction professionals
            </testingProcedure>.</footnote> one to ask the 
            questions, another to take notes. Testers should 
            offer no guidance or comments to the user. Mouse 
            movements, typing, expressions, and the user's 
            words should be recorded.</p>
      ...     
   </content>      

<title>John Wesley Usabilityguy: A Register of His 
Papers</title> 
   <content>
      ...
         <componentTitle>"How Many Users Are Enough 
         for User Testing?"</componentTitle>
         ...
         <componentTitle>"Do-It-Yourself User Testing"
         </componentTitle>
      ...     
   </content>

8 Use Case "THESAURUS": Queries Which Use Thesauri, Dictionaries, and Taxonomies

8.2 Queries and Results

8.2.3 Q3 Query on Broader Terms Identified by a Thesaurus

Are there any letters or holiday cards in John Wesley Usabilityguy's papers?

This query finds a word in one element or its descendants using a thesaurus to identify broader terms.

Expected Result:

8.2.5 Q5 Query on Word Spelled Similarly to Other Words

Find all books which contain words that are close in spelling to "sucessfull".

This query finds words in an element and its descendants using a dictionary of words that are spelled similarly.

Expected Result:

9 Use Case "BOOLEAN": Or, And, and Not Queries

9.2 Queries and Results

9.2.1 Q1 Or Query

Find all books with the words "web" or "software" in the text.

This query finds one or both of the words in an element and its descendants.

Expected Result:

<title>Improving the Usability of a Web Site Through 
Expert Reviews and Usability Testing</title>
   <content>
      ...
         <p>The usability of a Web site is how well the 
         site supports the user in achieving specified 
         goals. A Web site should facilitate learning, 
         and enable efficient and effective task 
         completion, while propagating few errors. 
         Satisfaction with the site is also important. 
         The user must not only be well-served, but must 
         feel well-served.</p> 
         ...
         <p>This book has been approved by the Web Site 
         Users Association.</p>
         ...
            <p>Expert reviewers identify problems 
            and recommend changes to web sites based 
            on research in human computer interaction 
            and their experience in the field.</p> 
            ...
            <p>Expert review methods should be 
            initiated early in the development process, 
            as soon as paper <b>p</b>rototypes 
            (hand-drawn pictures of Web pages) or 
            <b>w</b>ireframes (electronic mockups) are 
            available. They should be conducted using 
            the hardware and software similar to that 
            employed by users.</p>
            ...
            <p>Expert reviewers critique an interface to 
            determine conformance with recognized 
            usability principles. <footnote>One of the 
            best known lists of heuristics is <citation 
            url="http://www.useit.com/papers/heuristic
            /heuristic_list.html">Ten Usability 
            Heuristics by Jacob Nielson</citation>. Another 
            is <citation url="http://usability.gov
            /guidelines/index.html"> Research-Based Web 
            Design and Usability Guidelines</citation>
            </footnote></p> 
            ...
            <p>Expert reviewers evaluate Web site 
            understandability and ease of learning while 
            performing specified tasks. They walk through 
            the site answering questions such as "Would a 
            user know by looking at the screen how to 
            complete the first step of the task?" and "If 
            the user completed the first step, would the 
            user know what to do next?," with the goal of 
            identifying any obstacles to completing the 
            task and assessing whether the user would 
            cognitively be aware that he was successful in 
            completing a step in the process.</p>
      ...     
   </content> 
        
<title>Usability Basics: How to Plan for and Conduct 
Usability Tests on Web Site Thereby Improving the 
Usability of Your Web Site</title> 
   <content>
      ...
         <p>This is a basic handbook for planning and 
         conducting usability tests on Web sites. Usability 
         testing should be used in conjunction with other 
         expert review methods.</p>
         <p>This book has not been approved by the Web Site 
         Users Association.</p>
         ...
            <p>Give the user the script, then assure them 
            that you are testing the Web site, not them. 
            Users are asked to verbalize their thoughts as 
            they complete the tasks. The event is recorded 
            or someone takes notes. It is often preferable 
            to have two testers, <footnote>Usability 
            testing can be done at great expense or on a 
            shoe string, using <testingProcedure>in-house 
            expertise</testingProcedure> or 
            <testingProcedure>contracting with human 
            computer interaction professionals
            </testingProcedure>.</footnote> one to ask the 
            questions, another to take notes. Testers should 
            offer no guidance or comments to the user. Mouse 
            movements, typing, expressions, and the user's 
            words should be recorded.</p>
            ...
            <p>Compile the results and review collectively. 
            Make changes to the site to alleviate the problems 
            found in Web site components which were propagating 
            the largest number of or the most devastating errors. 
            Begin new iterations of testing and changes, until 
            users are successful in the accomplishing the 
           tasks.</p>
      ...     
   </content>     
    
<title>John Wesley Usabilityguy: A Register of His 
Papers</title>   
   <content>
      ...
         <p>The papers of John Wesley Usabilityguy span the 
         years 1946-2001, with the bulk of the items 
         concentrated in the period from 1985 to 2001. The 
         papers feature his career as a developer of software 
         applications and usability specialist. The collection 
         consists of correspondence, memoranda, journals, 
         speeches, article drafts, book drafts, notes, charts, 
         graphs, family papers, clippings, printed matter, 
         photographs, résumés and other materials.</p>
         ...
            <componentTitle>Software, 
            <componentDate normalize="1946/1947">1946-1947
            </componentDate>
            </componentTitle>
            ...
            <componentTitle>Web User Appreciation Award, 
            <componentDate normalize="1956">1956</componentDate>
            </componentTitle>
      ...     
   </content>

9.2.2 Q2 Or Query on More than Two Words

Find all books with the words "web" or "software" or "internet" in the text.

This query finds any or all of the words in an element and its descendants.

Expected Result:

<title>Improving the Usability of a Web Site Through 
Expert Reviews and Usability Testing</title>
   <content>
       ...
         <p>The usability of a Web site is how well the 
         site supports the user in achieving specified 
         goals. A Web site should facilitate learning, 
         and enable efficient and effective task 
         completion, while propagating few errors. 
         Satisfaction with the site is also important. 
         The user must not only be well-served, but must 
         feel well-served.</p> 
         ...
         <p>This book has been approved by the Web Site 
         Users Association.</p>
         ...
            <p>Expert reviewers identify problems 
            and recommend changes to web sites based 
            on research in human computer interaction 
            and their experience in the field.</p> 
            ...
            <p>Expert review methods should be 
            initiated early in the development process, 
            as soon as paper <b>p>/b>rototypes 
            (hand-drawn pictures of Web pages) or 
            <b>w</b>ireframes (electronic mockups) are 
            available. They should be conducted using 
            the hardware and software similar to that 
            employed by users.</p>
            ...
            <p>Expert reviewers critique an interface to 
            determine conformance with recognized 
            usability principles. <footnote>One of the 
            best known lists of heuristics is <citation 
            url="http://www.useit.com/papers/heuristic
            /heuristic_list.html">Ten Usability 
            Heuristics by Jacob Nielson</citation>. Another 
            is <citation url="http://usability.gov
            /guidelines/index.html"> Research-Based Web 
            Design and Usability Guidelines</citation>
            </footnote></p> 
            ...
            <p>Expert reviewers evaluate Web site 
            understandability and ease of learning while 
            performing specified tasks. They walk through 
            the site answering questions such as "Would a 
            user know by looking at the screen how to 
            complete the first step of the task?" and "If 
            the user completed the first step, would the 
            user know what to do next?," with the goal of 
            identifying any obstacles to completing the 
            task and assessing whether the user would 
            cognitively be aware that he was successful in 
            completing a step in the process.</p>
      ...     
   </content> 
        
<title>Usability Basics: How to Plan for and Conduct 
Usability Tests on Web Site Thereby Improving the 
Usability of Your Web Site</title> 
   <content>
      ...
         <p>This is a basic handbook for planning and 
         conducting usability tests on Web sites. Usability 
         testing should be used in conjunction with other 
         expert review methods.</p>
         <p>This book has not been approved by the Web Site 
         Users Association.</p>
         ...
            <p>Give the user the script, then assure them 
            that you are testing the Web site, not them. 
            Users are asked to verbalize their thoughts as 
            they complete the tasks. The event is recorded 
            or someone takes notes. It is often preferable 
            to have two testers, <footnote>Usability 
            testing can be done at great expense or on a 
            shoe string, using <testingProcedure>in-house 
            expertise</testingProcedure> or 
            <testingProcedure>contracting with human 
            computer interaction professionals
            </testingProcedure>.</footnote> one to ask the 
            questions, another to take notes. Testers should 
            offer no guidance or comments to the user. Mouse 
            movements, typing, expressions, and the user's 
            words should be recorded.</p>
            ...
            <p>Compile the results and review collectively. 
            Make changes to the site to alleviate the problems 
            found in Web site components which were propagating 
            the largest number of or the most devastating errors. 
            Begin new iterations of testing and changes, until 
            users are successful in the accomplishing the 
            tasks.</p>
      ...     
   </content>     
    
<title>John Wesley Usabilityguy: A Register of His 
Papers</title>   
   <content>
      ...
         <p>The papers of John Wesley Usabilityguy span the 
         years 1946-2001, with the bulk of the items 
         concentrated in the period from 1985 to 2001. The 
         papers feature his career as a developer of software 
         applications and usability specialist. The collection 
         consists of correspondence, memoranda, journals, 
         speeches, article drafts, book drafts, notes, charts, 
         graphs, family papers, clippings, printed matter, 
         photographs, résumés and other materials.</p>
         ...
            <componentTitle>Software, 
            <componentDate normalize="1946/1947">1946-1947
            </componentDate>
            </componentTitle>
            ...
            <componentTitle>Web User Appreciation Award, 
            <componentDate normalize="1956">1956</componentDate>
            </componentTitle>
      ...     
   </content>

9.2.4 Q4 And Query

Find all books with the words "web" "software" in the text.

This query finds all of the words in one element and its descendants.

Expected Result:

<title>Improving the Usability of a Web Site Through 
Expert Reviews and Usability Testing</title>
   <content>
      ...
         <p>The usability of a Web site is how well the 
         site supports the user in achieving specified 
         goals. A Web site should facilitate learning, 
         and enable efficient and effective task 
         completion, while propagating few errors. 
         Satisfaction with the site is also important. 
         The user must not only be well-served, but must 
         feel well-served.</p> 
         ...
         <p>This book has been approved by the Web Site 
         Users Association.</p>
         ...
            <p>Expert reviewers identify problems 
            and recommend changes to web sites based 
            on research in human computer interaction 
            and their experience in the field.</p> 
            ...
            <p>Expert review methods should be 
            initiated early in the development process, 
            as soon as paper <b>p</b>rototypes 
           (hand-drawn pictures of Web pages) or 
            <b>w</b>ireframes (electronic mockups) are 
            available. They should be conducted using 
            the hardware and software similar to that 
            employed by users.</p>
            ...
            <p>Expert reviewers critique an interface to 
            determine conformance with recognized 
            usability principles. <footnote>One of the 
            best known lists of heuristics is <citation 
            url="http://www.useit.com/papers/heuristic
            /heuristic_list.html">Ten Usability 
            Heuristics by Jacob Nielson</citation>. Another 
            is <citation url="http://usability.gov
            /guidelines/index.html"> Research-Based Web 
            Design and Usability Guidelines</citation>
            </footnote></p> 
            ...
            <p>Expert reviewers evaluate Web site 
            understandability and ease of learning while 
            performing specified tasks. They walk through 
            the site answering questions such as "Would a 
            user know by looking at the screen how to 
            complete the first step of the task?" and "If 
            the user completed the first step, would the 
            user know what to do next?," with the goal of 
            identifying any obstacles to completing the 
            task and assessing whether the user would 
            cognitively be aware that he was successful in 
            completing a step in the process.</p>
      ...     
   </content>   
    
<title>John Wesley Usabilityguy: A Register of His 
Papers</title>   
   <content>
      ...
         <p>The papers of John Wesley Usabilityguy span the 
         years 1946-2001, with the bulk of the items 
         concentrated in the period from 1985 to 2001. The 
         papers feature his career as a developer of software 
         applications and usability specialist. The collection 
         consists of correspondence, memoranda, journals, 
         speeches, article drafts, book drafts, notes, charts, 
         graphs, family papers, clippings, printed matter, 
         photographs, résumés and other materials.</p>
         ...
            <componentTitle>Software, 
            <componentDate normalize="1946/1947">1946-1947
            </componentDate>
            </componentTitle>
            ...
            <componentTitle>Web User Appreciation Award, 
            <componentDate normalize="1956">1956</componentDate>
            </componentTitle>
      ...     
   </content> 

9.2.10 Q10 Mild Not Query Where Second Operand is a Subset of the First Operand

Find all books with listings for résumés, drafts, and correspondence, and not book drafts, in the metadata or text.

This query finds books with multiple words, not considering a phrase containing one of those words, in an element.

Expected Result:

10 Use Case "DISTANCE": Queries on Distance Relationships Including Proximity, Window, Sentence, and Paragraph Queries

10.2 Queries and Results

11 Use Case "ADVANCED-WORD": Advanced Word and Phrase Queries

11.2 Queries and Results

12 Use Case "SCORE": Queries Unique to Score

12.2 Queries and Results

12.2.1 Q1 Multiple Word Query

Find all book text containing the words "task" "completion" "goals".

This query finds multiple words within an element, returning books containing all the words first, then those with fewer, then those with one.

Expected Result:

<book number="1">
   <content>
      ...
         <p>The usability of a Web site is how well the 
         site supports the user in achieving specified 
         goals. A Web site should facilitate learning, 
         and enable efficient and effective task 
         completion, while propagating few errors. 
         Satisfaction with the site is also important. 
         The user must not only be well-served, but must 
         feel well-served.</p> 
         ..
            <p>Expert reviewers evaluate Web site 
            understandability and ease of learning while 
            performing specified tasks. They walk through 
            the site answering questions such as "Would a 
            user know by looking at the screen how to 
            complete the first step of the task?" and "If 
            the user completed the first step, would the 
            user know what to do next?," with the goal of 
            identifying any obstacles to completing the 
            task and assessing whether the user would 
            cognitively be aware that he was successful in 
            completing a step in the process.</p>
            ...
            <p>Users are asked to complete tasks which 
            measure the success of the information 
            architecture and navigational elements of the 
            site.</p>
      ...     
   </content>
</book>  
                  
<book number="2">
   <content>
      ...              
         <p>Take the following steps to plan usability 
         testing. <step number="1">Clarify and 
         articulate the goal of the usability testing.
         </step> <step number="2">Identify tasks which 
         are critical for users to be able to complete 
         successfully. </step> <step number="3">Compile 
         a script of questions or instructions which 
         will prompt the user to attempt those 
         tasks.</step> <step number="4">Identify your 
         users and begin recruiting them.</step> <step 
         number="5">Conduct a pretest on a few users.
         </step> <step number="6">Edit the script based 
         on insights gleaned from the pretest.</step> 
         <step number="7">Resume testing.</step></p>
         ...
         <p>Give the user the script, then assure them 
         that you are testing the Web site, not them. 
         Users are asked to verbalize their thoughts as 
         they complete the tasks. The event is recorded 
         or someone takes notes. It is often preferable 
         to have two testers, <footnote>Usability 
         testing can be done at great expense or on a 
         shoe string, using <testingProcedure>in-house 
         expertise</testingProcedure> or 
         <testingProcedure>contracting with human 
         computer interaction professionals
         </testingProcedure>.</footnote> one to ask the 
         questions, another to take notes. Testers should 
         offer no guidance or comments to the user. Mouse 
         movements, typing, expressions, and the user's 
         words should be recorded.</p>
         ...
         <p>Compile the results and review collectively. 
         Make changes to the site to alleviate the problems 
         found in Web site components which were propagating 
         the largest number of or the most devastating errors. 
         Begin new iterations of testing and changes, until 
         users are successful in the accomplishing the 
         tasks.</p>
      ...     
   </content>
</book>

12.2.6 Q6 Query Which Returns All Documents Ordered

Find all books on software.

This query performs a word query, returns all the documents in the database, and orders them returning those with found word first, those without last.

Expected Result:

13 Use Case "STRUCTURE": Queries using XPath Axes

13.2 Queries and Results

13.2.9 Q9 Query on Different Elements in Different Sub-Trees

Find all books with a title containing the word "usability", with a book introduction containing the word "satisfaction", and with a part introduction containing the phrase "identify problems".

This query finds a word in one element, then finds words and phrases in different descendants of that element.

Expected Result:

14 Use Case "IGNORE": Queries Ignoring Tags and Content

14.2 Queries and Results

14.2.8 Q8 Phrase Query Ignoring Tags and Content of Descendant Elements Identified by an XPath Query

Find book chapters containing the phrase "two testers, one to ask questions, another to take notes" ignoring footnotes on testing procedures.

This query must cross element boundaries, ignoring the tags of a descendant element and the content of this element only if this element refers to testing procedures.

Expected Result:

14.2.9 Q9 Proximity Query Ignoring All Tags of Descendant Elements

Find book chapters on usability tests and contracting with computer professionals where all tags of descendant elements are ignored.

This query crosses element boundaries, ignoring the tags, but not the content of descendants.

Expected Result:

14.2.10 Q10 Proximity Query Ignoring All Tags and Content of Descendant Elements

Find advice on whether an observer in a usability test should correct or help the user. Return the chapter containing the found words and titles for the book and the chapter.

This query ignores intervening tags and content of a descendant element.

Expected Result:

15 Use Case "COMPOSABILITY": Queries Illustrating Composability of Full-Text with Other XQuery Functionality

15.2 Queries and Results

16 Use Case "COMPLEX": Complex Queries

16.2 Queries and Results

16.2.3 Q3 Nested Proximity Query with Wildcards, Thesaurus Support, and Stemming

Find all books on usability testing which quote Millicent Marigold on the value of multiple iterations.

This query finds multiple words, allowing a specified number of intervening words in any order, then finds those words and a phrase, allowing a specified number of words between the words and the phrase in any order. It uses wildcards, thesaurus support, and stemming.

Expected Result:

16.2.4 Q4 Query Combining Proximity, Boolean, and Stemming Queries which Ignores Tags and Content of a Descendant Element

Find advice on whether an observer in a usability test should correct or help the user in a book co-authored by Montana Marigold.

This query finds words in close proximity to each other, those words in close proximity to one of four other words, finds both of those near a phrase, ignoring the tags and content of a descendant element.

Expected Result:

16.2.5 Q5 Query on Different Elements in Different Sub-Trees with a Conditional Return

For each book with a title containing the word "usability", with a book introduction containing the word "satisfaction", and a part introduction containing the phrase "identify problems", return the book title and the authors if it has authors, or return the book title and publisher, if it has no authors, then return the content surrounding the found words..

This query finds words and a phrase in different elements, then finds a descendant of the first element and it contains a conditional return.

Expected Result:

16.2.6 Q6 Query Combining Full-Text with Character String, Node, and Date Queries

Find introductions in books, which were published in New York after 2000 and have more than one author, which include listings for résumés, drafts, and correspondence.

This query finds words in an element and combines the result with a character string query on a different element, counts the number of another element, runs a greater than comparison on a date element, and combines the results.

Expected Result:

A Acknowledgements

The editors thank the members of the Full-Text Task Force of the XML Query and XSL Working Groups, which produced the material in this document. Special thanks to Steve Buxton for providing the schema.

The editors thank the following staff at the Library of Congress for providing and improving sample data and queries: Ardith Bausenbach, Caroline Arms, Marla Banks, Susan David, Ray Denenberg, Louis Drummond, Bohdan Kantor, Mary A. Lacy, Joe Pagano, Betsy Reifsnyder, Belinda D. Urquiza, and Anne Washington.

Thanks also to Bohdan Kantor, Foster Zhang, François Yergeau, and Michel Biezunski for assistance in translating the subjects into Chinese and French.

The editors also wish to thank the members of the W3C Internationalization Working Group for their assistance.

B References