Restrictions with multi-domain entities and translation

In Product Master versions 10.1 and earlier, Product Master assumed the default products, catalog, entities to be items, and hierarchy, entities to be categories. The multi domain feature removes this restriction and allows the product entity to be a user-defined domain entity specified on the product catalog and hierarchy as well.

With this feature, all of the labels and messages with the keywords item, items, category and categories are replaced with the corresponding new domain entity name labels that are defined in the $TOP/etc/default/domains/multi_domain_entities_${locale}.xml file.
There are two conditions for this limitation:
  • multi-domain entity management is not enabled
  • multi-domain entity management is enabled

There are many gender/animated and unanimated/vowel and consonant issues for different languages. There is no common translation to fit unknown substitutes for non-English languages. Even in English, there are similar issues, for example, "This is a pencil". If you change this sentence to "This is a ${0}", then when you replace ${0} with "apple", the sentence would read "This is a apple" and instead it should read "This is an apple." This example is a minor grammar error.

Multi-domain entity management is not enabled

Even when the multi-domain entity feature is not enabled, there are still variable substitutions in some of the texts retrieved from the resource bundle. These substitutions were not there in prior releases of the product. The terms used in the substitutions come from the DomainEntityUtils.js file of the respective locale. The terms in this file are translated without the context on how they are used. Furthermore, there are situations where one term is used is different contexts which require different ways of translation due to the grammar rules specific to a locale. It is because of these two reasons, it is possible that problems with the grammar will happen in some non-English locales. This type of problem is more commonly found in Polish and Russian.

Multi-domain entity management is enabled

If the multi-domain entity management function is enabled, the item and categories keywords are replaced with any user defined strings. Therefore, this will cause grammar errors for non-English languages. Articles, adjectives, pronouns, verbs, quantifier and so on need to be changed according to what substitutes will be used. For example:
Table 1. Grammar rules for non-English languages
Language Grammar rule
German, Spanish, French, Italian, Portuguese (Brazil), Russian, and Greek For these languages, all nouns have a gender. The nouns are either masculine or feminine. Articles, adjectives, some pronouns and some verbs have to change depending on the gender of the noun they modify. Also, articles and prepositions have to change depending on whether the following words start with a vowel or a consonant. There are two genders; male with male, and, female with female are correct. It is not correct to have male with female variables.
Note: In addition to the above description,
  • The German language has three genders, singular and plural, different ending of nouns, adjectives, and so on.
  • The Russian language has two types of nouns. For example, animated nouns (employee) have a different grammar paradigm than unanimated nouns (item).
  • The Greek language has three noun genders, masculine, feminine, and neutral. Each of these genders is declined by case, nominative, genitive, and accusative as well as by number, singular and plural. The endings of nouns differ for each combination of gender, case and number. The endings of other surrounding words such as articles, adjectives, and pronouns need to change according to the noun.
Japanese The word order has to change in case of "Verb + Object" in English to "Object + Verb" according to the Japanese grammar. Without knowing what "Object" is, the translated text in Japanese may be grammatically incorrect.
Korean The postposition have to change depending on whether the words end with a vowel or a consonant.
Polish Polish grammar declines words by cases. There are several cases for singulars and plurals, therefore, depending on where the variable ${1} is, it will be replaced with a custom string. For example, the word "Employee" occurs in the sentence, in Polish it can be:
  1. pracownik
  2. pracownika
  3. pracownikowi
  4. pracownikiem
  5. pracownicy
  6. pracowników
  7. pracownikom
  8. pracownikami
  9. pracownikach
Additionally, Polish grammar distinguishes between genders, and they affect, among other things, pronouns and verbs. For example, when the gender of the variable ${1} changes, (for example Server in Polish is masculine, Group is feminine, Link is neutral), other words in a sentence need to change as well:
English
${1} was successfully updated.
Polish masculine
${1} został pomyślnie zaktualizowany.
Polish feminine
${1} została pomyślnie zaktualizowana.
Polish neutral
${1} zostało pomyślnie zaktualizowane.
Simplified Chinese and traditional Chinese There are possible translation issues in simplified and traditional Chinese. For example, there are occasions where a different quantifier is to be used before a noun in Chinese. In these situations, the enablement of the feature may result in an incorrect use of a quantifier.
Turkish Turkish is an agglutinative language and has no gender. The language contains words that may take several grammatical suffixes to determine meaning. For example, the dictionary-form of a noun might take different inflectional suffixes such as suffix of possession and plurality.

In the Turkish language, vowels are modified to ensure vowel harmony. This means that if a suffix is attached to a stem, the vowel in the suffix agrees with the last vowel in the stem in terms of roundedness, and frontness and backness.

Besides, Turkish generally follows the SOV model. This model means that Turkish sentences are formed in the order of "Subject + Object + Verb". This model is unlike English sentences where the sentences are formed in the order of  SVO, "Subject + Verb + Object". Without knowing the "Object", the translated text in Turkish might be grammatically incorrect.