Tekstreeks lokaliseren text-string-localization
Bij de lokalisatie van teksttekenreeksen kunnen afbeeldingscatalogi meerdere landspecifieke representaties voor dezelfde tekenreekswaarde bevatten.
De server geeft de client de representatie weer die overeenkomt met de landinstelling die is opgegeven met locale=
, het vermijden van lokalisatie aan de clientzijde en het toestaan van toepassingen om landinstellingen eenvoudig te schakelen door de juiste locale=
waarde met de IS tekstverzoeken.
Toepassingsgebied section-a03f48e3bc0e4ab281909a2bd441a3c2
Tekstreeklokalisatie wordt toegepast op alle tekenreekselementen die het lokalisatietoken bevatten ^loc= *
locId*^
in de volgende catalogusvelden:
Elk subelement met een vertaalbare tekenreeks (gescheiden door een combinatie van scheidingstekens ',' ';' ':' en/of het begin/einde van het veld).
A 0xrrggbb kleurwaarde aan het begin van een lokaliseerbaar veld wordt niet gelokaliseerd en ongewijzigd doorgegeven.
Tekenreekssyntaxis section-d12320edf300409f8e17565b143acafc
Localisatie ingeschakeld string
elementen in de afbeeldingscatalogus bestaan uit een of meer gelokaliseerde tekenreeksen, die elk worden voorafgegaan door een lokalisatietoken.
De locId
moet ASCII zijn en mag geen '^' bevatten.
'^' kan overal in substrings met of zonder HTTP-codering voorkomen. De server komt overeen met het volledige localizationToken
^loc=locId^
patroon om subtekenreeksen te scheiden.
De stringElements
, die niet ten minste één localizationToken
, niet in aanmerking worden genomen voor lokalisatie.
De vertaalkaart section-f7ce3df91b724adf95cee44eac4915d4
attribute::LocaleStrMap
bepaalt de regels die door de server worden gebruikt om te bepalen welke localizedStrings
om terug te keren naar de client. Het bestaat uit een lijst met invoer locales
(die overeenkomen met de waarden die zijn opgegeven met locale=
), elk met geen of meer interne id's voor landinstellingen ( locId
). Bijvoorbeeld:
attribute::LocaleStrMap= en,E|nl,N|de,D|,
Leeg locId
waarden geven aan dat de defaultString
moet worden teruggegeven, indien beschikbaar.
Zie de beschrijving van attribute::LocaleStrMap
voor meer informatie.
Het vertaalproces section-a2a8a3e5850f4f7c9d2318267afe98a2
Op basis van het bovenstaande voorbeeld en de aanvraag /is/image/myCat/myItem?req=&locale=nl
, zoekt de server eerst naar " nl
" in de landinstellingskaart. De overeenkomende vermelding nl,N
geeft aan dat voor elk stringElement
de localizedString
gemarkeerd ^loc=N^
moeten worden geretourneerd. Als dit localizationToken
niet aanwezig is in de stringElement
, wordt een lege waarde geretourneerd.
Laten we zeggen catalog::UserData
for myCat/myItem
bevat het volgende (voor de duidelijkheid worden regeleinden ingevoegd):
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
De server retourneert het volgende in reactie op de voorbeeldaanvraag:
val1=111 str1=Dutch1 val2=value2 str2=Dutch2 str3=Dutch3
Onbekende landinstellingen section-26dfeefbd60345de94bbfeaaf7741223
In het bovenstaande voorbeeld: attribute::LocaleStrMap
heeft een item met een lege waarde locale
waarde. De server gebruikt deze vermelding om alles te verwerken locale=
waarden die niet uitdrukkelijk anders in de vertaalkaart worden gespecificeerd.
In het voorbeeld van de vertaalkaart wordt aangegeven dat in een dergelijk geval defaultString
moet worden teruggegeven, indien beschikbaar. Daarom is het volgende teruggekeerd als deze vertaalkaart op het verzoek wordt toegepast /is/image/myCat/myItem?req=&locale=ja
:
val1=111 str1=Default1 val2=value2 str2= str3=Default3
Voorbeelden section-ae6ff7fb90754b839f04ed08aadffa3f
Talenfamilies
Meerdere locId
waarden kunnen aan elk locale
in de vertaalkaart. De reden is dat het ondersteuning van landspecifieke of regiospecifieke variaties (bijvoorbeeld Engels in de VS versus Engels in het Verenigd Koninkrijk) toestaat voor selectie stringElements
bij het verwerken van de meeste inhoud met gangbare basislandinstellingen (bijvoorbeeld Internationaal Engels).
Ondersteuning wordt bijvoorbeeld toegevoegd voor Amerikaans-specifiek Engels ( *
locId* EUS
) en het VK-specifieke Engels ( *
locId* EUK
), om de af en toe alternatieve spelling te ondersteunen. Indien EUK of EUS niet bestaat, valt dit terug op E. Evenzo komen Oostenrijkse specifieke Duitse varianten ( DAT
) indien nodig beschikbaar worden gesteld bij de terugkeer van het Duits localizedStrings
(gemarkeerd met D
) meestal.
De attribute::LocaleStrMap
zou er als volgt uitzien:
en,E|en_us,EUS,E|en_uk,EUK,E|de,D|de_at,DAT,D|de_de,D
In de volgende tabel wordt de uitvoer voor een vertegenwoordiger beschreven stringElement
en locale
combinaties:
en, en_us, en_uk
de, de_at, de_de
alle andere
Engels
Duits
-
en, en_us
en_uk
de, de
de_at
alle andere
Engels
Engels (GB)
Duits
Oostenrijks
-
^ loc=en^English^loc=USE^US-English^loc=D^German^loc=DDE^Deutsch
In dit voorbeeld wordt locId DDE bestaat niet in kenmerk:LocaleStrMap en dus de subtekenreeks die aan deze eigenschap is gekoppeld locId wordt nooit geretourneerd.
en, en_uk
nl_NL
de, de_at, de_de
alle andere
Engels
US-English
Duits
-