This section summarizes considerations that are specific to indexing data in multiple languages.

Data Records

If you are indexing data in multiple languages, separate data records must be generated for each language. For example, if a product has separate data for French and English (such as descriptions and color names), a French record and an English record must be generated. This is true regardless of whether you have a separate EAC application for each language or multiple languages in the same EAC application.

To generate the data records, the ProductCatalogOutputConfig component uses the LocaleVariantProducer, which ensures that separate records are created for each of the locales listed in the /atg/endeca/ApplicationConfiguration component’s locales property. (See Using Variant Producers for more information about LocaleVariantProducer.) If multiple languages are indexed by the same application, each data record includes a product.language property whose value identifies the language of the record. The language name is given in its own language. For example, the value for the German language is Deutsch.

Schema

If there is a separate application for each language, a separate schema is generated for each application. If there are multiple languages in an application, a single schema is generated based on the first locale listed in the /atg/endeca/ApplicationConfiguration component’s locales property.

Dimension Values

If you are indexing data in multiple languages, separate dimension value records must be generated for each language. This is true regardless of whether you have a separate EAC application for each language or multiple languages in the same EAC application.

To generate category dimension value records, the CategoryToDimensionOutputConfig component uses the LocaleVariantProducer to create separate records for each of the locales listed in the /atg/endeca/ApplicationConfiguration component’s locales property. The RepositoryTypeDimensionExporter component also generates separate records for each language.

If multiple languages are indexed in the same application, the records generated by the /atg/commerce/endeca/index/RepositoryTypeDimensionExporter component contain additional properties for the translated display names of the repository item types. These properties are named displayName_languageCode, where languageCode is the two-letter language code associated with one of the specified locales. For example:

<PROP NAME="displayName_en">
  <PVAL>Product</PVAL>
</PROP>
<PROP NAME="displayName_de">
  <PVAL>Produkt</PVAL>
</PROP>
<PROP NAME="displayName_es">
  <PVAL>Producto</PVAL>
</PROP>

Note that the property names shown in the example above are appropriate for use with CAS-based deployment templates, and assume that the name changes specified in propertyNameReplacementMap property of the DimensionDocumentSubmitter component have been applied. See RecordStoreDocumentSubmitterfor more information.

In addition, if you set the multiLanguageSynonyms property of the RepositoryTypeDimensionExporter component to true, then additional Guided Search record properties are generated to indicate that all translations of the same repository type are synonyms for searching. For example:

<PROP NAME="dimval.search_synonym">
  <PVAL>Product</PVAL>
  <PVAL>Produkt</PVAL>
  <PVAL>Producto</PVAL>
</PROP>

Copyright © 1997, 2017 Oracle and/or its affiliates. All rights reserved. Legal Notices