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 |
---|---|
void |
computeNorm(FieldInvertState state,
Norm norm)
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 void computeNorm(FieldInvertState state, Norm norm)
Similarity
FieldInvertState
).
Implementations should calculate a norm value based on the field
state and set that value to the given Norm
.
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 fieldnorm
- holds the computed norm value when this method returnspublic 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-2012 Apache Software Foundation. All Rights Reserved.