<!-- 
RSS generated by JIRA (1001.0.0-SNAPSHOT#100246-sha1:7a5c50119eb0633d306e14180817ddef5e80c75d) at Fri Feb 09 00:29:43 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary add field=key&field=summary to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>FOLIO Jira</title>
    <link>https://folio-org.atlassian.net</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>1001.0.0-SNAPSHOT</version>
        <build-number>100246</build-number>
        <build-date>07-02-2024</build-date>
    </build-info>

<item>
            <title>[UXPROD-3148] Translated library-defined controlled vocabularies</title>
                <link>https://folio-org.atlassian.net/browse/UXPROD-3148</link>
                <project id="10000" key="UXPROD">UX Product</project>
                    <description>&lt;p&gt;&lt;b&gt;Current situation or problem&lt;/b&gt;: Each FOLIO installation has lists of controlled vocabulary terms (for instance, &#8220;Formats&#8221; and &#8220;Resource types&#8221; in Inventory, &#8220;Patron Groups&#8221; and &#8220;Refund Reasons&#8221; in Users &#8212; see 
    &lt;span class=&quot;jira-issue-macro&quot; data-jira-key=&quot;FOLIO-2802&quot; &gt;
                &lt;a href=&quot;https://folio-org.atlassian.net/browse/FOLIO-2802&quot; class=&quot;jira-issue-macro-key issue-link&quot;  title=&quot;Recruit translators for library-defined policies (controlled vocabularies)&quot; &gt;
            &lt;img class=&quot;icon&quot; src=&quot;https://folio-org.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10318?size=medium&quot; /&gt;
            FOLIO-2802
        &lt;/a&gt;
                                                    &lt;span class=&quot;aui-lozenge aui-lozenge-subtle aui-lozenge-complete jira-macro-single-issue-export-pdf&quot;&gt;Open&lt;/span&gt;
            &lt;/span&gt;
 for a more complete list).&#160; In installations that use more than one language, these terms do not display translated values when the locale of the session is changed.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;In scope&lt;/b&gt;&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;A mechanism for storing translated strings for controlled vocabulary terms.&lt;/li&gt;
	&lt;li&gt;A mechanism for displaying the translated strings in apps that use the controlled vocabulary tables.&lt;/li&gt;
	&lt;li&gt;A mechanism for translating controlled vocabulary terms in the Settings app.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;&lt;b&gt;Out of scope&lt;/b&gt;&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;Translation of static strings in front-end modules (these are handled by Lokalise.com)&lt;/li&gt;
	&lt;li&gt;Translation of static strings in back-end modules (these will be handled by Lokalise.com, see 
    &lt;span class=&quot;jira-issue-macro&quot; data-jira-key=&quot;UXPROD-371&quot; &gt;
                &lt;a href=&quot;https://folio-org.atlassian.net/browse/UXPROD-371&quot; class=&quot;jira-issue-macro-key issue-link&quot;  title=&quot;Enable translation of validation and other error messages that display verbatim from back end&quot; &gt;
            &lt;img class=&quot;icon&quot; src=&quot;https://folio-org.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10322?size=medium&quot; /&gt;
            UXPROD-371
        &lt;/a&gt;
                                                    &lt;span class=&quot;aui-lozenge aui-lozenge-subtle aui-lozenge-complete jira-macro-single-issue-export-pdf&quot;&gt;Open&lt;/span&gt;
            &lt;/span&gt;
, 
    &lt;span class=&quot;jira-issue-macro resolved&quot; data-jira-key=&quot;STRIPES-750&quot; &gt;
                &lt;a href=&quot;https://folio-org.atlassian.net/browse/STRIPES-750&quot; class=&quot;jira-issue-macro-key issue-link&quot;  title=&quot;DECISION: Which module should host back-end translation files?&quot; &gt;
            &lt;img class=&quot;icon&quot; src=&quot;https://folio-org.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10309?size=medium&quot; /&gt;
            STRIPES-750
        &lt;/a&gt;
                                                    &lt;span class=&quot;aui-lozenge aui-lozenge-subtle aui-lozenge-success jira-macro-single-issue-export-pdf&quot;&gt;Closed&lt;/span&gt;
            &lt;/span&gt;
, and &lt;a href=&quot;https://folio-org.atlassian.net/wiki/display/DD/Handle+i18n+where+messages+are+generated&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://folio-org.atlassian.net/wiki/display/DD/Handle+i18n+where+messages+are+generated&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;&lt;b&gt;Use case(s)&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;As a FOLIO Stripes app user, I want to see strings in my native locale so I can understand the user interface.&lt;/p&gt;

&lt;p&gt;As a systems librarian, I want to enter controlled vocabulary in two or more locales so that my users can understand the user interface; some &lt;a href=&quot;https://en.wikipedia.org/wiki/List_of_multilingual_countries_and_regions&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;countries, regions&lt;/a&gt; or institutions are bilingual or multilingual.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Proposed solution/stories&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;KnowledgeWare has developed this capability as proposed in 
    &lt;span class=&quot;jira-issue-macro&quot; data-jira-key=&quot;UX-400&quot; &gt;
                &lt;a href=&quot;https://folio-org.atlassian.net/browse/UX-400&quot; class=&quot;jira-issue-macro-key issue-link&quot;  title=&quot;UX Review of KWare&amp;#39;s User-Level Locale Switcher&quot; &gt;
            &lt;img class=&quot;icon&quot; src=&quot;https://folio-org.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10309?size=medium&quot; /&gt;
            UX-400
        &lt;/a&gt;
                                                    &lt;span class=&quot;aui-lozenge aui-lozenge-subtle aui-lozenge-current jira-macro-single-issue-export-pdf&quot;&gt;In Progress&lt;/span&gt;
            &lt;/span&gt;
.&#160;&#160;&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;You can access this in Kware&apos;s FOLIO test environment here: &lt;a href=&quot;http://folio-testing.kwaretech.com/&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;http://folio-testing.kwaretech.com/&lt;/a&gt;&#160;&lt;/li&gt;
	&lt;li&gt;Username:&#160;&lt;b&gt;kware_test&lt;/b&gt;&#160; &#160; &#160; Password:&#160;&lt;b&gt;kware_test&lt;/b&gt;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; Preferred Locale: English&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;&lt;b&gt;Links to additional info&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Questions&lt;/b&gt;&lt;/p&gt;</description>
                <environment></environment>
        <key id="11876">UXPROD-3148</key>
            <summary>Translated library-defined controlled vocabularies</summary>
                <type id="10002" iconUrl="https://folio-org.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10322?size=medium">New Feature</type>
                            <parent id="13679">UXPROD-779</parent>
                                    <priority id="10002" iconUrl="https://dev.folio.org/assets/jira-priority/jira-p3.svg">P3</priority>
                        <status id="1" iconUrl="https://folio-org.atlassian.net/images/icons/statuses/open.png" description="The issue is open and ready for the assignee to start work on it.">Open</status>
                    <statusCategory id="2" key="new" colorName="blue-gray"/>
                                    <resolution id="-1">Unresolved</resolution>
                                                        <assignee accountid="-1">Unassigned</assignee>
                                                                <reporter accountid="5ced27478b03050f27825a93">Peter Murray</reporter>
                                    <labels>
                            <label>i18n</label>
                            <label>post-v1</label>
                    </labels>
                <created>Tue, 29 Jun 2021 20:45:55 +0000</created>
                <updated>Mon, 8 Nov 2021 21:10:58 +0000</updated>
                                                                                <due></due>
                            <votes>0</votes>
                                    <watches>8</watches>
                                                                <comments>
                                                            <comment id="16217" author="5ced27478b03050f27825a93" created="Fri, 30 Jul 2021 15:20:26 +0000"  >&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/browse/FOLIO-3258&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://folio-org.atlassian.net/browse/FOLIO-3258&lt;/a&gt; added Jira to ask the DevOps team to add the `ui-translations`/`mod-translations` apps to the reference builds when they become available.&lt;/p&gt;

&lt;p&gt;Massoud: please have your team make the pull requests against the appropriate Stripes repositories and put &quot;UXPROD-3148&quot; in the description of the pull request.  I will create the needed Jira issues for the Stripes repositories.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=62a96ae7192edb006f9f1bf9&quot; class=&quot;user-hover&quot; rel=&quot;62a96ae7192edb006f9f1bf9&quot; data-account-id=&quot;62a96ae7192edb006f9f1bf9&quot; accountid=&quot;62a96ae7192edb006f9f1bf9&quot; rel=&quot;noreferrer&quot;&gt;Khalilah Gambrell&lt;/a&gt; and &lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=615afd1cd9820f0070a09ef0&quot; class=&quot;user-hover&quot; rel=&quot;615afd1cd9820f0070a09ef0&quot; data-account-id=&quot;615afd1cd9820f0070a09ef0&quot; accountid=&quot;615afd1cd9820f0070a09ef0&quot; rel=&quot;noreferrer&quot;&gt;Zak Burke&lt;/a&gt;: This is a bit unusual in that adding an app will require &lt;em&gt;changes&lt;/em&gt; to Stripes, so I&apos;m not entirely clear on what path it should follow.  I&apos;m guessing the Stripes-Force team will want to review the changes to the Stripes repositories, but I don&apos;t &lt;em&gt;think&lt;/em&gt; this change has to go in front of Technical Council.  Thoughts?&lt;/p&gt;

&lt;p&gt;Related, 
    &lt;span class=&quot;jira-issue-macro&quot; data-jira-key=&quot;UXPROD-3149&quot; &gt;
                &lt;a href=&quot;https://folio-org.atlassian.net/browse/UXPROD-3149&quot; class=&quot;jira-issue-macro-key issue-link&quot;  title=&quot;UI language switcher widget&quot; &gt;
            &lt;img class=&quot;icon&quot; src=&quot;https://folio-org.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10322?size=medium&quot; /&gt;
            UXPROD-3149
        &lt;/a&gt;
                                                    &lt;span class=&quot;aui-lozenge aui-lozenge-subtle aui-lozenge-complete jira-macro-single-issue-export-pdf&quot;&gt;Open&lt;/span&gt;
            &lt;/span&gt;
 is also a change to Stripes, but is (I think) much less dramatic.  It brings the ability for users to change their session locale to the Stripes menu bar.  It, too, will be pull requests to the Stripes repositories (but not an added App as I understand it).&lt;/p&gt;</comment>
                                                            <comment id="16219" author="5ced27478b03050f27825a93" created="Wed, 4 Aug 2021 21:21:27 +0000"  >&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=70121%3Abcb96869-494a-4182-9110-3e4ea4355078&quot; class=&quot;user-hover&quot; rel=&quot;70121:bcb96869-494a-4182-9110-3e4ea4355078&quot; data-account-id=&quot;70121:bcb96869-494a-4182-9110-3e4ea4355078&quot; accountid=&quot;70121:bcb96869-494a-4182-9110-3e4ea4355078&quot; rel=&quot;noreferrer&quot;&gt;attia.alshareef&lt;/a&gt; and &lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=5dd4ce4d9d79ad0ef53a1853&quot; class=&quot;user-hover&quot; rel=&quot;5dd4ce4d9d79ad0ef53a1853&quot; data-account-id=&quot;5dd4ce4d9d79ad0ef53a1853&quot; accountid=&quot;5dd4ce4d9d79ad0ef53a1853&quot; rel=&quot;noreferrer&quot;&gt;Massoud Alshareef&lt;/a&gt;: One thing to keep in mind as you prepare the Pull Request to Stripes: pull requests to core code must meet a &quot;definition of done&quot;.  The rationale and discussion of the Definition of Done are in &lt;a href=&quot;https://docs.google.com/document/d/1lGoejFjT309OSF4vw1zBMoQi1AQXJ5cNrR8UUPleF8o/edit&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;this Google Doc&lt;/a&gt; from 2018.  Each team creates its own definition that is specific to the needs of the software it is developing (see &lt;a href=&quot;https://folio-org.atlassian.net/wiki/display/TC/Development+Teams+and+Resources&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;this page&lt;/a&gt; for a link to many of the team&apos;s documents).  In the case of 
    &lt;span class=&quot;jira-issue-macro&quot; data-jira-key=&quot;UXPROD-3148&quot; &gt;
                &lt;a href=&quot;https://folio-org.atlassian.net/browse/UXPROD-3148&quot; class=&quot;jira-issue-macro-key issue-link&quot;  title=&quot;Translated library-defined controlled vocabularies&quot; &gt;
            &lt;img class=&quot;icon&quot; src=&quot;https://folio-org.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10322?size=medium&quot; /&gt;
            UXPROD-3148
        &lt;/a&gt;
                                                    &lt;span class=&quot;aui-lozenge aui-lozenge-subtle aui-lozenge-complete jira-macro-single-issue-export-pdf&quot;&gt;Open&lt;/span&gt;
            &lt;/span&gt;
 and 
    &lt;span class=&quot;jira-issue-macro&quot; data-jira-key=&quot;UXPROD-3149&quot; &gt;
                &lt;a href=&quot;https://folio-org.atlassian.net/browse/UXPROD-3149&quot; class=&quot;jira-issue-macro-key issue-link&quot;  title=&quot;UI language switcher widget&quot; &gt;
            &lt;img class=&quot;icon&quot; src=&quot;https://folio-org.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10322?size=medium&quot; /&gt;
            UXPROD-3149
        &lt;/a&gt;
                                                    &lt;span class=&quot;aui-lozenge aui-lozenge-subtle aui-lozenge-complete jira-macro-single-issue-export-pdf&quot;&gt;Open&lt;/span&gt;
            &lt;/span&gt;
, it probably makes the most sense to look at &lt;a href=&quot;https://folio-org.atlassian.net/wiki/display/FOLIJET/Stripes-Force+-+Definition+of+Done&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;Stripes-Force&apos;s Definition of Done&lt;/a&gt; as a model since that team focuses on changes to Stripes.&lt;/p&gt;

&lt;p&gt;In particular, there are automated tests that will need to be written and the existing tests will need to pass with the pull request changes.  The state of testing is described in the &lt;a href=&quot;https://folio-org.atlassian.net/wiki/display/DQA/Folio+Module+Testing+Guidelines&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;Module Testing Guidelines&lt;/a&gt;, and &lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=5cffed1a5d548b0c51d6b19b&quot; class=&quot;user-hover&quot; rel=&quot;5cffed1a5d548b0c51d6b19b&quot; data-account-id=&quot;5cffed1a5d548b0c51d6b19b&quot; accountid=&quot;5cffed1a5d548b0c51d6b19b&quot; rel=&quot;noreferrer&quot;&gt;Anton Emelianov&lt;/a&gt; is the person who can help with questions on testing.  I wanted you to have that need in mind, though, as we plan the timeline between now and when changes to Stripes are due on August 27th for the Kiwi release.&lt;/p&gt;

&lt;p&gt;About the &lt;em&gt;&quot;Peer code review is performed&quot;&lt;/em&gt; requirement...the Stripes Force team meets on Mondays at (I think) 10:00am Eastern U.S. time.  Khalilah invited me to that to talk through these new features from a Product Owner perspective.  If you want to join me, I can forward the meeting invitation...and if not I&apos;ll report back to you later on Monday.  The Stripes Force team will look at the GitHub pull requests to ensure they are in good order with an eye towards long-term maintainability.&lt;/p&gt;

&lt;p&gt;One of the other FOLIO development rituals is to present new work during the Sprint Reviews that happen every four weeks.  The next sprint review is August 31st at 11am Eastern U.S. time.  I understand that is likely an inconvenient time, so if you wanted to pre-record something, I could play it back during the sprint review and answer any questions.  See the &lt;a href=&quot;https://youtu.be/aebVmV0TPtQ&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;recording of yesterday&apos;s sprint review&lt;/a&gt; to see how these presentations typically go.&lt;/p&gt;</comment>
                                                            <comment id="16222" author="5dd4ce4d9d79ad0ef53a1853" created="Sat, 7 Aug 2021 11:29:07 +0000"  >&lt;p&gt;Thank you &lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=5ced27478b03050f27825a93&quot; class=&quot;user-hover&quot; rel=&quot;5ced27478b03050f27825a93&quot; data-account-id=&quot;5ced27478b03050f27825a93&quot; accountid=&quot;5ced27478b03050f27825a93&quot; rel=&quot;noreferrer&quot;&gt;Peter Murray&lt;/a&gt;&#160;for guiding us on how to be in sync with best practices of FOLIO development. Your suggested roadmap toward participating in FOLIO dev community seems very clear, and it will help us sharpening our dev team skills to produce robust and reliable software.&lt;br/&gt;
&#160;&lt;br/&gt;
Attia will make sure that these guidelines will be followed as required.&lt;br/&gt;
&#160;&lt;br/&gt;
I will be happy tp participate in the &#160;Next Spring Review on Aug 31, assuming that I will receive a Zoom invitation.&lt;br/&gt;
&#160;&lt;/p&gt;</comment>
                                                            <comment id="16224" author="70121:bcb96869-494a-4182-9110-3e4ea4355078" created="Fri, 20 Aug 2021 01:26:55 +0000"  >&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=5ced27478b03050f27825a93&quot; class=&quot;user-hover&quot; rel=&quot;5ced27478b03050f27825a93&quot; data-account-id=&quot;5ced27478b03050f27825a93&quot; accountid=&quot;5ced27478b03050f27825a93&quot; rel=&quot;noreferrer&quot;&gt;Peter Murray&lt;/a&gt;, There are 3 PRs added:&lt;br/&gt;
 1- &lt;a href=&quot;https://github.com/folio-org/stripes-smart-components/pull/1114)&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;stripes-smart-components&lt;/a&gt;: Adding logic for translating the&#160;library-defined&#160;controlled&#160;vocabularies:&lt;/p&gt;

&lt;p&gt;(&lt;a href=&quot;https://github.com/folio-org/stripes-smart-components/pull/1114)&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://github.com/folio-org/stripes-smart-components/pull/1114)&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;2-&#160;&lt;a href=&quot;https://github.com/folio-org/stripes-core/pull/1107)&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;stripes-core&lt;/a&gt;:&#160;Adding logic for loading the translations of library-defined controlled vocabularies:&lt;br/&gt;
 (&lt;a href=&quot;https://github.com/folio-org/stripes-core/pull/1107&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://github.com/folio-org/stripes-core/pull/1107&lt;/a&gt;)&#160;&lt;/p&gt;

&lt;p&gt;3- &lt;a href=&quot;https://github.com/folio-org/ui-inventory/pull/1440)&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;ui-inventory&lt;/a&gt;:&#160;POC for enabling translations of library-defined controlled vocabularies on stripes apps:&lt;br/&gt;
 (&lt;a href=&quot;https://github.com/folio-org/ui-inventory/pull/1440)&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://github.com/folio-org/ui-inventory/pull/1440)&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&amp;gt; I will update the ui-translations docs to explain the complete workflow, thinking, and decisions about the translation work.&lt;/p&gt;

&lt;p&gt;&amp;gt;&amp;gt; Sorry for the delay, but time was really not enough for us.&lt;/p&gt;</comment>
                                                            <comment id="16226" author="5ced27478b03050f27825a93" created="Fri, 20 Aug 2021 20:07:17 +0000"  >&lt;p&gt;Thank you, &lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=70121%3Abcb96869-494a-4182-9110-3e4ea4355078&quot; class=&quot;user-hover&quot; rel=&quot;70121:bcb96869-494a-4182-9110-3e4ea4355078&quot; data-account-id=&quot;70121:bcb96869-494a-4182-9110-3e4ea4355078&quot; accountid=&quot;70121:bcb96869-494a-4182-9110-3e4ea4355078&quot; rel=&quot;noreferrer&quot;&gt;attia.alshareef&lt;/a&gt;.  I see what you mean now about needing to change the declaration of strings in each app:&lt;/p&gt;

&lt;p&gt;&lt;span class=&quot;image-wrap&quot; style=&quot;&quot;&gt;&lt;img src=&quot;/rest/api/3/attachment/content/10928&quot; style=&quot;border: 0px solid black&quot; /&gt;&lt;/span&gt; &lt;/p&gt;

&lt;p&gt;In the long term, that is probably a more stable way of identifying and translating each string...even if it means that the developers of the UI modules will need to retrofit this into their code.  We will need to set up documentation for that.  Can you verify: if a UI module doesn&apos;t have the necessary changes, the only impact is that the dynamic strings can&apos;t be translated by the Translations app...otherwise the app would function as it does now?  (With no errors?)&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=615afd1cd9820f0070a09ef0&quot; class=&quot;user-hover&quot; rel=&quot;615afd1cd9820f0070a09ef0&quot; data-account-id=&quot;615afd1cd9820f0070a09ef0&quot; accountid=&quot;615afd1cd9820f0070a09ef0&quot; rel=&quot;noreferrer&quot;&gt;Zak Burke&lt;/a&gt;: I&apos;ve marked the three pull requests for review.  Could you take a look at them, please?&lt;/p&gt;

&lt;p&gt;We are getting very close to the cutoff for changes to Stripes for the Kiwi release (due by the end of the week next week) and may need to put this off until the Lotus release, but let&apos;s see what happens.&lt;/p&gt;</comment>
                                                            <comment id="16228" author="63e2a2771b13d42998e4e706" created="Fri, 20 Aug 2021 20:20:00 +0000"  >&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=5ced27478b03050f27825a93&quot; class=&quot;user-hover&quot; rel=&quot;5ced27478b03050f27825a93&quot; data-account-id=&quot;5ced27478b03050f27825a93&quot; accountid=&quot;5ced27478b03050f27825a93&quot; rel=&quot;noreferrer&quot;&gt;Peter Murray&lt;/a&gt; &lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=70121%3Abcb96869-494a-4182-9110-3e4ea4355078&quot; class=&quot;user-hover&quot; rel=&quot;70121:bcb96869-494a-4182-9110-3e4ea4355078&quot; data-account-id=&quot;70121:bcb96869-494a-4182-9110-3e4ea4355078&quot; accountid=&quot;70121:bcb96869-494a-4182-9110-3e4ea4355078&quot; rel=&quot;noreferrer&quot;&gt;attia.alshareef&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;In the long term, that is probably a more stable way of identifying and translating each string...even if it means that the developers of the UI modules will need to retrofit this into their code. We will need to set up documentation for that. Can you verify: if a UI module doesn&apos;t have the necessary changes, the only impact is that the dynamic strings can&apos;t be translated by the Translations app...otherwise the app would function as it does now? (With no errors?)&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;The statement about these changes being needed to allow translation by the Translations App suggests that they are dependent upon the Translations App. Is that the case?&lt;/p&gt;

&lt;p&gt;Do these changes rely on the presence of the Translations App and / or the new modules (mod-translations, ui-translations)?&lt;/p&gt;

&lt;p&gt;This &lt;a href=&quot;https://github.com/folio-org/stripes-core/pull/1107/files#diff-c9d695b1d57404dfed01196c8cf479c0e4cd48583f6c78e7db23402582846864R156&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;line&lt;/a&gt; suggests that we are expecting stripes-core to make requests to mod-translations. Have I interpreted this correctly?&lt;/p&gt;</comment>
                                                            <comment id="16230" author="70121:bcb96869-494a-4182-9110-3e4ea4355078" created="Sat, 21 Aug 2021 09:21:15 +0000"  >&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=5ced27478b03050f27825a93&quot; class=&quot;user-hover&quot; rel=&quot;5ced27478b03050f27825a93&quot; data-account-id=&quot;5ced27478b03050f27825a93&quot; accountid=&quot;5ced27478b03050f27825a93&quot; rel=&quot;noreferrer&quot;&gt;Peter Murray&lt;/a&gt;:&#160;&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;In the long term, that is probably a more stable way of identifying and translating each string...even if it means that the developers of the UI modules will need to retrofit this into their code. We will need to set up documentation for that.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;&#160;I&apos;m already working on preparing a document that explains what is expected of everyone involved (backend - frontend - translators) to benefit from dynamic translation.&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;Can you verify: if a UI module doesn&apos;t have the necessary changes, the only impact is that the dynamic strings can&apos;t be translated by the Translations app...otherwise the app would function as it does now? (With no errors?)&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Exactly, all applications that do not make the required changes will work without errors but will not benefit from the dynamic translation.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=63e2a2771b13d42998e4e706&quot; class=&quot;user-hover&quot; rel=&quot;63e2a2771b13d42998e4e706&quot; data-account-id=&quot;63e2a2771b13d42998e4e706&quot; accountid=&quot;63e2a2771b13d42998e4e706&quot; rel=&quot;noreferrer&quot;&gt;Marc Johnson&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;Do these changes rely on the presence of the Translations App and / or the new modules (mod-translations, ui-translations)?&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;The required changes are not entirely dependent on the presence of (ui-translations - mod-translations). from this&#160;&lt;a href=&quot;https://github.com/folio-org/ui-inventory/pull/1440/files#diff-2aa599836848d19037ef1535708abfdf2f18d2e5f932c59219e757a1b4b71cb5R291&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;line&lt;/a&gt;, you can see that the default message for each translation key is the same as the string fetched from the backend, and from this&#160;&lt;a href=&quot;https://github.com/folio-org/stripes-core/pull/1107/files#diff-c9d695b1d57404dfed01196c8cf479c0e4cd48583f6c78e7db23402582846864R156&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;line&lt;/a&gt;, you can see the validation about&#160;whether mod-translations exists or not.&lt;/p&gt;

&lt;p&gt;But making these changes without the presence of (ui-translations - mod-translations) we will not have a dynamic translation process, not to mention the loss of many features that have been delayed for upcoming versions such as exporting and importing translations, fetching translation from Google ... etc.&lt;br/&gt;
Therefore, I see the necessity of having these units complete the workflow and achieve the desired goal.&lt;/p&gt;</comment>
                                                            <comment id="16233" author="63e2a2771b13d42998e4e706" created="Mon, 23 Aug 2021 12:37:59 +0000"  >&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=70121%3Abcb96869-494a-4182-9110-3e4ea4355078&quot; class=&quot;user-hover&quot; rel=&quot;70121:bcb96869-494a-4182-9110-3e4ea4355078&quot; data-account-id=&quot;70121:bcb96869-494a-4182-9110-3e4ea4355078&quot; accountid=&quot;70121:bcb96869-494a-4182-9110-3e4ea4355078&quot; rel=&quot;noreferrer&quot;&gt;attia.alshareef&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;The required changes are not entirely dependent on the presence of (ui-translations - mod-translations). from this line, you can see that the default message for each translation key is the same as the string fetched from the backend&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;I understand that there is a fallback to the data from the owning module.&lt;/p&gt;

&lt;p&gt;Ok, I&apos;ll rephrase (I&apos;m aware that folks use the term dependency differently): &lt;em&gt;In order to provide translations of property from controlled vocabularies an implementation of the &lt;tt&gt;translations&lt;/tt&gt; interface must be provided, without it, the behaviour is the same as prior to any of these proposed changes&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Is that a more reasonable statement?&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;from this line, you can see the validation about whether mod-translations exists or not.&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;That line seems to be a HTTP request to &lt;tt&gt;GET /translations&lt;/tt&gt;. How does that validate whether the interface that endpoint is part of is provided or not?&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;Therefore, I see the necessity of having these units complete the workflow and achieve the desired goal.&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;Does that mean that you think that both &lt;tt&gt;mod-translations&lt;/tt&gt; and &lt;tt&gt;ui-translations&lt;/tt&gt; need to be part of the official FOLIO distribution &lt;b&gt;before&lt;/b&gt; the changes above are made to &lt;tt&gt;stripes-core&lt;/tt&gt;, &lt;tt&gt;stripes-smart-components&lt;/tt&gt; and &lt;tt&gt;ui-inventory&lt;/tt&gt;?&lt;/p&gt;
</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10001">
                    <name>Cloners</name>
                                            <outwardlinks description="clones">
                                        <issuelink>
            <issuekey id="10088">UXPROD-515</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10008">
                    <name>Defines</name>
                                                                <inwardlinks description="is defined by ">
                                        <issuelink>
            <issuekey id="29189">UX-400</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10003">
                    <name>Relates</name>
                                            <outwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="79693">FOLIO-2802</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="82188">FOLIO-3258</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="12028">UXPROD-3181</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="33982">CHAL-196</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="48237">UIIN-2216</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="10928" name="screenshot-1.png" size="29498" author="5ced27478b03050f27825a93" created="Fri, 20 Aug 2021 20:03:18 +0000"/>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10053" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Back End Estimate</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10123"><![CDATA[XL < 15 days]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10054" key="com.atlassian.jira.plugin.system.customfieldtypes:userpicker">
                        <customfieldname>Back End Estimator</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>557058:b8e64633-1f7c-402d-9caf-9959a5ba5d0d</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10000" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummarycf">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10057" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Development Team</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10168"><![CDATA[None]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10014" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue key="$xmlutils.escape($text)">Internationalization and Localization</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_10050" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Front End Estimate</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10098"><![CDATA[Large < 10 days]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10051" key="com.atlassian.jira.plugin.system.customfieldtypes:userpicker">
                        <customfieldname>Front End Estimator</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>557058:b8e64633-1f7c-402d-9caf-9959a5ba5d0d</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10019" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i030u7:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10071" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Rank: 5Colleges (Full Jul 2021)</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10227"><![CDATA[R5]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10067" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Rank: Chalmers (Impl Aut 2019)</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10206"><![CDATA[R4]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10068" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Rank: Chicago (MVP Sum 2020)</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10212"><![CDATA[R5]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10069" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Rank: Cornell (Full Sum 2021)</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10217"><![CDATA[R5]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10070" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Rank: Duke (Full Sum 2021)</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10222"><![CDATA[R5]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10073" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Rank: FLO (MVP Sum 2020)</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10237"><![CDATA[R5]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10074" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Rank: GBV (MVP Sum 2020)</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10239"><![CDATA[R2]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                    <customfield id="customfield_10077" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Rank: Hungary (MVP End 2020)</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10254"><![CDATA[R2]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10078" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Rank: Lehigh (MVP Summer 2020)</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10262"><![CDATA[R5]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10080" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Rank: Leipzig (ERM Aut 2019)</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10271"><![CDATA[R4]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10079" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Rank: Leipzig (Full TBD)</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10264"><![CDATA[R2]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10082" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Rank: Mainz (Full TBD)</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10279"><![CDATA[R2]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10089" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Rank: TAMU (MVP Jan 2021)</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10318"><![CDATA[R5]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10091" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Rank: U of AL (MVP Oct 2020)</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10327"><![CDATA[R4]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                    <customfield id="customfield_10076" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Rank: hbz (TBD)</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10249"><![CDATA[R2]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10020" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10024" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>[CHART] Date of First Response</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Sat, 7 Aug 2021 11:29:07 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                </customfields>
    </item>
</channel>
</rss>