Internationalization and Localization
(UXPROD-779)
|
|
| Status: | Open |
| Project: | UX Product |
| Components: | None |
| Affects versions: | None |
| Fix versions: | None | Parent: | Internationalization and Localization |
| Type: | New Feature | Priority: | P3 |
| Reporter: | Peter Murray | Assignee: | Unassigned |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | i18n, post-v1 | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original estimate: | Not Specified | ||
| Attachments: |
|
||||||||||||||||||||||||||||
| Issue links: |
|
||||||||||||||||||||||||||||
| Epic Link: | Internationalization and Localization | ||||||||||||||||||||||||||||
| Front End Estimate: | Large < 10 days | ||||||||||||||||||||||||||||
| Front End Estimator: | Jakub Skoczen | ||||||||||||||||||||||||||||
| Back End Estimate: | XL < 15 days | ||||||||||||||||||||||||||||
| Back End Estimator: | Jakub Skoczen | ||||||||||||||||||||||||||||
| Development Team: | None | ||||||||||||||||||||||||||||
| Rank: Chalmers (Impl Aut 2019): | R4 | ||||||||||||||||||||||||||||
| Rank: Chicago (MVP Sum 2020): | R5 | ||||||||||||||||||||||||||||
| Rank: Cornell (Full Sum 2021): | R5 | ||||||||||||||||||||||||||||
| Rank: Duke (Full Sum 2021): | R5 | ||||||||||||||||||||||||||||
| Rank: 5Colleges (Full Jul 2021): | R5 | ||||||||||||||||||||||||||||
| Rank: FLO (MVP Sum 2020): | R5 | ||||||||||||||||||||||||||||
| Rank: GBV (MVP Sum 2020): | R2 | ||||||||||||||||||||||||||||
| Rank: hbz (TBD): | R2 | ||||||||||||||||||||||||||||
| Rank: Hungary (MVP End 2020): | R2 | ||||||||||||||||||||||||||||
| Rank: Lehigh (MVP Summer 2020): | R5 | ||||||||||||||||||||||||||||
| Rank: Leipzig (Full TBD): | R2 | ||||||||||||||||||||||||||||
| Rank: Leipzig (ERM Aut 2019): | R4 | ||||||||||||||||||||||||||||
| Rank: Mainz (Full TBD): | R2 | ||||||||||||||||||||||||||||
| Rank: TAMU (MVP Jan 2021): | R5 | ||||||||||||||||||||||||||||
| Rank: U of AL (MVP Oct 2020): | R4 | ||||||||||||||||||||||||||||
| Description |
|
Ability to supply translations for library-configured content/controlled vocabularies (e.g. locations, libraries, permissions, patron group etc.). This will be important when we allow user-level translation (
|
| Comments |
| Comment by Massoud Alshareef [ 11/Apr/20 ] |
|
Hey Zak Burke Cate Boerema Ann-Marie Breaux Peter Murray Mike Taylor attia.alshareef It gives me pleasure to introduce our translation solution for the "library-generated controlled vocabularies" to you. Our suggested solution does not require any change in FOLIO data structure, nor it requires that an app developer must publicise a translation_key for every policyName (vocabulary) that the library defines (generates). The translation solution introduced here is dynamic - in the sense that translation will be in effect on the fly immediately after a policy name is saved by the librarian who is granted a Translate Permission. No need for re-build due to the static translation file. First, I would like to suggest the name "library-defined Policies Names" in place of "library-generated controlled vocabularies"; this is the common name used in several ILS that we have worked with on the translation aspects since late 90tees, including SirsiDynix Unicorn (Symphony now) and Koha ILS. As a PoC, I will use the following five screenshots for FOLIO multi-lingual Institute/Campus.Libraries/locations, patron group and service points. After the PoC presentation, I will add another comment to present to you how libraries can go about translating their "library-defined Policies Names" via FOLIO Settings UI. multi-lingual FOLIO Institute-Campus-Library-locations - English and Arabic Tenant Location Setup: and here is how it appears in FOLIO Inventory app "Effective location" search filter - English and Arabic library locations: multi-lingual FOLIO Patron group - Users app - English and Arabic Patron group: multi-lingual FOLIO Patron group - Users app - French Patron group: multi-lingual FOLIO Service points - English, Arabic and French Service Points: Thanks, |
| Comment by Zak Burke [ 14/Apr/20 ] |
|
Massoud Alshareef, this looks really interesting! I am very curious about the implementation details. Are you able to provide code samples that demonstrate how you perform the run-time l10n, e.g. is substitution handled centrally or on a per-application basis? |
| Comment by Peter Murray [ 14/Apr/20 ] |
|
Massoud Alshareef: Is the code ready to show others? If it is in a branch in your GitHub organization, it will help the Stripes architecture group assess the strategy and make any necessary recommendations to get it included into the core code. |
| Comment by Massoud Alshareef [ 15/Apr/20 ] |
|
Zak Burke I've asked attia.alshareef to explain the implementation details to you and the Stripes architecture group. Peter Murray During the last two weeks we were focusing entirely on how to PoC of the dynamic translation technique to our FOLIO colleagues. We now feel there are lots of rooms for optimisations and code cleanup that we should take care of before sharing the code with others. We will need about four weeks before we reach that point. |
| Comment by Julian Ladisch [ 15/Jun/21 ] |
|
What is the status of KWare proposal? Can you post a link to the GitHub branch of the software changes? |
| Comment by Massoud Alshareef [ 16/Jun/21 ] |
|
Hello Julian Ladisch Thank you for asking. Please take a look at issue UX-400 and issue FOLIO-2802 to get updated on Kware proposed solutions for the user-defined locales switcher and the dynamic translation engine for library-defined controlled vocabularies. We did put the URL for our code before two versions of FOLIO back, but due to the refactoring work we had to do to be compatible with the later releases of FOLIO, we removed the old repositories and now we're waiting for decisions to be made by the UX, backend and frontend teams about how and when to proceed with the code integration. Greeting Peter Murray Zak Burke attia.alshareef Marc Johnson |
| Comment by Marc Johnson [ 18/Jun/21 ] |
What back-end decision are you waiting for? |