Package org.apache.lucene.classification.document

# Interface DocumentClassifier<T>

All Known Implementing Classes:
  `KNearestNeighborDocumentClassifier`, `SimpleNaiveBayesDocumentClassifier`

public interface DocumentClassifier<T>
A classifier, see `http://en.wikipedia.org/wiki/Classifier_(mathematics)`, which assign classes of type `T` to a `Document`s

WARNING: This API is experimental and might change in incompatible ways in the next release.

## Method Summary

Modifier and Type
Method
Description
`ClassificationResult<T>`
`assignClass(Document document)`
Assign a class (with score) to the given `Document`
`List<ClassificationResult<T>>`
`getClasses(Document document)`
Get all the classes (sorted by score, descending) assigned to the given `Document`.
`List<ClassificationResult<T>>`
`getClasses(Document document, int max)`
Get the first `max` classes (sorted by score, descending) assigned to the given text String.

## Method Details

### assignClass

ClassificationResult<T> assignClass(Document document) throws IOException
Assign a class (with score) to the given `Document`

Parameters:
  `document` - a `Document` to be classified. Fields are considered features for the classification.
Returns:
  a `ClassificationResult` holding assigned class of type `T` and score
Throws:
  `IOException` - If there is a low-level I/O error.

### getClasses

List<ClassificationResult<T>> getClasses(Document document) throws IOException
Get all the classes (sorted by score, descending) assigned to the given `Document`.

Parameters:
  `document` - a `Document` to be classified. Fields are considered features for the classification.
Returns:
  the whole list of `ClassificationResult`, the classes and scores. Returns `null` if the classifier can't make lists.
Throws:
  `IOException` - If there is a low-level I/O error.

### getClasses

List<ClassificationResult<T>> getClasses(Document document, int max) throws IOException
Get the first `max` classes (sorted by score, descending) assigned to the given text String.

Parameters:
  `document` - a `Document` to be classified. Fields are considered features for the classification.
  `max` - the number of return list elements
Returns:
  the whole list of `ClassificationResult`, the classes and scores. Cut for "max" number of elements. Returns `null` if the classifier can't make lists.
Throws:
  `IOException` - If there is a low-level I/O error.