Multi language search indexing

Attention! The file “element-mapping.json” gets overwritten on Stages updates. Create a backup copy if you want to save your work.

For multi language support the following steps have to be executed:

2. Make sure the search index is not yet existent

(Delete the nodes folder in “<Stages Installation Directory>\elasticsearch\data\nodes”)

3. Open "element-mapping.json", "usergroup-mapping.json", "scope-mapping.json" and stakeholder-mapping.json located in folder "WEB-INF/resources" in a text editor

(Currently, it is not necessary to modify the other search configuration files “user-mapping.json” and “workspace-mapping.json”.)

4. Duplicate all setting sections with names ending with "_en" in all theses files and replace "_en" in every duplicated section with your language ID, both in the section name and all its values

Hints:

  • The language IDs are the same as those in your file “config.xml” in the “supported.languages” attribute.
  • The setting section name is the string before the colon, the values are behind the colon.
  • Not every duplicated section contains values where the language ID can be simply replaced. Instead, they must be configured correctly, which will be described in the step 5.
  • Currently there are more than 70 occurrences of “[*]_en”.
  • Example for Korean language (i.e “ko”) with values which can be replaced trivially:

Before:

"name_analyzer_en": {
   "type": "custom",
   "tokenizer": "standard",
   "filter": [ "lowercase", "icu_folding", "possessive_stemmer_en", "stemmer_en", "edge_ngram" ],
   "char_filter" : [ "icu_normalizer" ]
}

After:

"name_analyzer_ko": {
   "type": "custom",
   "tokenizer": "standard",
   "filter": [ "lowercase", "icu_folding", "edge_ngram" ],
   "char_filter" : [ "icu_normalizer" ]
}

5. Configure and optimize property values specifically for your language

Help for configuring the specifics of your language (e.g. stemming, stop words, tokenizing and filtering…) which provides optimized search results can be found here:

6. Start the Stages Search and Start Stages

7. Wait for the completion of index creation

(To verify if the index creation is completed, open “stages.log” and search for the log message “Started creation/update of search index for all workspaces.”)