FileDocCategorySizeDatePackage
Weight.javaAPI DocApache Lucene 2.1.02522Wed Feb 14 10:46:40 GMT 2007org.apache.lucene.search

Weight

public interface Weight implements Serializable
Expert: Calculate query weights and build query scorers.

The purpose of Weight is to make it so that searching does not modify a Query, so that a Query instance can be reused.
Searcher dependent state of the query should reside in the Weight.
IndexReader dependent state should reside in the Scorer.

A Weight is used in the following way:

  1. A Weight is constructed by a top-level query, given a Searcher ({@link Query#createWeight(Searcher)}).
  2. The {@link #sumOfSquaredWeights()} method is called on the Weight to compute the query normalization factor {@link Similarity#queryNorm(float)} of the query clauses contained in the query.
  3. The query normalization factor is passed to {@link #normalize(float)}. At this point the weighting is complete.
  4. A Scorer is constructed by {@link #scorer(IndexReader)}.

Fields Summary
Constructors Summary
Methods Summary
public org.apache.lucene.search.Explanationexplain(org.apache.lucene.index.IndexReader reader, int doc)
An explanation of the score computation for the named document.

public org.apache.lucene.search.QuerygetQuery()
The query that this concerns.

public floatgetValue()
The weight for this query.

public voidnormalize(float norm)
Assigns the query normalization factor to this.

public org.apache.lucene.search.Scorerscorer(org.apache.lucene.index.IndexReader reader)
Constructs a scorer for this.

public floatsumOfSquaredWeights()
The sum of squared weights of contained query clauses.