Contains query nodes that are commonly used by query parser implementations

Query Nodes

The package org.apache.lucene.queryParser.nodes contains all the basic query nodes. The interface that represents a query node is {@link org.apache.lucene.queryParser.core.nodes.QueryNode}. Every query node must be serializable.

{@link org.apache.lucene.queryParser.core.nodes.QueryNode}s are used by the text parser to create a syntax tree. These nodes are designed to be used by UI or other text parsers. The default Lucene text parser is {@link org.apache.lucene.queryParser.standard.parser.StandardSyntaxParser}, it implements Lucene's standard syntax.

{@link org.apache.lucene.queryParser.core.nodes.QueryNode} interface should be implemented by all query nodes, the class {@link org.apache.lucene.queryParser.core.nodes.QueryNodeImpl} implements {@link org.apache.lucene.queryParser.core.nodes.QueryNode} and is extended by all current query node implementations.

A query node tree can be printed to the a stream, and it generates a pseudo XML representation with all the nodes.

A query node tree can also generate a query string that can be parsed back by the original text parser, at this point only the standard lucene syntax is supported.

Grouping nodes:

Leaf Nodes:

Utility Nodes: