Interface FullTextSearch
- All Superinterfaces:
Constraint
- All Known Implementing Classes:
FullTextSearchImpl
The full-text search expression is evaluated against the set of full-text
indexed properties within the full-text search scope. If property
is specified, the full-text search scope is the
property of that name on the selector
node in the
node-tuple; otherwise the full-text search scope is all properties of the
selector
node (or, in some implementations, all
properties in the node subgraph).
Which properties (if any) in a repository are full-text indexed is implementation determined.
It is also implementation determined whether fullTextSearchExpression
is independently evaluated against each full-text
indexed property in the full-text search scope, or collectively evaluated
against the set of such properties using some implementation-determined
mechanism.
Similarly, for multi-valued properties, it is implementation determined
whether fullTextSearchExpression
is
independently evaluated against each element in the array of values, or
collectively evaluated against the array of values using some
implementation-determined mechanism.
At minimum, an implementation must support the following fullTextSearchExpression
grammar:
fullTextSearchExpression ::= [-]term {whitespace [OR] whitespace [-]term}term ::= word | '"' word {whitespace word} '"'
word ::= (A string containing no whitespace)
whitespace ::= (A string of only whitespace)
A query satisfies a FullTextSearch
constraint if the value (or
values) of the full-text indexed properties within the full-text search scope
satisfy the specified fullTextSearchExpression
, evaluated as follows:
- A term not preceded
with "
-
" (minus sign) is satisfied only if the value contains that term. - A term preceded with "
-
" (minus sign) is satisfied only if the value does not contain that term. - Terms separated by whitespace are implicitly "ANDed".
- Terms separated by
"
OR
" are "ORed". - "AND" has higher precedence than "OR".
- Within a term, each double quote (
"
), "-
" (minus sign), and "\
" (backslash) must be escaped by a preceding "\
" (backslash).
- Since:
- JCR 2.0
-
Method Summary
Modifier and TypeMethodDescriptionGets the full-text search expression.Gets the name of the property.Gets the name of the selector against which to apply this constraint.
-
Method Details
-
getSelectorName
String getSelectorName()Gets the name of the selector against which to apply this constraint.- Returns:
- the selector name; non-null
-
getPropertyName
String getPropertyName()Gets the name of the property.- Returns:
- the property name if the full-text search scope is a property, otherwise null if the full-text search scope is the node (or node subgraph, in some implementations).
-
getFullTextSearchExpression
StaticOperand getFullTextSearchExpression()Gets the full-text search expression.- Returns:
- the full-text search expression; non-null
-