Lokalisierung von Textzeichenfolgen text-string-localization
Bei der Lokalisierung von Textzeichenfolgen können Bildkataloge mehrere gebietsschemaspezifische Darstellungen für denselben Zeichenfolgenwert enthalten.
Der Server gibt dem Client die Darstellung zurück, die dem mit locale=
angegebenen Gebietsschema entspricht. Dadurch wird eine clientseitige Lokalisierung vermieden und Anwendungen können die Gebietsschemata wechseln, indem sie einfach den entsprechenden locale=
-Wert mit den IS-Textanforderungen senden.
Anwendungsbereich section-a03f48e3bc0e4ab281909a2bd441a3c2
Die Lokalisierung von Textzeichenfolgen wird auf alle Zeichenfolgenelemente angewendet, die das Lokalisierungstoken ^loc= *
locId*^
in den folgenden Katalogfeldern enthalten:
Jedes Unterelement, das eine übersetzbare Zeichenfolge enthält (getrennt durch eine beliebige Kombination von Trennzeichen ',' ';' ':' und/oder das Start-/End-Element des Felds).
Ein 0xrggbb -Farbwert am Anfang eines lokalisierbaren Felds wird aus der Lokalisierung ausgeschlossen und ohne Änderung weitergegeben.
String-Syntax section-d12320edf300409f8e17565b143acafc
Lokalisierungsaktivierte string
-Elemente im Bildkatalog bestehen aus einer oder mehreren lokalisierten Zeichenfolgen, denen jeweils ein Lokalisierungstoken vorangestellt wird.
Das locId
muss ASCII sein und darf kein '^' enthalten.
Das "^"kann an einer beliebigen Stelle in Unterzeichenfolgen mit oder ohne HTTP-Kodierung auftreten. Der Server stimmt mit dem gesamten Muster localizationToken
^loc=locId^
überein, um Unterzeichenfolgen zu trennen.
Die stringElements
, die nicht mindestens ein localizationToken
enthalten, werden bei der Lokalisierung nicht berücksichtigt.
Die Übersetzungskarte section-f7ce3df91b724adf95cee44eac4915d4
attribute::LocaleStrMap
definiert die Regeln, die vom Server verwendet werden, um zu bestimmen, welche localizedStrings
an den Client zurückgegeben werden soll. Sie besteht aus einer Liste mit Eingabe locales
(entspricht den mit locale=
angegebenen Werten), von denen jede keine oder mehrere interne Gebietsschema-IDs ( locId
) aufweist. Beispiel:
attribute::LocaleStrMap= en,E|nl,N|de,D|,
Leere locId
-Werte geben an, dass der defaultString
zurückgegeben werden soll, sofern verfügbar.
Weitere Informationen finden Sie in der Beschreibung von attribute::LocaleStrMap
.
Der Übersetzungsprozess section-a2a8a3e5850f4f7c9d2318267afe98a2
Bei der obigen beispielhaften Übersetzungszuordnung und der Anfrage "/is/image/myCat/myItem?req=&locale=nl
" sucht der Server zuerst in der Gebietsschema-Zuordnung nach "nl
". Der übereinstimmende Eintrag nl,N
gibt an, dass für jeden stringElement
die mit ^loc=N^
markierten localizedString
zurückgegeben werden sollen. Wenn dieser localizationToken
nicht im stringElement
vorhanden ist, wird ein leerer Wert zurückgegeben.
Angenommen, catalog::UserData
für myCat/myItem
enthält Folgendes (aus Gründen der Klarheit werden Zeilenumbrüche eingefügt):
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
Der Server gibt als Antwort auf die Beispielanfrage Folgendes zurück:
val1=111 str1=Dutch1 val2=value2 str2=Dutch2 str3=Dutch3
Unbekannte Gebietsschemata section-26dfeefbd60345de94bbfeaaf7741223
Im obigen Beispiel hat attribute::LocaleStrMap
einen Eintrag mit einem leeren locale
-Wert. Der Server verwendet diesen Eintrag für die Verarbeitung aller locale=
-Werte, die sonst nicht explizit in der Übersetzungskarte angegeben sind.
Die beispielhafte Übersetzungszuordnung gibt an, dass in einem solchen Fall die defaultString
zurückgegeben werden sollte, sofern verfügbar. Daher wird Folgendes zurückgegeben, wenn diese Übersetzungszuordnung auf die Anfrage /is/image/myCat/myItem?req=&locale=ja
angewendet wird:
val1=111 str1=Default1 val2=value2 str2= str3=Default3
Beispiele section-ae6ff7fb90754b839f04ed08aadffa3f
Sprachfamilien
Mehrere locId
-Werte können jedem locale
in der Übersetzungszuordnung zugeordnet werden. Der Grund dafür ist, dass es die Unterstützung länderspezifischer oder regionsspezifischer Varianten (z. B. US-Englisch oder UK-Englisch) für die Auswahl von stringElements
ermöglicht, während die meisten Inhalte mit gängigen Basisgebietsschemata (z. B. Internationales Englisch) verarbeitet werden.
Beispielsweise wird Unterstützung für US-spezifisches Englisch ( *
locId* EUS
) und britisches Englisch ( *
locId* EUK
) hinzugefügt, um die gelegentliche alternative Rechtschreibung zu unterstützen. Wenn EUK oder EUS nicht vorhanden ist, wird auf E zurückgegriffen. Ebenso können österreichisch-spezifische deutsche Varianten ( DAT
) bei Bedarf zur Verfügung gestellt werden, während meist gebräuchliche deutsche localizedStrings
(mit D
markiert) zurückgegeben werden.
Der attribute::LocaleStrMap
würde wie folgt aussehen:
en,E|en_us,EUS,E|en_uk,EUK,E|de,D|de_at,DAT,D|de_de,D
In der folgenden Tabelle wird die Ausgabe für einige repräsentative stringElement
- und locale
-Kombinationen beschrieben:
en, en_us, en_uk
de, de_at, de_de
alle anderen
Englisch
Deutsch
-
en, en_us
en_uk
de, de_de
de_at
alle anderen
Englisch
UK-Englisch
Deutsch
österreichisch
-
^ loc=en^English^loc=USE^US-English^loc=D^German^loc=DDE^Deutsch
In diesem Beispiel ist das DDE locId im Attribut nicht vorhanden::LocaleStrMap und daher wird die mit dieser locId verknüpfte Unterzeichenfolge nie zurückgegeben.
en, en_uk
en_us
de, de_at, de_de
alle anderen
Englisch
US-Englisch
Deutsch
-