Jens Oliver Meiert

Internationalisierungs­tipps für das Web (W3C)

Originalversion:
https://www.w3.org/­International/quicktips/
Übersetzer:
Jens Oliver Meiert, meiert.com
Datum der Übersetzung:
11. August 2009

Bei diesem Dokument handelt es sich um die deutsche Übersetzung eines W3C-Textes. Dieser Text ist urheberrechtlich geschützt; bitte beachten Sie die Hinweise des Originaldokuments sowie die Anmerkungen der W3C-Dokumentlizenz. Die Übersetzung hat keine durch das W3C legitimierte, normative Wirkung. Das einzige maßgebliche Dokument ist das englische Original.

Bitte senden Sie Fehler und Korrekturen zur deutschen Fassung an den Übersetzer. Kommentare des Übersetzers, die als solche gekennzeichnet sind, unterliegen dem Urheberrecht des Übersetzers. Sie sind kein Bestandteil des Ursprungsdokuments.

Internationalisierungs­tipps für das Web

Tipps

Zeichenkodierung: Verwenden Sie wenn möglich Unicode für Inhalte, Datenbanken und so weiter. Geben Sie die Kodierung von Inhalten immer an.

Die von Ihnen gewählte Zeichenkodierung bestimmt, wie Bytes Zeichen in Ihrem Text zugeordnet werden.

Normalerweise beschränken Zeichenkodierungen (»Character Encodings«) Sie auf eine bestimmte Schrift oder eine bestimmte Reihe von Sprachen. Unicode erlaubt Ihnen, mit fast allen Schriften und Sprachen der Welt umzugehen. Unicode vereinfacht somit die Handhabung von Inhalten in mehreren Sprachen, ob auf einer einzelnen Seite oder innerhalb einer oder mehrerer Sites. Unicode ist besonders nützlich, wenn es in Formularen, Skripten und Datenbanken gebraucht wird, da man in diesen häufig mehrere Sprachen unterstützen muss. Unicode macht es Ihnen einfach, zusätzliche Sprachen in Inhalten zu gebrauchen.

Solange Sie nicht in geeigneter Form angeben, welche Zeichenkodierung Sie benutzen, kann es sein, dass Benutzer Ihre Inhalte nicht lesen können. Das liegt daran, dass von der Anwendung, die Ihren Text interpretiert, falsche Annahmen getroffen werden könnten, wie Bytes Zeichen zugeordnet werden sollen.

Geben Sie mir Hintergrundinformationen
»Zeichenkodierungen für Anfänger« erklärt einige der Grundideen hinter Zeichenkodierungen und warum dies für Sie wichtig ist.
Eine »Einführung in Zeichensätze und -kodierungen« bietet einen Einblick in verschiedene Themenaspekte.
Wie kann ich loslegen?
HTML- & CSS-AutorenSpezifikationsautorenServer-Setup
Escape-Zeichen: Verwenden Sie »echte« Zeichen anstelle von Escape-Zeichen (wie »á«, »á« oder »á«) wann immer Sie können.

Escape-Zeichen wie numerische Zeichenreferenzen (»Numeric Character References«, NCRs) und Entitätsreferenzen stellen Methoden dar, um jedes Unicode-Zeichen im Markup nur mittels ASCII-Zeichen abzubilden. So können sie beispielsweise das Zeichen »á« in (X)HTML als »á«, »á« oder »á« darstellen.

Derartige Escape-Zeichen sind nützlich, um mehrdeutige oder unsichtbare Zeichen wiederzugeben, und um Probleme mit Syntaxzeichen wie Kaufmanns-Unds und spitzen Klammern zu vermeiden. Sie können außerdem gelegentlich hilfreich sein, um Zeichen darzustellen, die nicht von der von Ihnen verwendeten Zeichenkodierung unterstützt werden oder auf Ihrer Tastatur nicht verfügbar sind. Ansonsten sollten Sie »echte« Zeichen immer Escapes vorziehen.

Geben Sie mir Hintergrundinformationen
»Gebrauch von Zeichenentitäten und NCRs« bietet zusätzliche Informationen zur Verwendung von Escapes in Markup-Sprachen. Beachten Sie dabei insbesondere, dass Entitäten (wie »á«) mit Bedacht eingesetzt werden sollten.
Wie kann ich loslegen?
HTML- & CSS-AutorenSpezifikationsautorenSVG-Autoren
Sprache: Geben Sie die Sprache von Dokumenten an und weisen Sie innerhalb von Dokumenten auf Änderungen der Sprache hin.

Informationen über die (menschliche) Sprache von Inhalten ist wichtig für Zugänglichkeit, Darstellung, Suchen, Bearbeiten und aus weiteren Gründen. Während mehr und mehr Inhalte getaggt und dabei auch richtig getaggt werden, werden Anwendungen, die Sprachdaten ermitteln können, nützlicher und populärer.

Wenn Sie Sprachen deklarieren, müssen Sie Informationen zu einem bestimmten Teil der Inhalte möglicherweise anders als Metadaten zum gesamten Dokument angeben. Es ist wichtig, diese Unterscheidung zu verstehen.

Geben Sie mir Hintergrundinformationen
»Sprache im Web« bietet eine Einführung in verschiedene Aspekte des Themas.
Wie kann ich loslegen?
HTML- & CSS-AutorenSVG-AutorenXML-AutorenSchema-EntwicklerServer-Setup
Darstellung vs. Inhalte: Verwenden Sie Stylesheets für die Darstellung; beschränken Sie den Einsatz von Markup auf die Vermittlung von Semantik.

Es entspricht einem wichtigen Webdesign-Prinzip (Anmerkung des Übersetzers: das die Wartung vereinfacht), das Styling und die Darstellung von Inhalten getrennt von den tatsächlichen Inhalten zu halten. Dies macht es einfacher, dieselben Inhalte andersartig darzustellen, um diese zum Beispiel in einem konventionellen Browser wie auch auf einem mobilen Endgerät anzuzeigen.

Das Prinzip ist besonders wichtig für Lokalisierung, da Schriften unterschiedliche typographische Bedürfnisse haben können. So kann es dank der Komplexität von japanischen Schriftzeichen zum Beispiel wünschenswert sein, Betonung auf japanischen (X)HTML-Seiten in anderer Form darzustellen als durch Fetten oder Schrägstellen. Es ist wesentlich einfacher, solche Anpassungen vorzunehmen, wenn die Darstellung über CSS beschrieben wird, und Markup ist viel sauberer und wartbarer, wenn Text korrekterweise und unzweideutig eher als »betont« denn als »fett« gekennzeichnet wird.

Nicht nur während Lokalisierungsarbeiten kann die Wartung von CSS anstelle von Markup erheblich viel Aufwand und Zeit einsparen, da Anpassungen für alle Seiten an einem einzelnen Ort vorgenommen werden, und sich Übersetzer auf die Inhalte, nicht die Darstellung konzentrieren können.

Geben Sie mir Hintergrundinformationen
Lesen Sie die Folien zum 2007er @media-Vortrag, »Entwickeln für internationale Besucher: Praktische Tipps«.
Bilder, Animationen und Beispiele: Achten Sie auf Übersetzbarkeit und unangemessene »kulturelle Voreingenommenheit«.

Wenn Sie wünschen, dass Ihre Inhalte mit Menschen kommunizieren, müssen Sie ihre Sprache sprechen, nicht nur durch den Text, sondern auch durch lokales Bildmaterial, Farben, Objekte und »kulturelle Voreingenommenheit«. Es ist leicht, die kulturspezifische Natur von Symbolen, Verhalten, Konzepten, Körpersprache, Humor &c. zu übersehen. Sie sollten sich um Rückmeldung von Nutzern, die in den entsprechenden Ländern wohnen, zur Angemessenheit und Relevanz Ihrer Bilder, Videos und Beispiele bemühen.

Sie sollten außerdem Vorsicht walten lassen, wenn Text in Graphiken eingebunden wird, aber Inhalte übersetzt werden sollen. Text auf komplexen Hintergrundbildern oder mit eingeschränktem Platzangebot kann Übersetzern beachtliche Probleme bereiten. Sie sollten dem Lokalisierungsteam deshalb Graphiken liefern, die Text auf einer separaten Ebene (»Layer«) definieren, und Sie sollten im Hinterkopf behalten, dass sich Text in Sprachen wie Englisch oder Chinesisch nach Übersetzungen fast immer ausdehnt, also länger wird.

Geben Sie mir Hintergrundinformationen
Lesen Sie die Folien zum 2007er @media-Vortrag, »Entwickeln für internationale Besucher: Praktische Tipps«.
Formulare: Verwenden Sie eine geeignete Zeichenkodierung, sowohl in Formularen als auch auf Servern. Unterstützen Sie regionale Formate von Namen und Adressen, Zeit- und Datumsangaben &c.

Die Zeichenkodierung, die auf einer HTML-Seite benutzt wird, die ein Formular beinhaltet, sollte alle Zeichen unterstützen, die benötigt werden, um Daten in das Formular einzugeben. Dies ist besonders wichtig, wenn Benutzer wahrscheinlich sogar Informationen in mehreren Sprachen eingeben.

Datenbanken und Skripte, die Daten von Formularen empfangen, die auf mehrsprachigen Seiten eingebunden sind, müssen gleichzeitig außerdem alle Zeichen der betroffenen Sprachen unterstützen.

Die einfachste Art, dies zu ermöglichen, ist, Unicode sowohl für die Seiten, die die Formulare beinhalten, als auch sämtliche Backend-Verarbeitung und -Speicherung zu verwenden. In solch einem Szenario kann der Benutzer Daten in jeder Sprache und Schrift eingeben, die er möchte.

Sie sollten dazu vermeiden, anzunehmen, dass Name und Adresse des Benutzers unbedingt demselben Format folgen wie Ihrem. Fragen Sie sich, wie viele Details Sie benötigen, um Adressen in mehrere Felder zu zerlegen. Behalten Sie im Hinterkopf, dass es in manchen Kulturkreisen keine Straßennamen gibt, dass in anderen die Hausnummer der Straße vorangeht, dass manche Menschen mehr als eine Zeile benötigen, um den der Stadt vorangehenden Teil auszufüllen &c. Tatsächlich orientiert sich die Adresse für manche Orte vom Allgemeinen zum Speziellen, was eine andere Layout-Strategie impliziert. Seien Sie vorsichtig damit, fehlerhafte Annahmen zu Vorwahlen oder der Länge von Telefonnummern in Validierungsroutinen zu integrieren. Seien Sie sich darüber im Klaren, dass sorgfältige Beschriftung für die Eingabe von numerischen Daten notwendig ist, da es unterschiedliche Konventionen dazu gibt, Tage, Monate oder Jahre zu ordnen.

Wenn Sie Informationen von Menschen aus mehr als einem Land sammeln, ist es wichtig, eine Strategie zu entwickeln, um die verschiedenen Formate zu berücksichtigen, die Menschen erwarten, benutzen zu können. Dies ist nicht nur für das Design der Formulare wichtig, die Sie entwerfen, sondern hat auch Einfluss darauf, wie Sie derartige Informationen in Datenbanken speichern.

Wie kann ich loslegen?
HTML- & CSS-AutorenHTML- & CSS-Autoren IISpezifikationsautoren
Verfassen von Texten: Verwenden Sie einfachen, kurzen Text. Lassen Sie Vorsicht walten, wenn Sie Sätze aus mehreren Zeichenketten zusammensetzen.

Einfacher, knapper Text ist einfacher zu übersetzen. Für Menschen, die eine andere Muttersprache haben, ist er außerdem einfacher zu lesen.

Sie sollten sich besondere Mühe geben, wenn Sie Nachrichten aus mehreren Zeichenketten zusammenstellen oder Variablentexte in Zeichenketten einfügen. Nehmen Sie zum Beispiel an, dass Ihre Website JSP-Scripting verwendet, und Sie sich dazu entschließen, bestimmte Nachrichten »on the fly« zusammenzustellen. Sie mögen beispielsweise Nachrichten erzeugen, indem Sie separate Unterzeichenketten konkatenieren, wie »Nur«, »Keine«, »Ergebnisse in«, »irgendeinem Format«, »HTML« oder »anzeigen«. Da die Reihenfolge von Text in Sätzen in anderen Sprachen unterschiedlich sein kann, können entsprechende Übersetzungen einige Schwierigkeiten bereiten.

Es ist ähnlich wichtig, zu vermeiden, dass die Position von Variablen in Texten wie »Seite 1 von 10« fixiert wird. Die Syntax anderer Sprachen kann erfordern, dass die Anordnung geändert wird, um Sinn zu ergeben. Wenn Sie PHP verwenden, kann dies eine formatierende Zeichenkette à la Seite %1\$d von %2\$d anstatt einem einfachen Seite %d von %d bedeuten. Letzteres kann in manchen Sprachen unübersetzbar sein.

Wie kann ich loslegen?
HTML- & CSS-Autoren

Wenn Sie über Versionen einer einzelnen Seite oder gar einer Website für eine andere Sprache, ein anderes Land oder eine andere Region verfügen, sollten Sie dem Nutzer einen Weg bieten, die Version zu benutzen, die er bevorzugt. Diese Möglichkeit sollte auf jeder Seite bestehen, für die es eine lokalisierte Alternative gibt.

Wenn Sie Links zu Seiten in anderen Sprachen bieten, sollten Sie den Namen der Zielsprache in Sprache und Schrift der Zielsprache anbieten. Gehen Sie nicht davon aus, dass der Benutzer Deutsch lesen kann. Im Fall eines Links zu einer französischen Seite sollte anstatt »Französisch« »Français« geschrieben werden. Dies trifft ebenfalls zu, wenn Sie den Benutzer zu einer landes- oder regionsspezifischen Seite oder Site führen, so wäre »Italia« »Italien« vorzuziehen.

Wie kann ich loslegen?
HTML- & CSS-Autoren
Von rechts nach links laufende Texte: Benutzen Sie dir="rtl" auf dem html-Start-Tag in HTML. Verwenden Sie das dir-Attribut nur dann erneut, wenn Sie die Textgrundausrichtung ändern.

Text in Sprachen wie Arabisch, Hebräisch, Persisch und Urdu wird von rechts nach links gelesen. Diese Leserichtung führt typischerweise zu rechtsbündigem Text und Spiegelung von Seiten- und Tabellenlayout. Sie können die Standardausrichtung und Anordnung von Seiteninhalten auf rechts nach links (RTL) umstellen, indem Sie einfach dir="rtl" auf dem html-Start-Tag verwenden.

Die Textausrichtung, die auf dem html-Element definiert wird, bestimmt die Grundausrichtung des Dokuments, die sich auf alle Elemente bezieht. Es ist nicht notwendig, das Attribut auf Elementen zu wiederholen, die auf einer niedrigeren Ebene folgen, solange Sie die Ausrichtung nicht ausdrücklich ändern wollen.

Eingeschlossener Text in zum Beispiel lateinischer Schrift läuft innerhalb des von rechts nach links laufenden Textflusses ebenso wie Zahlen immer noch von links nach rechts. Wenn Sie mit von rechts nach links laufenden Sprachen arbeiten, sollten Sie sich mit den Grundlagen des Unicode-Bidirektionalitätsalgorithmus vertraut machen. Dieser Algorithmus kümmert sich um bidirektionalen Text, ohne Intervention vom Autor zu verlangen. Unter bestimmten Umständen kann es jedoch erforderlich sein, dass Markup oder Unicode-Steuerzeichen benötigt werden, um den richtigen Effekt sicherzustellen.

Geben Sie mir Hintergrundinformationen
»(X)HTML-Seiten in Arabisch und Hebräisch erstellen« bietet eine Einführung in die Grundlagen der Handhabung von von rechts nach links laufenden Inhalten in HTML. Diese Grundlagen sind ähnlich zu anderen Markup-Sprachen.
»Was Sie über den Bidi-Algorithmus und Inline-Markup wissen müssen« bietet eine Einführung in die Grundlagen der Handhabung von bidirektionalen Inline-Inhalten.
Wie kann ich loslegen?
HTML- & CSS-AutorenSVG-AutorenXML-AutorenSchema-Entwickler
Überprüfen Sie Ihre Arbeit. Validieren Sie. Verwenden Sie unter www.w3.org/International/ verfügbare Techniken, Tutorials und Artikel.
Probieren Sie den W3C-Internationalisierungstest.

Autor: Richard Ishida (W3C). Übersetzer: Jens Oliver Meiert.