Реализация основы для семантической работы с текстом. LexProvider - реализует выделение токенов из текста, где под токеном понимается какое-либо приведение слова. Например, токеном может являться непосредственно само слово, стем, лемма. В качестве реализации созданы две фабрики: SnowbolLexProviderFactory - возвращает провайдеры на основе стемминга 'Snowball' JustWordLexProviderFactory - возвращает провайдер который принимает за токен непосредственно слово, без изменений (lower case) Для реализации собственного провайдера потребуется создать класс на основе интерфейса ILexer и реализовать метод Lex, в котором будет проведена необходимая нормализация слова в нужном семантическом контексте. Например: public class LemmaLexer: ILexer { public string Lex(string word) { return Lemmatizer.Lemma(word); } } После чего можно создать на его основе провайдер: var provider = new LexProvider(new LemmaLexer());