public abstract class PerFieldSimilarityWrapper extends Similarity
Similarity
for different fields.
Subclasses should implement get(String)
to return an appropriate
Similarity (for example, using field-specific parameter values) for the field.
Similarity.ExactSimScorer, Similarity.SimWeight, Similarity.SloppySimScorer
Constructor and Description |
---|
PerFieldSimilarityWrapper()
Sole constructor.
|
Modifier and Type | Method and Description |
---|---|
long |
computeNorm(FieldInvertState state)
Computes the normalization value for a field, given the accumulated
state of term processing for this field (see
FieldInvertState ). |
Similarity.SimWeight |
computeWeight(float queryBoost,
CollectionStatistics collectionStats,
TermStatistics... termStats)
Compute any collection-level weight (e.g.
|
Similarity.ExactSimScorer |
exactSimScorer(Similarity.SimWeight weight,
AtomicReaderContext context)
Creates a new
Similarity.ExactSimScorer to score matching documents from a segment of the inverted index. |
abstract Similarity |
get(String name)
Returns a
Similarity for scoring a field. |
Similarity.SloppySimScorer |
sloppySimScorer(Similarity.SimWeight weight,
AtomicReaderContext context)
Creates a new
Similarity.SloppySimScorer to score matching documents from a segment of the inverted index. |
coord, queryNorm
public PerFieldSimilarityWrapper()
public final long computeNorm(FieldInvertState state)
Similarity
FieldInvertState
).
Matches in longer fields are less precise, so implementations of this
method usually set smaller values when state.getLength()
is large,
and larger values when state.getLength()
is small.
computeNorm
in class Similarity
state
- current processing state for this fieldpublic final Similarity.SimWeight computeWeight(float queryBoost, CollectionStatistics collectionStats, TermStatistics... termStats)
Similarity
computeWeight
in class Similarity
queryBoost
- the query-time boost.collectionStats
- collection-level statistics, such as the number of tokens in the collection.termStats
- term-level statistics, such as the document frequency of a term across the collection.public final Similarity.ExactSimScorer exactSimScorer(Similarity.SimWeight weight, AtomicReaderContext context) throws IOException
Similarity
Similarity.ExactSimScorer
to score matching documents from a segment of the inverted index.exactSimScorer
in class Similarity
weight
- collection information from Similarity.computeWeight(float, CollectionStatistics, TermStatistics...)
context
- segment of the inverted index to be scored.context
IOException
- if there is a low-level I/O errorpublic final Similarity.SloppySimScorer sloppySimScorer(Similarity.SimWeight weight, AtomicReaderContext context) throws IOException
Similarity
Similarity.SloppySimScorer
to score matching documents from a segment of the inverted index.sloppySimScorer
in class Similarity
weight
- collection information from Similarity.computeWeight(float, CollectionStatistics, TermStatistics...)
context
- segment of the inverted index to be scored.context
IOException
- if there is a low-level I/O errorpublic abstract Similarity get(String name)
Similarity
for scoring a field.Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.