# XML based query syntax

This module contains:

- a modular Lucene Query Parser where queries are expressed as XML
- JUnit test
- DTD schemas and generated documentation
- Example XML queries
- Test index (subset of Reuters 21578)

The original motivation for creating this package was outlined and discussed here.

Parser support includes:

- "Span" queries
- Simple caching for filters
- "Like this" queries
- Boolean, Term, and UserInput (parsed with existing query parser)
- BoostingQuery - a class that can downgrade scores for hits on certain terms rather than the hard-line approach taken by BooleanClause.Occurs.MUST_NOT
- FilteredQuery, RangeFilter, DuplicateFilter and "TermsFilter" for non-sequential terms
- "FuzzyLikeThis" a new query which is a cross between "LikeThis" and "fuzzy" but with better scoring of fuzzy terms than standard fuzzy queries
- A modular design with expandable support for new query/filter types

This code is dependent on the "queries" module although the "CoreParser" can be compiled with just Lucene core if required