Class IndriDisjunctionScorer

  • Direct Known Subclasses:
    IndriAndScorer

    public abstract class IndriDisjunctionScorer
    extends IndriScorer
    The Indri implemenation of a disjunction scorer which stores the subscorers for the child queries. The score and smoothingScore methods use the list of all subscorers and not just the matches so that a smoothingScore can be calculated if there is not an exact match.
    • Constructor Detail

      • IndriDisjunctionScorer

        protected IndriDisjunctionScorer​(Weight weight,
                                         List<Scorer> subScorersList,
                                         ScoreMode scoreMode,
                                         float boost)
    • Method Detail

      • iterator

        public DocIdSetIterator iterator()
        Description copied from class: Scorer
        Return a DocIdSetIterator over matching documents.

        The returned iterator will either be positioned on -1 if no documents have been scored yet, DocIdSetIterator.NO_MORE_DOCS if all documents have been scored already, or the last document id that has been scored otherwise.

        The returned iterator is a view: calling this method several times will return iterators that have the same state.

        Specified by:
        iterator in class IndriScorer
      • smoothingScore

        public float smoothingScore​(int docId)
                             throws IOException
        Description copied from class: Scorable
        Returns the smoothing score of the current document matching the query. This score is used when the query/term does not appear in the document, and behaves like an idf. The smoothing score is particularly important when the Scorer returns a product of probabilities so that the document score does not go to zero when one probability is zero. This can return 0 or a smoothing score.

        Smoothing scores are described in many papers, including: Metzler, D. and Croft, W. B. , "Combining the Language Model and Inference Network Approaches to Retrieval," Information Processing and Management Special Issue on Bayesian Networks and Information Retrieval, 40(5), pp.735-750.

        Specified by:
        smoothingScore in class IndriScorer
        Throws:
        IOException
      • docID

        public int docID()
        Description copied from class: Scorable
        Returns the doc ID that is currently being scored.
        Specified by:
        docID in class IndriScorer