· Feb 2, 2016

IFind french and stemming


I created with Studio a persistent class with the following field and index:

Property DescriptionDemande As %String(MAXLEN = "");
Index IDXBASDescriptionDemande On (DescriptionDemande) As %iFind.Index.Basic(INDEXOPTION = 1, LANGUAGE = "fr", LOWER = 1);

INDEXOPTION is set to 1 for activating stemming. I'm indexing french  documents. I have set lower to 1 because I want to do non case sensitive search. 

I inserted a single french word "élément" in the field DescriptionDemande for testing purposes using this query: insert into my_table(DescriptionDemande) values(' élément')

the query SELECT * FROM my_table WHERE %ID %FIND search_index(IDXBASDescriptionDemande,'élément',0) returns one row and that is fine.


  1. The query SELECT * FROM my_table  WHERE %ID %FIND search_index(IDXBASDescriptionDemande,'éléments',0)  returns nothing. If stemming was activated the ending 's' should be ignored and the query should return one row.
  2. The query SELECT * FROM my_table  WHERE %ID %FIND search_index(IDXBASDescriptionDemande,'Elément',0)  returns nothing, despite that Elément and élément in french are the same word (the accent on the capital letters are not commonly used)

Why the stemming is not working ? is there something missing in my index configuration.

What can I do tell iFind not to take accents into consideration, without modifying my own text of course.


Jack Abdo.

Discussion (2)0
Log in or sign up to continue