Summary: | Elasticsearch: search for singular/plural form / stemming | ||
---|---|---|---|
Product: | Koha | Reporter: | Christopher Brannon <cbrannon> |
Component: | Searching - Elasticsearch | Assignee: | Bugs List <koha-bugs> |
Status: | NEW --- | QA Contact: | |
Severity: | enhancement | ||
Priority: | P5 - low | CC: | barbara.johnson, caroline.cyr-la-rose, dcook, margaret, patrick.robitaille |
Version: | unspecified | ||
Hardware: | All | ||
OS: | All | ||
Change sponsored?: | --- | Patch complexity: | --- |
Documentation contact: | Documentation submission: | ||
Text to go in the release notes: | Version(s) released in: | ||
Circulation function: |
Description
Christopher Brannon
2021-01-21 19:20:02 UTC
Agreed I believe the Stemming feature with Zebra should already take care of this. Is it active in your instance and have you tried some searches? A note here: not all languages are as lucky as English where it's about added s most of the time :) (In reply to Katrin Fischer from comment #2) > I believe the Stemming feature with Zebra should already take care of this. > Is it active in your instance and have you tried some searches? We are using ElasticSearch, not Zebra. I have no understanding of the inner-workings of all of this, but as far as my knowledge goes, this doesn't apply. Or am I wrong? (In reply to Katrin Fischer from comment #3) > A note here: not all languages are as lucky as English where it's about > added s most of the time :) Even so, this would be a step in the right direction. A rule applied for specific languages that would improve searching. Hi Christopher, as I said, I think the stemming feature already does this. Please try it! I think it doesn't apply for Elasticsearch, but not completely sure. Changing component and adding a hint to the description. (In reply to Katrin Fischer from comment #7) > I think it doesn't apply for Elasticsearch, but not completely sure. > Changing component and adding a hint to the description. Yeah at a glance client-side stemming in Koha wasn't implemented for Elasticsearch. It looks like Elasticsearch can be configured to use its own stemmer token filters though. I don't know if this can help anyone. We use snowball_french as stemmer. It works really well (with some exceptions). https://snowballstem.org/ In index_config.yaml, under analyzer_standard, there is snowball_french under the filters analyzer_standard: tokenizer: icu_tokenizer filter: - icu_folding - snowball_french and under filter (before char_filter), there is snowball_french filter: snowball_french: type: snowball language: french |