Class IntervalQuery
- java.lang.Object
-
- org.apache.lucene.search.Query
-
- org.apache.lucene.queries.intervals.IntervalQuery
-
public final class IntervalQuery extends Query
A query that retrieves documents containing intervals returned from anIntervalsSource
Static constructor functions for various different sources can be found in the
Intervals
classScores for this query are computed as a function of the sloppy frequency of intervals appearing in a particular document. Sloppy frequency is calculated from the number of matching intervals, and their width, with wider intervals contributing lower values. The scores can be adjusted with two optional parameters:
- pivot - the sloppy frequency value at which the overall score of the document will equal 0.5. The default value is 1
- exp - higher values of this parameter make the function grow more slowly below the pivot and faster higher than the pivot. The default value is 1
Scores are bounded to between 0 and 1. For higher contributions, wrap the query in a
BoostQuery
-
-
Constructor Summary
Constructors Constructor Description IntervalQuery(String field, IntervalsSource intervalsSource)
Create a new IntervalQueryIntervalQuery(String field, IntervalsSource intervalsSource, float pivot)
Create a new IntervalQuery with a scoring pivotIntervalQuery(String field, IntervalsSource intervalsSource, float pivot, float exp)
Create a new IntervalQuery with a scoring pivot and exponent
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Weight
createWeight(IndexSearcher searcher, ScoreMode scoreMode, float boost)
boolean
equals(Object o)
String
getField()
The field to queryint
hashCode()
String
toString(String field)
void
visit(QueryVisitor visitor)
-
Methods inherited from class org.apache.lucene.search.Query
classHash, rewrite, sameClassAs, toString
-
-
-
-
Constructor Detail
-
IntervalQuery
public IntervalQuery(String field, IntervalsSource intervalsSource)
Create a new IntervalQuery- Parameters:
field
- the field to queryintervalsSource
- anIntervalsSource
to retrieve intervals from
-
IntervalQuery
public IntervalQuery(String field, IntervalsSource intervalsSource, float pivot)
Create a new IntervalQuery with a scoring pivot- Parameters:
field
- the field to queryintervalsSource
- anIntervalsSource
to retrieve intervals frompivot
- the sloppy frequency value at which the score will be 0.5, must be within (0, +Infinity)
-
IntervalQuery
public IntervalQuery(String field, IntervalsSource intervalsSource, float pivot, float exp)
Create a new IntervalQuery with a scoring pivot and exponent- Parameters:
field
- the field to queryintervalsSource
- anIntervalsSource
to retrieve intervals frompivot
- the sloppy frequency value at which the score will be 0.5, must be within (0, +Infinity)exp
- exponent, higher values make the function grow slower before 'pivot' and faster after 'pivot', must be in (0, +Infinity)
-
-
Method Detail
-
getField
public String getField()
The field to query
-
createWeight
public Weight createWeight(IndexSearcher searcher, ScoreMode scoreMode, float boost) throws IOException
- Overrides:
createWeight
in classQuery
- Throws:
IOException
-
visit
public void visit(QueryVisitor visitor)
-
-