Forums
I'm using Freeling 4.0 and I need to check if a particular word was found via the suffixes rules.
Using Python, I'm using the following code excerpt:
w = freeling.word(form)
dic.annotate_word(w)
w.get_lemma()
w.found_in_dict()
It looks like the only way to find out if a word was "found" via suffix rules is when get_lemma()
returns something and fund_in_dict()
returns None
.
Is that correct?
In 4.0 yes, there is no way…
In 4.0 yes, there is no way to find out that.
However, in 4.1, class word has methods word::is_analyzed_by() and word::get_analyzed_by() that will allow you to query whether the word was analyzed by a specific module, or to get all the modules that analyzed the word.
e.g.
if (w.is_analyzed_by(word::AFFIXES)) { ... }
or
if (w.get_analyzed_by() & word::AFFIXES != 0) {...}