オブジェクト ID 変換 object-id-translation

画像サービングは、外部オブジェクト ID をロケール固有のオブジェクト(カタログ) ID に変換するメカニズムを提供します。 主なアプリケーションは、クライアントアプリケーションがロケール固有のオブジェクト ID を知る必要なく、ロケール固有のコンテンツと、複数のロケール間で共有されるコンテンツを提供することです。

アプリケーションはグローバルオブジェクト ID のみを使用して記述でき、画像サービングは自動的にロケール固有の画像や他のコンテンツ(使用可能な場合)を置き換えます。

locale は、画像サービングリクエストで locale= コマンドを使用して指定します。

NOTE
オブジェクト ID 変換は、画像サービングのカタログベースの使用にのみ適用されます。 ファイル名は翻訳できません。

範囲 section-66fcd5bd467c4eeaa1574583cbe9756d

画像、SVG、静的コンテンツカタログ内のエントリへのすべての参照は翻訳フォントに考慮され、ICC プロファイル参照は翻訳されません。 /is/image と /is/static requests のパスの object に加えて、これらのコマンドとカタログ属性は、ID 変換の対象となります(src=mask=template=defaultImage=attribute::DefaultImage および attribute::Watermark)。

ID 翻訳マップ section-9e417b352c314dfe94e831fdd62cddc8

汎用オブジェクト ID と locale= 値の入力として指定される、ローカライズされたコンテンツの ID を決定するためにサーバーで使用されるルールを attribute::LocaleMap で定義します。

attribute::LocaleMap は、入力 ロケール のリスト(locale= で指定された値に一致)で構成され、それぞれに出力ロケールのサフィックスが 1 つ以上ありません(*locSuffixes*)。

例えば、次のよ attribute::LocaleMap になります。

en,_E,|en_us,_E,|en_uk,_E,|fr,_F,|de,_D,|de_at,_D,|de_de,_D,|,_E,

リクエスト /is/image/myCat/myImg?locale=de_de は、カタログエントリ myCat/myImg_D に関連付けられた画像を返します(そのようなカタログエントリが存在すると仮定)。

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

翻訳プロセス section-1f64db17e9f644d88e09853670e14a16

上記の例では、サーバーは最初に ID 翻訳マップ内で localede_de」を検索します。 次に、このエントリに関連付けられた locSuffixes (この場合は「_D」と「」(空のサフィックス))を反復します。 イテレーションごとに、画像 ID と結果の ID にサフィックスが追加され、カタログ内の存在がテストされます。 見つかった場合は、そのカタログエントリが使用され、見つからなかった場合は、次のカタログエントリがテストされます。 この例では、myCat/myImg_D および myCat/myImg のエントリがチェックされます。 一致するものが見つからない場合、サーバーはエラーまたはデフォルトの画像(設定されている場合)を返します。

不明なロケール section-b2f3c83f2dc845d69b5908107b775537

上記の例では、attribute::LocaleMap にはデフォルトの翻訳ルールを定義する空の locale が含まれています。これは不明な locale= 値(つまり、翻訳マップに明示的にリストされていない値)に使用されます。 この翻訳マップがリクエスト /is/image/myCat/myImg?locale=ja に適用された場合は、存在する場合は myCat/myImg_E に解決され、存在しない場合は myCat/myImg に解決されます。

翻訳マップにデフォルトの翻訳ルールが指定されていない場合、locale= 値が不明なすべてのリクエストに対してエラーが返されます。

section-cc40bb00ee9248bb8cb23e17d7a5984c

多層検索

地域の基準に対応するために、ロケール(例:ヨーロッパ、中東、北米)をグループ化することが望ましい場合が多くあります。 これは、複数層のルックアップを使用して実現できます。

この例では、西および中東での使用に対応するコレクションをサポートします。 どちらのコレクションも汎用の画像コレクションに基づいて作成し、いくつかの画像を追加または変更します。その後、画像を w1w3 で共有する場合を除き、両方のコレクションが特定のロケール(中東の 2 つのバリアントには m1m2、西洋の 3 つのロケールには w1w2 および w3)に対してさらに絞り込まれます。 不明なロケールは汎用コレクションにのみマッピングされ、ロケール固有の画像にはアクセスできません。

attribute::LocaleMap: w1,-W,|w2,-W2,-W,|w3,-W,|m1,-M1,-M,|m2,-M2,-M,|,

次の表に、一般的な入力 ID myImg に対して考慮されるカタログエントリと、それらのエントリが考慮される順序を示します。

locale
検索するカタログ ID
w1, w3
myImg-W, myImg
w2
myImg-W2、myImg-W、myImg の
m1
myImg-M1、myImg-M、myImg の
m2
myImg-M2、myImg-M、myImg の
その他すべて
myImg

特定の ID の検索

一部の画像命名規則では、汎用画像 ID を内部でサポートしていない場合があります。 リクエストの汎用 ID は、常にカタログ内の特定の ID にマッピングする必要があります。正確な特定の ID が不明な場合もよくあります。

この例では、すべての言語の画像に _1_2 または _3 のサフィックスを付けることができます。 フランス語のロケールに固有の画像には _22 または _23 サフィックスが付き、ドイツ語のロケールに固有の画像には _470 または _480 サフィックスが付きます。

attribute::LocaleMap: ,_1,_2,_3|fr,_22,_23,_1,_2,_3|de,_470,_480,_1,_2,_3| de_at,_470,_480,_1,_2,_3| de_de,_470,_480,_1,_2,_3

次の表に、一般的な入力 ID myImg に対して考慮されるカタログエントリと、それらのエントリが考慮される順序を示します。

locale
検索する出力 ID
fr
_22、myImg_23、myImg_1、myImg_2、myImg_3
de , de_at , de_de
myImg_470, myImg_480, myImg_1, myImg_2, myImg_3 を します
その他すべて
myImg_1、myImg_2、myImg_3 を します

関連項目 section-05893816c66a406d89f9bfd6ace8d47a

attribute::LocaleMapattribute::DefaultLocalelocale=req=xlate

recommendation-more-help
a26166cd-f2f4-45ce-996d-96a0f0d6cf49