# This resource bundle contains Flexible Query Parser messages.

#<CREATEDBY>Apache Lucene Community</CREATEDBY>
#  <REPLACEMENT arg="{0}" value="detailed_message"/>
INVALID_SYNTAX = Syntax Error: {0}

#<CREATEDBY>Apache Lucene Community</CREATEDBY>
#  <REPLACEMENT arg="{0}" value="invalid_query"/>
#  <REPLACEMENT arg="{1}" value="detailed_message"/>
INVALID_SYNTAX_CANNOT_PARSE = Syntax Error, cannot parse {0}: {1} 

#<CREATEDBY>Apache Lucene Community</CREATEDBY>
INVALID_SYNTAX_FUZZY_LIMITS = The similarity value for a fuzzy search must be between 0.0 and 1.0.

#<CREATEDBY>Apache Lucene Community</CREATEDBY>
INVALID_SYNTAX_FUZZY_EDITS = Fractional edit distances are not allowed.

#<CREATEDBY>Apache Lucene Community</CREATEDBY>
INVALID_SYNTAX_ESCAPE_UNICODE_TRUNCATION = Truncated unicode escape sequence.

#<CREATEDBY>Apache Lucene Community</CREATEDBY>
INVALID_SYNTAX_ESCAPE_CHARACTER = Term can not end with escape character.

#<CREATEDBY>Apache Lucene Community</CREATEDBY>
INVALID_SYNTAX_ESCAPE_NONE_HEX_UNICODE = Non-hex character in Unicode escape sequence: {0}

#<CREATEDBY>Apache Lucene Community</CREATEDBY>
NODE_ACTION_NOT_SUPPORTED = This node does not support this action.

#<CREATEDBY>Apache Lucene Community</CREATEDBY>
PARAMETER_VALUE_NOT_SUPPORTED = Parameter {1} with value {0} not supported.

#<CREATEDBY>Apache Lucene Community</CREATEDBY>
#  <REPLACEMENT arg="{0}" value="query"/>
#  <REPLACEMENT arg="{1}" value="error/class"/>
LUCENE_QUERY_CONVERSION_ERROR = Cannot convert query to lucene syntax: {0} error: {1}

#<CREATEDBY>Apache Lucene Community</CREATEDBY>
EMPTY_MESSAGE = 

#<CREATEDBY>Apache Lucene Community</CREATEDBY>
WILDCARD_NOT_SUPPORTED = Wildcard is not supported for query: {0} 

#<CREATEDBY>Apache Lucene Community</CREATEDBY>
TOO_MANY_BOOLEAN_CLAUSES = Too many boolean clauses, the maximum supported is {0}: {1}

#<CREATEDBY>Apache Lucene Community</CREATEDBY>
LEADING_WILDCARD_NOT_ALLOWED = Leading wildcard is not allowed: {0}

#<CREATEDBY>Apache Lucene Community</CREATEDBY>
COULD_NOT_PARSE_NUMBER = Could not parse text "{0}" using {1}

#<CREATEDBY>Apache Lucene Community</CREATEDBY>
NUMBER_CLASS_NOT_SUPPORTED_BY_NUMERIC_RANGE_QUERY = Number class not supported by NumericRangeQueryNode: {0}

#<CREATEDBY>Apache Lucene Community</CREATEDBY>
UNSUPPORTED_NUMERIC_DATA_TYPE = Unsupported NumericField.DataType: {0}

#<CREATEDBY>Apache Lucene Community</CREATEDBY>
NUMERIC_CANNOT_BE_EMPTY = Field "{0}" is numeric and cannot have an empty value.
