This interface encapsulates the most fundamental concept to
indexing with Terrier - a Collection. Anyone using Terrier to
encapuslate a new source of data (a corpus, colllection etc)
needs to create an object which implements this Collection interface.
The Collection interface is essentially an Iterator over a series of
documents. It generates Document objects for each next document requested
from the collection. It is aware of the type of Document objects available,
and how to instantiate them.
Terrier core provides two Collection implementation: TRECCollection and