Do I need to include localization ruleset in an application? If I remember correctly, PRPC looks at user's browser locale and should take care of this translation rulesets (**_en, or **_ja) without developer specifying anywhere.
-MyApp:01-01-01 => Regular ruleset that contains rules developed in the original language (say, Japanese) -MyApp_en:01-01-01 => Localization ruleset that contains only field value rules in the target language (English)
However I am facing an issue.. when I get rid of this **_en ruleset, PRPC is displaying only original language (Japanese) on screen. Is this normal behavior or am I missing anything?
I am working with this poster on a project. Let me supplement his original statement. We have built an application (MyApp) all in Japanese which means, field name in Section is directly written in Japanese. So application works for anyone in Japanese. Now, since some English user also uses this application, we made a ruleset MyApp_en and all translation goes to this ruleset (i.e. field value). Now, recently I just found out that some of our members are adding this English version of ruleset into application rulestack explicitly, which I believe is not right thing to do. It is no need to include this localization ruleset (_en) explicitly in an application, and according to your user locale (browser or PRPC operator ID), PRPC intelligently should pick localization rule (localization rule takes precedence on base rule). Our question is if my understanding is correct or not. If we need to explicitly include this localization ruleset into application, we need to create two access groups which references to only base country ruleset and localized ruleset, which is too much maintenance.
What is happening here is, against my understanding above and I am confused.
Operator ID: browser setting is en and PRPC operator ID setting is also en
PRPC: MyApp (written in Japanese)
In this case, my expectation is PRPC still shows English field value on a screen because his or her locale is en. However, it is showing Japanese. Why? Are we missing anything?
- You have a rule written in your local language (say, French).
- You have a field value in _en ruleset.
- You do NOT have this _en ruleset explicitly in your application rulestack.
Use Case 1. Your browser setting is English and your operator ID's local is blank. In this case you see French on screen.
Use Case 2. Your browser setting is English and also you set your operator ID's local to be also English. In this case you see English on screen.
Is this what you are saying?
If so, this is another odd case. In my understanding, operator ID's locale takes precedence over browser's setting, but basically it should work the same way. Meaning, both Use Case 1 and 2, it should show English on screen.
Well, is this the same behavior as what we are facing here? Nope, we are seeing our local language (Japanese) for both Use Case 1 and 2. Is there any other setting I am missing? I don't believe localization specification has been changed in the last couple years.
Posted: 5 years ago
Posted: 3 Aug 2017 8:48 EDT
Akshay Kumar Sinha (AkshaySinha)
Senior Technical Solutions Engineer