翻訳マップ

attribute::LocaleStrMap は、クライアントに返す localizedStrings を決定するためにサーバーが使用するルールを定義します。 これは入力 locales のリスト(locale= で指定された値に一致)で構成され、それぞれに内部ロケール ID (locId)が 0 個以上あります。 以下に例を挙げます。

attribute::LocaleStrMap= en,E|nl,N|de,D|,

空の locId 値は、defaultString が返される必要があることを示します(使用可能な場合)。

詳しくは、attribute::LocaleStrMap の説明を参照してください。

翻訳プロセス

上記の翻訳マップの例とリクエスト /is/image/myCat/myItem?req=&locale=nl を指定すると、サーバーはまず、ロケールマップで「nl」を探します。 一致するエントリ nl,N は、stringElement ごとに、^loc=N^ でマークされた localizedString を返す必要があることを示しています。 この localizationTokenstringElement に存在しない場合は、空の値が返されます。

例えば、myCat/myItemcatalog::UserData に次の改行が含まれているとします(わかりやすくするために挿入されます)。

val1=111?? str1=Default1^loc=N^Dutch1^loc=D^German1?? val2=value2?? str2=^loc=E^English2^loc=N^Dutch2^loc=D^German2?? str3=Default3^loc=N^Dutch3^loc=D^German3

サーバーは、サンプルのリクエストに応答して次を返します。

val1=111 str1=Dutch1 val2=value2 str2=Dutch2 str3=Dutch3

不明なロケール

上記の例では、attribute::LocaleStrMap には、空の locale 値を持つエントリがあります。 サーバーはこのエントリを使用して、翻訳マップで明示的に指定されていないすべての locale= 値を処理します。

翻訳マップの例では、このような場合に defaultString が返されるように指定しています(使用可能な場合)。 したがって、この翻訳マップがリクエスト /is/image/myCat/myItem?req=&locale=ja ージに適用される場合は、次のように返されます。

val1=111 str1=Default1 val2=value2 str2= str3=Default3

言語ファミリ

複数の locId 値を翻訳マップの各 locale に関連付けることができます。 その理由は、選択した stringElements ーザーに対して国固有または地域固有のバリエーション(例:米国英語と英国英語)をサポートし、共通の基本ロケール(例:国際英語)を使用してほとんどのコンテンツを処理できるためです。

例えば、米国固有の英語(*locId* EUS)と英国固有の英語(*locId* EUK)のサポートが追加され、時折の代替スペルがサポートされます。 EUK または EUS が存在しない場合は、E にフォールバックします。同様に、オーストリア固有のドイツ語版(DAT)を必要に応じて使用できるようにし、その際に一般的なドイツ語 localizedStringsD でマーク)を常に返すことができます。

attribute::LocaleStrMap は次のようになります。

en,E|en_us,EUS,E|en_uk,EUK,E|de,D|de_at,DAT,D|de_de,D

次の表に、代表的な stringElementlocale の組み合わせの出力を示します。

stringElementlocale出力文字列
^loc=E^English^loc=D^German

en, en_us, en_uk

de, de_at, de_de

その他すべて

英語

ドイツ語

-

^loc=E^English^loc=UKE^UK-English^loc=D^German^loc=DAT^オーストリア

en, en_us

en_uk

de, de_de

de_at

その他すべて

英語

英国 – 英語

ドイツ語

オーストリア

-

^ loc=en^English^loc=USE^US-English^loc=D^German^loc=DDE^Deutsch

この例では、 locIdDDE は attribute::LocaleStrMap に存在 ないので、この locId に関連付けられた部分文字列は返されません。

en, en_uk

en_us

de, de_at, de_de

その他すべて

英語

米国 – 英語

ドイツ語

-

Experience Manager