Syntaxe des chaînes

Les éléments string activés pour la localisation dans le catalogue d’images se composent d’une ou de plusieurs chaînes localisées, chacune précédées d’un jeton de localisation.

stringElement[ defaultString ]*{ localizationToken localizedString
localizationToken^loc= locStr ^
locIdID de paramètre régional interne pour la localizedString suivant cet localizationToken .
localizedStringChaîne localisée.
defaultStringChaîne à utiliser pour les paramètres régionaux inconnus.

locId doit être ASCII et ne peut pas inclure "^".

Le "^" peut se produire n’importe où dans les sous-chaînes avec ou sans codage HTTP. Le serveur correspond au modèle localizationToken ^loc=locId^ complet pour séparer les sous-chaînes.

Les stringElements, qui ne comprennent pas au moins un localizationToken, ne sont pas pris en compte pour la localisation.

La carte des traductions

attribute::LocaleStrMap définit les règles utilisées par le serveur pour déterminer les localizedStrings à renvoyer au client. Il se compose d’une liste d’entrées locales (correspondant aux valeurs spécifiées avec locale=), chacune n’ayant aucun ou plusieurs identifiants de paramètres régionaux internes ( locId). Par exemple :

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

Les valeurs locId vides indiquent que defaultString doit être renvoyé, le cas échéant.

Pour plus d’informations, reportez-vous à la description de attribute::LocaleStrMap .

Processus de traduction

Compte tenu de l’exemple de carte de traduction ci-dessus et de la requête /is/image/myCat/myItem?req=&locale=nl, le serveur commence par rechercher " nl" dans la carte locale. L’entrée nl,N correspondante indique que pour chaque stringElement, le localizedString marqué par ^loc=N^ doit être renvoyé. Si ce localizationToken n'est pas présent dans le stringElement, une valeur vide est renvoyée.

Supposons que catalog::UserData pour myCat/myItem contienne les éléments suivants (sauts de ligne insérés pour plus de clarté) :

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

Le serveur renvoie les éléments suivants en réponse à l’exemple de requête :

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

Paramètres régionaux inconnus

Dans l’exemple ci-dessus, attribute::LocaleStrMap a une entrée avec une valeur locale vide. Le serveur utilise cette entrée pour gérer toutes les valeurs locale= qui ne sont pas explicitement spécifiées autrement dans la carte de traduction.

L’exemple de carte de traduction indique que dans ce cas, defaultString doit être renvoyé, si disponible. Par conséquent, le code suivant est renvoyé si cette carte de traduction est appliquée à la requête /is/image/myCat/myItem?req=&locale=ja :

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