2023-03-05 19:31:43 +01:00
# Reverse Index
2023-03-21 16:12:31 +01:00
The reverse index contains a mapping from word to document id.
2023-03-22 17:09:48 +01:00
There are two tiers of this index.
* A priority index which only indexes terms that are flagged with priority flags< sup > 1</ sup > .
* A full index that indexes all terms.
The full index also provides access to term-level metadata, while the priority index is a binary index that only offers information about which documents has a specific word.
2023-03-21 16:12:31 +01:00
[1] See WordFlags in [common/model ](../../common/model/ ) and
KeywordMetadata in [features-convert/keyword-extraction ](../../features-convert/keyword-extraction ).
2023-03-05 19:31:43 +01:00
## Central Classes
2023-03-21 16:12:31 +01:00
* [ReverseIndexFullConverter ](src/main/java/nu/marginalia/index/full/ReverseIndexFullConverter.java ) constructs the full index.
* [ReverseIndexFullReader ](src/main/java/nu/marginalia/index/full/ReverseIndexFullReader.java ) interrogates the full index.
* [ReverseIndexPriorityConverter ](src/main/java/nu/marginalia/index/priority/ReverseIndexPriorityConverter.java ) constructs the priority index.
2023-03-22 17:09:48 +01:00
* [ReverseIndexPriorityReader ](src/main/java/nu/marginalia/index/priority/ReverseIndexPriorityReader.java ) interrogates the priority index.