Localization Configuration
The procedure to configure custom localizations in your Reltio Data Cloud environment is simple.
The configuration of localization includes the following activities:
- Collection of localizable resources and preparation of resource bundles for deployment
- Deployment procedure
- Verification procedure
Data Label Patterns
Data label patterns are used to define how the label of an entity or an attribute will be displayed in the UI. Each entity type, relation type, nested attribute, reference attribute can have label patterns specified in the data model configuration.
For details refer to:
- Attributes configuration
- Entity types
- Relation types
- Configuration API
For each data label pattern, the localizable resource is a string value of the
dataLabelPattern
field.
Example 1
Localizable resources from data model configuration
Example of a data label pattern defined for nested attributes:
[{
"label": "Privacy Prefs",
"name": "PrivacyPreferences",
"type": "Nested",
...
"URI": "configuration/entityTypes/HCP/attributes/PrivacyPreferences",
"dataLabelPattern": "Allowed To Contact: {AllowedToContact}",
...
"attributes": [{
"label": "Allowed To Contact",
"name": "AllowedToContact",
"description": "Specifies whether the person is allowed to contact using their
contact information ",
"type": "Boolean",
...
"URI": "configuration/entityTypes/HCP/attributes/PrivacyPreferences/attributes/AllowedToContact"
},
...
]
}
...
]
Resource Bundle for Localization of Data Lable Pattern
In our example, localizable data label pattern string is Allowed To Contact: {AllowedToContact}. This string should be represented in a resource bundle (for example, in file my-custom-label-patterns-it.json) in the following way (language: Italian-it):{
"Allowed To Contact: {AllowedToContact}": "Pucontattare:
{AllowedToContact}",
...
}
Example 2
Localizable resources from data model configuration:
Example of a data label pattern defined for an entity type:
"entityTypes": [ { "URI": "configuration/entityTypes/Individual/Employee",
"description": "Employee entity type details", "dataLabelPattern": "Employee
{FirstName} {LastName} from {Company}",
... }
...]
Resource bundle for localization
In our example, localizable data label pattern string is "Employee{FirstName}
{LastName}
from {Company}
". This string should be
represented in a resource bundle (for example, in file
my-custom-label-patterns-ru.json
) in the following way (language:
Russian-ru):
{
"Employee {FirstName} {LastName} from {Company}
": "Сотрудник {FirstName} {LastName} из {Company}
",
...
}
Lookups
Lookups are used to define lists of values for an attribute to be displayed and available
for selection in the UI. For each lookup, the localizable resource is a string value of
the displayName
field.
Localizable resources from data model configuration
Example of a lookup code defined for the Gender attribute:
{
"label":"Gender",
"name":"Gender",
"description":"",
"type":"String",
... "URI":"configuration/entityTypes/Individual/attributes/Gender",
"lookupCode":"GENDER_CD"
}
Gender lookups configuration:
{
"GENDER_CD":{
"M":{
"displayName":"Male"
},
"F":{
"displayName":"Female"
} "N/A":{
"displayName":"Not known"
}
} ...
}
Resource Bundle for Localization of Lookups
{ "{lookupCode}.{displayName}" : "{value}"}
In our example, localizable lookup strings are: "Male", "Female", "Not known". These
strings should be represented in a resource bundle (for example, in file
my-custom-lookups-fr.json
) in the following way (language:
French-fr):
{ "GENDER_CD.Male": "Maculin", "GENDER_CD.Female": "Fminin", "GENDER_CD.Not known": "Inconnue", ... }
Example 2
Localizable Resources From Data Model Configuration
Example of lookup configuration:"STS_CD": { "A": { "displayName": "Active" }, "I": { "displayName": "Inactive" }
}
Resource Bundle For Localization
In our example, localizable lookup strings are: "Active", "Inactive". These strings should be represented in a resource bundle (for example, in file my-custom-lookups-es.json) in the following way (language: Spanish-es):{
"STS_CD.Active": "Activo",
"STS_CD.Inactive": "Inactivo",
...
}
Deployment
Prerequisites
Before you start the deployment procedure, ensure that you have the following information and deployment artifacts:
- Environment URL
- TenantID in this environment
- Language
- JSON file for deployment prepared according to the instructions provided in the Resource Bundle for Localization of Lookups Preparation section.
- Each localization resource bundle should be represented by a separate file for each language, one file per language.
- As a good practice, it is recommended to check the JSON for syntax errors by using any tool, for example http://www.jsoneditoronline.org/.
- If you need to deploy both data label patterns and lookups, you can merge corresponding resource bundles (for example, my-custom-label-patterns-es.json and my-custom-lookups-es.json) into one *-es.json file for deployment.
Deploy using API
POST
request using Postman (language: German-de):
POST {BalancerURL}/reltio/{tenantID}/resources/i18n
{Content-Type: application/json,Authorization: Bearer
{{access_token}},Language: de}
and body with all content of your German
localization (*-de.json) file. Example
Example (language: Portuguese-pt):
POST https://mpe-01.reltio.com/reltio/{TenantID}/resources/i18n
Headers:
{
Content-Type: application/json,
Authorization: Bearer "a30fdec5-a410-4e2c-9abc-3dda421ba750",
Language: pt
}
Body:
{
"{Number} {Type}": "{Number} {Type}",
"{AddressLine1} {City} {StateProvince} {Zip.Zip5}": "{AddressLine1} {City} {StateProvince} {Zip.Zip5}",
"[primaryMember]({LastName}) Household": "Agregado Familiar de [primaryMember]({LastName})",
...
}
Verification
Verify Localization Using API
GET
request using Postman (language: German-de):
GET {BalancerURL}/reltio/{tenantID}/resources/i18n
{Content-Type: application/json,Authorization: Bearer
{{access_token}},Language: de}
The response will contain the JSON structure of German localization strings deployed to this tenant.
Verify Localization Using UI
For more information, see Setting Up Localization.