# Lucene 10.3.2 queryparser API

# Apache Lucene QueryParsers.

This module provides a number of query parsers:

- flexible query parser
- classic query parser
- complex phrase query parser
- extendable query parser
- surround query parser (span queries)
- query parser building Query objects from XML

If you're new to query parsers, the flexible query parser's `StandardQueryParser` is probably a good place to start.

Packages
Package
Description
org.apache.lucene.queryparser.charstream
This package contains reusable parts for javacc-generated grammars (query parsers).
org.apache.lucene.queryparser.classic
A simple query parser implemented with JavaCC.
org.apache.lucene.queryparser.complexPhrase
QueryParser which permits complex phrase query syntax eg "(john jon jonathan~) peters*"
org.apache.lucene.queryparser.ext
Extendable QueryParser provides a simple and flexible extension mechanism by overloading query field names.
org.apache.lucene.queryparser.flexible.core
Core classes of the flexible query parser framework.
org.apache.lucene.queryparser.flexible.core.builders
Necessary classes to implement query builders.
org.apache.lucene.queryparser.flexible.core.config
Base classes used to configure the query processing.
org.apache.lucene.queryparser.flexible.core.messages
Messages usually used by query parser implementations.
org.apache.lucene.queryparser.flexible.core.nodes
Query nodes commonly used by query parser implementations.
org.apache.lucene.queryparser.flexible.core.parser
Necessary interfaces to implement text parsers.
org.apache.lucene.queryparser.flexible.core.processors
Interfaces and implementations used by query node processors
org.apache.lucene.queryparser.flexible.core.util
Utility classes to used with the Query Parser.
org.apache.lucene.queryparser.flexible.messages
For Native Language Support (NLS), system of software internationalization.
org.apache.lucene.queryparser.flexible.precedence
Precedence Query Parser Implementation
org.apache.lucene.queryparser.flexible.precedence.processors
Lucene Precedence Query Parser Processors
org.apache.lucene.queryparser.flexible.standard
Lucene Flexible Query Parser Implementation
org.apache.lucene.queryparser.flexible.standard.builders
Standard Lucene Query Node Builders.
org.apache.lucene.queryparser.flexible.standard.config
Standard Lucene Query Configuration.
org.apache.lucene.queryparser.flexible.standard.nodes
Standard Lucene Query Nodes.
org.apache.lucene.queryparser.flexible.standard.nodes.intervalfn
This package contains classes that implement interval function support for the standard syntax parser.
org.apache.lucene.queryparser.flexible.standard.parser
Lucene Query Parser
org.apache.lucene.queryparser.flexible.standard.processors
Lucene Query Node Processors.
org.apache.lucene.queryparser.simple
A simple query parser for human-entered queries.
org.apache.lucene.queryparser.surround.parser
This package contains the QueryParser.jj source file for the Surround parser.
org.apache.lucene.queryparser.surround.query
This package contains SrndQuery and its subclasses.
org.apache.lucene.queryparser.xml
Parser that produces Lucene Query objects from XML streams.
org.apache.lucene.queryparser.xml.builders
XML Parser factories for different Lucene Query/Filters.