HTTP Header Accept-Language
Gewünschte Sprachen für Produkt Content können ausschliesslich über den HTTP Header Accept-Language im Header der Anfrage eines HTTP-Clients (z.B. Browser oder Anwendung) gesetzt werden.
Per Web-Browser
Ein Browser z.B. hat in dem Feld Accept-Language folgendes stehen
de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
Damit würde der Produkt Content in Deutsch (de_de) und Englisch (en_us) angefragt werden.
Per Anwendung über HTTP Client
Eine HTTP Anwendungsclient kann nun ebenfalls analog dem Browser das Feld Accept- Language setzen, oder die ITscope-internen Sprachcodes verwenden. Diese können Komma-separiert angegeben werden, um den Produkt Content in mehreren Sprachen zu erhalten.
ITscope API Sprachcodes
Die ITscope API kann folgende Sprachcodes interpretieren:
- de – Deutsch
- en – Englisch
- fr – Französisch
- it – Italienisch
- es – Spanisch
- nl – Niederländisch
Ein Beispiel für deutschen und französischen Produkt Content wäre also eine HTTP Header Accept-Language mit dem Wert „de,fr„.
Der Content in allen Sprachen kann über „de,en,fr,nl,it,es“ abgerufen werden.
Contentsprache per API für Datenformate setzen
Wird kein HTTP Header Accept-Language angegeben, wird immer Content in Deutsch als Default zurückgegeben.
Es gibt 2 Bereiche in denen Texte also Textcontent angeben werden. Auf Produktebene gilt für Datenformat standard und developer. Und im Textcontent Bereich, diesen gibt es nur im Datenformat developer.
Regeln für Datenformat standard
Im Datenformat standard können Contents jeweils nur in 1 Sprache abgerufen werden. D.h. die Übergabe von z.B. „fr,de“ im HTTP Header Accept-Language würde immer nur den Content in der Sprache anzeigen des ersten Sprachcodes. In unserem Beispiel als nur Content in Französisch.
Im Datenformat standard gilt die Angabe des Accept-Language HTTP Headers für Content auf Produktebene.
Regeln für Datenformat developer
Im Datenformat developer können Contents im Api Element Textcontent in allen Sprachen abgerufen werden, die per HTTP Header Accept-Language gesetzt sind. Z.B. wird „de,en,fr“ gesetzt ist der Content in der Sprache Deutsch, Englisch und Französisch im Element TextContent zu finden. Im Produktbereich sind die Contents aber in Deutsch.
Im Datenformat developer gilt die Angabe ausschliesslich für die TextContent Ebene. Der Content auf der Produktebene bleibt beim Datenformat developer immer in der Sprache die als Erstes im HTTP Header Accept-Language auftritt.
Der TextContent ist aufgeteilt in mehrere Bereiche z.B.SprachIds für Content, Content Provider, Content Kategorien und Content Tags. Anhand dieser Daten kann dann der richtige Text ermittelt werden.
Contentsprache per Export für Datenformate setzen
Für den Export kann explizit innerhalb der Exportdefintion die Sprache(n) definiert werden, abhängig vom Datenformat.
Regeln für Datenformat standard
Im Datenformat standard können Contents jeweils nur in 1 Sprache abgerufen werden.
Regeln für Datenformat developer
Im Datenformat developer gilt die Sprachangabe ausschliesslich für die extra TextContent Ebene. Der Content auf der Produktebene bleibt beim Datenformat developer immer in der Sprache, die als Erstes ausgewählt ist.
Der TextContent ist aufgeteilt in mehrere Bereiche z.B.SprachIds für Content, Content Provider, Content Kategorien und Content Tags. Anhand dieser Daten kann dann der richtige Text ermittelt werden.