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 anIntervalsSourceStatic constructor functions for various different sources can be found in the
IntervalsclassScores 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 WeightcreateWeight(IndexSearcher searcher, ScoreMode scoreMode, float boost)booleanequals(Object o)StringgetField()The field to queryinthashCode()StringtoString(String field)voidvisit(QueryVisitor visitor)
-
-
-
Constructor Detail
-
IntervalQuery
public IntervalQuery(String field, IntervalsSource intervalsSource)
Create a new IntervalQuery- Parameters:
field- the field to queryintervalsSource- anIntervalsSourceto 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- anIntervalsSourceto 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- anIntervalsSourceto 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:
createWeightin classQuery- Throws:
IOException
-
visit
public void visit(QueryVisitor visitor)
-
-