org.apache.lucene.benchmark.quality

## Interface Judge

All Known Implementing Classes:
  TrecJudge

    public interface Judge

Judge if a document is relevant for a quality query.

### Method Summary

Methods
`boolean` `isRelevant(String docName, QualityQuery query)` Judge if document `docName` is relevant for the given quality query.
`int` `maxRecall(QualityQuery query)` Return the maximal recall for the input quality query.
`boolean` `validateData(QualityQuery[] qq, PrintWriter logger)` Validate that queries and this Judge match each other.

### Method Detail

#### isRelevant

    boolean isRelevant(String docName,
                     QualityQuery query)

Judge if document `docName` is relevant for the given quality query.

Parameters:
  `docName` - name of doc tested for relevancy.
  `query` - tested quality query.
Returns:
  true if relevant, false if not.

#### validateData

    boolean validateData(QualityQuery[] qq,
                       PrintWriter logger)

Validate that queries and this Judge match each other. To be perfectly valid, this Judge must have some data for each and every input quality query, and must not have any data on any other quality query. Note: the quality benchmark run would not fail in case of imperfect validity, just a warning message would be logged.

Parameters:
  `qq` - quality queries to be validated.
  `logger` - if not null, validation issues are logged.
Returns:
  true if perfectly valid, false if not.

#### maxRecall

    int maxRecall(QualityQuery query)

Return the maximal recall for the input quality query. It is the number of relevant docs this Judge "knows" for the query.

Parameters:
  `query` - the query whose maximal recall is needed.