Liste initiale d'éléments à couvrir
- Contexte
- Déjà un répertoire UQAM, utilisant les fonctionnalités de visualisation de VIVO
- Contexte canadien: important de pouvoir déployer des logiciels pleinement internationalisés
- État des lieux à la fin de l'été 2019 : l'effort de TIB avait permis d'internationaliser l'interface usager, mais pas le contenu des ontologies
- UQAM
- Michel Héon mandaté pour compléter le processus, appuyé par Pierre Roberge pour traduction
- Collaboration avec équipe Lyrasis :
- Sprint-i18n, prolongations locales du sprint, prolongation générale sur sprint
- Développement et déploiement de l'ETV
- Test manuels exhaustifs
- En développement : test Selenium + NG
- Constats et interventions
- Internationalisation des contenus (saisis par usager + menus)
- S'assurer que les formulaires permettent d'associer les étiquettes de langues aux contenus
- Que ces étiquette soient respectées à la création, à l'édition et à la lecture, incluant dans la cartographie d'expertises et dans les champs de recherche
- Simplification de certaines procédures pour le dévelopement
- Architectures de VIVO-languages et Vitro-languages ont été modifiées afin de faciliter le développement ; fichiers .ftl et .properties sont séparés par langues à la racine du repo
- Développement d'un installeur séparé
- Consistent with the architectural decoupling (https://openreview.net/forum?id=Hkl_dfPksV)
- objectif, à terme, serait de ne compiler que les langues désirées, afin de ne pas encombrer les répertoires de l'application
- Traduction des ontologies et fichiers de propriété
- Difficulté de traduire des chaînes de caractère hors contexte
- Concaténations dans les fichiers Freemarker posent des problèmes particulier
- Proposition de dispositions syntaxiquement neutres
- Internationalisation des contenus (saisis par usager + menus)
- Vision de l'UQAM pour la suite des choses
- Importance d'intégrer éventuellement ce code au master ; la version i18n de VIVO ne devrait pas être une option mais la norme
Résumé initial pour l'appel à proposition (150-350 mots)
Submission Type: presentation
Keywords: UQAM, i18n, internationalisation, Selenium, Freemarker
TL;DR: Updates on the internationalization of VIVO: achievements, challenges and solutions
Abstract: The internationalization of VIVO represents a major adoption factor outside of the United States, especially in Canada where federal-level initiatives are often expected to comply with bilingualism policies. In that context, the Université du Québec à Montréal (UQAM)[1] has set itself the task of pushing forward the internationalization of VIVO initiated by the German National Library of Science and Technology (TIB) [2]. While the TIB team had made significant progress on the user interface, the content itself remained unilingual, unaffected by the linguistic context. Therefore, the UQAM team developped a branch of VIVO that allows to create, edit and display content in several languages. Subsequent testings have also showed how some pre-i18n coding decisions now result into complex internationalization and/or linguistic issues. In this presentation, we will 1) give an overview of the tasks accomplished so far, including the developpement of Selenium testing procedures, 2) outline i18n bugs and challenges caused by the current architecture and workings of VIVO, 3) offer some solutions ranging from best practices in variables handling in Freemarker files to the use of a decoupled installer.
[1] https://uqam.ca/english/about/
Soumission
https://openreview.net/forum?id=APib8cL0vfB
Notes finales pour la conférence
0 minutes - Nicolas starting
Initial context : from a local project to a community project
- The first experience of UQAM with VIVO (starting 2016) was to embed a fr_CA version of the capability map – a strongly desired feature at the moment – into a non-VIVO directory, as a proof of concept.
- That fork was only a intermediate step, as it would clearly cut us from future updates and developments of VIVO
- The next step (starting 2019) was to develop a fully internationalized VIVO, and to do it in collaboration with the development community. The logic was:
- ... of course to stay in the update loop...
- ... but also to make an i18n VIVO widely available and easier to deploy, so to promote the adoption of VIVO, especially in Canada, for it makes no sense to be the only institution using a LOD directory
- In a sense, being part of a developer community was a first step toward fostering a larger user community
I18n - Functionality / use-cases
- Past achievements, new needs
- As of spring 2019, VIVO already featured a system to toggle between installed languages. However, it affected only the GUI.
- While this was adequate with linguistically neutral data (A book title, for instance)...
- ... some data might need to be available in different languages (overviews, person's title, controlled vocabulary, etc.)
Toggle static content and data according to linguistic context
- Language tags
- So far, the data was stored without language tag...
- ... and even if language tags were force fed into the database, the queries were not taking the linguistic context into account
- Correcting this allowed to create, edit and display data in several languages, according to the selected linguistic context
- A fallback mechanism prevents the display of empty fields when the data is untranslated. For instance, on a dual fr_CA / en_CA system, if a specific bit of data is provided in only one of the two languages, it will be automatically displayed in both linguistic contexts.
- Using the language tags also allows for language specific search results. This makes for a more accurate capability map, especially when bilingual vocabularies are integrated in VIVO
- Further work needed on the GUI
- Freemarker templates currently have some i18n issues (esp. syntax and grammar problem caused by concatenations that make sense in English, but much less in other languages)
- Core Freemarker files should be tweaked with reusability in mind, to avoid the multiplication of i18n customized files.
9 minutes – switching to Andrew
Regression tests
Easy installation/enabling of languages
Sprint process
- Team
- Roles
- Frequency
Conclusion
- Status of i18n project
- Getting involved
18 minutes – switching to Q & A