|
|||
The Detailed Query SyntaxA query consists of one or more query conditions. They can be connected with AND, OR or NOT. Leaving out the boolean connector means connecting with OR. The NOT connector takes the meaning of AND NOT. query -> or_expression or_operator query or_expression query or_expression or_expression -> and_expression and_operator or_expression and_expression not_operator or_expression and_expression A query condition can be:
and_expression -> `(' query `)' field_expression `'' s_literal_expression `'' `"' d_literal_expression `"' proximity_expression atleast_expression index_expression term wildcard_term Boolean operators can be specified in various languages: or_operator -> `or' `ou' `oder' `oppure' `o' `of' and_operator -> `and' `et' `und' `e' `y' `en' not_operator -> `not' `non' `nicht' `non' `no' `niet'
The class s_literal_expression -> s_character s_literal_expression s_character d_literal_expression -> d_character d_literal_expression d_character Proximity expressions consist of two operands (terms) and a proximity operator. The proximity operator consists of `w/' or `pre/' and a number denoting a word distance.
proximity_expression -> term `pre/' num1 term term `w/' num1 term
Atleast expressions consist of one operand (term) and the
atleast_expression -> `atleast/' num1 term Various indextypes can be used as similarity predicates. They can be specified for single terms as well as for more complex query parts. index_expression -> indextype term indextype_list { query } indextype_list -> indextype, indextype_list indextype indextype -> indextype_text indextype_soundex indextype_phonix indextype_text -> `text' `plain' `strikt' `genau' `exacto' indextype_soundex -> `soundex' `ähnlich' indextype_phonix -> `phonix'
A term consists of a list of characters (not including the characters
`<', `>', `=', `(', `)', `{', `}',
`/', `,' and any whitespace which are interpreted as word
delimiters). A term -> char_list wildcard_term -> char_list `*' char_list -> character char_list character
Field expressions are used to search within special fields. A
field_expression -> field num_predicate num_term field `=' non_field_expression
A num_predicate -> `<' `<=' `=' `==' `>=' `>' |
|||
|