C# Class Lucene.Net.Analysis.Lv.LatvianStemmer

Light stemmer for Latvian.

This is a light version of the algorithm in Karlis Kreslin's PhD thesis A stemming algorithm for Latvian with the following modifications:

  • Only explicitly stems noun and adjective morphology
  • Stricter length/vowel checks for the resulting stems (verb etc suffix stripping is removed)
  • Removes only the primary inflectional suffixes: case and number for nouns ; case, number, gender, and definitiveness for adjectives.
  • Palatalization is only handled when a declension II,V,VI noun suffix is removed.

Datei anzeigen Open project: apache/lucenenet

Public Methods

Method Description
Stem ( char s, int len ) : int

Stem a latvian word. returns the new adjusted length.

Private Methods

Method Description
NumVowels ( char s, int len ) : int

Count the vowels in the string, we always require at least one in the remaining stem to accept it.

Unpalatalize ( char s, int len ) : int

Most cases are handled except for the ambiguous ones:

  • s -> š
  • t -> š
  • d -> ž
  • z -> ž

Method Details

Stem() public method

Stem a latvian word. returns the new adjusted length.
public Stem ( char s, int len ) : int
s char
len int
return int