不明なロケール
上記の例では、attribute::LocaleMap
にはデフォルトの翻訳ルールを定義する空の locale
が含まれています。これは不明な locale=
値(つまり、翻訳マップに明示的にリストされていない値)に使用されます。 この翻訳マップがリクエスト /is/image/myCat/myImg?locale=ja
に適用された場合は、存在する場合は myCat/myImg_E
に解決され、存在しない場合は myCat/myImg
に解決されます。
翻訳マップにデフォルトの翻訳ルールが指定されていない場合、locale=
値が不明なすべてのリクエストに対してエラーが返されます。
例
多層検索
地域の基準に対応するために、ロケール(例:ヨーロッパ、中東、北米)をグループ化することが望ましい場合が多くあります。 これは、複数層のルックアップを使用して実現できます。
この例では、西および中東での使用に対応するコレクションをサポートします。 どちらのコレクションも汎用の画像コレクションに基づいて作成し、いくつかの画像を追加または変更します。その後、画像を w1
と w3
で共有する場合を除き、両方のコレクションが特定のロケール(中東の 2 つのバリアントには m1
、m2
、西洋の 3 つのロケールには w1
、w2
および 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 を します |