VIVO Documentation
Page History
If you are a VIVO site administrator and you simply want to enable one of the available languages in your VIVO installation, the Quick Start guide should be all you need. If, however, you are interested in design details, then continue reading.
Table of Contents |
---|
Quick Start
- Stop the VIVO application
- Update the runtime.properties file to:
- Enable language filtering
Code Block RDFService.languageFilter = true
- Enabled desired languages
..such as the following if you wanted: English, Spanish, German, French and Portuguese
Code Block languages.selectableLocales = en_US, es, de_DE, fr_CA, pt_BR
- Enable language filtering
VIVO i18n Design
One of the goals of the most recent design of VIVO's internationalization (i18n) implementation is to simplify the process for activating a multi-lingual VIVO site. Starting with the 1.12.0 release of VIVO, all supported languages are built into the application. On start-up, VIVO loads the property files, annotation and labels RDF, and Freemarker templates for the languages enabled in the runtime.properties file; see Quick Start above. Ideally, only a single set of Freemarker template files would needed, the content of which being populated by i18n properties. A few template files, such as "terms of use", "email templates" and "search help", include large blocks of formatted text that are currently better suited to exist in their own language-specific Freemarker templates.
When internationalization is enabled, additional logic is executed that filters content triples and selects fallback content in the case that there are no triples available for the preferred language/locale.
For example, if the site language is set to Canadian French ('fr_CA'), the search algorithm for returning triples for a specific label is as follows:
- Return label triples with language tag that matches the language ('fr') and locale ('CA'), if not found
- Return label triples with language tag that matches just the language ('fr'), if not found
- Return label triples with language tag that matches the language, but with a different locale (e.g. 'fr_FR'), if not found
- Return label triples with any or no language tag
Note, the above filtering does impose a performance impact:
Jira | ||||||
---|---|---|---|---|---|---|
|