1. A computer implemented method for retrieving documents from a collection of documents, the method comprising: identifying each document of the collection of documents; generating a word index for each document of the collection of documents, wherein each entry of the word index is an enriched-term string comprising at least a stemmed form of a word, a separator character, followed by an original form of the word; generating a cross-documents list for the enriched-term strings wherein each enriched-term string is identified by an enriched-term identifier; and generating a cross-documents enriched-term occurrence table for matching each enriched-term identifier to the identified documents.