XML

Dokumente übersetzen

Einleitung

XML ist eine standardisierte Auszeichnungssprache, die in der jüngeren Vergangenheit rasant an Bedeutung gewonnen hat. XML kommt häufig dann zum Einsatz, wenn es darum geht, strukturierte Daten zu verwalten. Unter „strukturierten Daten“ versteht man dabei Daten, die einer fest vorgegebenen Datenstruktur unterliegen.

XML kommt in einer Vielzahl von Anwendungsbereichen zum Einsatz, z. B. im Bereich der layoutunabhängigen Beschreibung von Dokumenten (etwa in Content-Management-Systemen oder Redaktionssystemen), wird sehr häufig aber auch als Format für den Austausch von Daten zwischen verschiedenen Anwendungen verwendet. Es seien in diesem Zusammenhang nur die im Übersetzungsbereich weit verbreiteten Austauschformate TMX, TBX und XLIFF genannt, die allesamt XML-basiert sind.
Man könnte problemlos eine Vielzahl weiterer Beispiele für Auszeichnungssprachen nennen, die auf XML basieren. Hierzu zählen beispielsweise XHTML, eine XML-basierte Variante von HTML, oder auch MathML, eine Auszeichnungssprache zur Darstellung mathematischer Formeln. Aber auch die 2007 eingeführten Office-Formate DOCX (Word), XLSX (Excel) und PPTX (PowerPoint) oder das InDesign-Austauschformat IDML basieren auf XML.

Durch seine enorme Bedeutung und Verbreitung spielt XML automatisch auch im Bereich der Übersetzung eine wichtige Rolle.

Da XML ein textbasiertes Format ist, lassen sich XML-Dateien im Grunde mit jedem herkömmlichen Texteditor bearbeiten. Häufig kommen zur Erstellung und Bearbeitung von XML-Dateien aber spezielle XML-Editoren zum Einsatz. Diese haben gegenüber normalen Texteditoren den Vorteil, dass sie die Erstellung fehlerhafter XML-Dateien verhindern. Aber auch Redaktionssysteme und Autorenwerkzeuge arbeiten heutzutage häufig mit XML als Standardformat. XML-Dateien werden von Anwendungen aber auch zum Datenaustausch generiert.

Übrigens, XML-Dateien können, müssen aber nicht die Dateiendung .xml haben. Denn häufig ist es so, dass Auszeichnungssprachen, die auf Grundlage von XML erstellt wurden, eine eigene Dateiendung haben. Dies ist z. B. bei SVG der Fall, einem XML-basierten Grafikformat für die Darstellung von 2D-Vektorgrafiken, oder auch bei den bereits erwähnten Austauschformaten aus dem Übersetzungsbereich TMX, TBX und XLIFF. (Tipp: Da die Across Translator Edition nicht alle XML-basierten Auszeichnungssprachen und Anwendungen mit eigenen Dateiendungen kennen kann, gibt es die Möglichkeit, XML-basierte Dateien mit einer noch nicht unterstützten Dateiendung in der Across Translator Edition zu registrieren – siehe hierzu unten „Tipps & Tricks“.)

XML – eine kurze Einführung

Das Akronym XML steht für eXtensible Markup Language. XML ist also eine erweiterbare Auszeichnungssprache, d. h. eine Sprache, die mithilfe von Auszeichnungselementen – den so genannten Tags – die Struktur von XML-Dateien beschreibt. Genauer gesagt ist XML eine Metasprache: Sie dient dazu, (neue) Auszeichnungssprachen bzw. Dokumenttypen zu definieren – daher auch der Ausdruck „erweiterbar“ im Namen von XML. Hierzu liefert XML eine Reihe von Regeln, die bei der Definition einer neuen Auszeichnungssprache befolgt werden müssen.

Eine Sprache hat in aller Regel eine Struktur, die auf einer Grammatik basiert. Dies gilt auch für Auszeichnungssprachen. Bei XML und den darauf basierenden Auszeichnungssprachen gibt es zwei Möglichkeiten, eine Grammatik zu definieren, die die Struktur sowie die Elemente und Attribute von XML-Dateien festlegt: über eine Dokumenttypdefinition (DTD) oder eine XML-Schema-Definition (XSD). DTD ist dabei die klassische der beiden Varianten, verwendet zur Beschreibung der Struktur aber eine eigene Syntax. Die „jüngeren“ XSDs beschreiben die Struktur hingegen in Form eines XML-Dokuments, also mit den Regeln und dem „Vokabular“ von XML.

Im Zusammenhang mit XML-Dateien sind zwei Ausdrücke grundlegend: Wohlgeformtheit und Gültigkeit (auch Valididät genannt). Eine XML-Datei ist wohlgeformt, wenn sie die Regeln von XML einhält. Eine XML ist hingegen gültig (oder valide), wenn sie zum einen wohlgeformt ist und wenn sie darüber hinaus eine interne Grammatik (in Form einer DTD oder XSD) oder den Verweis auf eine externe Grammatik enthält, deren Regeln eingehalten werden.

Vor dem Projektstart

Die Across Translator Edition bietet grundsätzlich drei unterschiedliche Varianten, um XML-Dateien zu übersetzen: Visual XML, Tagged XML und Tagged XML v2.
Im Modus „Visual XML“ werden die XML-Elemente und -Attribute im Übersetzungseditor crossDesk nicht als Tags, sondern mithilfe von unterschiedlichen Formatierungen dargestellt. Im Modus „Tagged XML“ hingegen werden die XML-Elemente und Attribute in Form von Tags angezeigt. Dies ist auch der Fall beim Modus „Tagged XML v2“. Im Gegensatz zu „Tagged XML“ werden hier aber insbesondere die Werte von Attributen, die übersetzt werden können, in gesonderten Segmenten dargestellt. Standardmäßig wird in der Across Translator Edition der Modus „Tagged XML v2“ für die Übersetzung von XML-Dateien verwendet. Daher gehen wir in den nachfolgenden Erläuterungen nur auf die Übersetzung von XML-Dateien mit diesem Modus ein.

Wichtig: Bei der Übersetzung von XML-Dateien kommt den Dokumenteneinstellungsvorlagen eine besondere Bedeutung zu. Die Auszeichnungen sind bei XML – anders als bei HTML – nicht vorgegeben, sondern können auf Grundlage bestimmter Regeln frei definiert werden. Daher sollte zur Übersetzung von XML-Dateien in jedem Fall festgelegt werden, wie die Across Translator Edition die XML-Elemente beim Import der XML-Datei behandeln soll. Hierzu empfiehlt es sich, für das aktuelle Übersetzungsprojekt eine eigene Dokumenteneinstellungsvorlage anzulegen, um diese anschließend individuell anzupassen. Hierfür in den Bereich „Tagged XML v2“ der Systemeinstellungen wechseln (über >>Tools >>Systemeinstellungen... >>Dokumenteneinstellungen >>Tagged XML v2), über Neu eine neue Einstellungsvorlage anlegen und anschließend einen Namen vergeben. Anschließend muss die Einstellungsvorlage mit den XML-Elementen und -Attributen befüllt werden. Hierzu am einfachsten über die Schaltfläche Laden... die zu übersetzende XML-Datei (oder auch die zugrundeliegende DTD bzw. XSD) auslesen. Dadurch wird die aktuelle Einstellungsvorlage automatisch mit den enthaltenen XML-Elementen und -Attributen befüllt.

Vor der Projektanlage ist zunächst zu prüfen, welche spezifischen Inhalte die XML-Datei hat und wie mit ihnen im Rahmen der Übersetzung vorzugehen ist:

Berücksichtigung von DTD bzw. XSD

XML-Dateien werden gegen die zugrundeliegende DTD bzw. XSD auf ihre Gültigkeit hin geprüft („validiert“). In Across erfolgt diese Validierung über das QM-Kriterium „Tagged XML-Validität“ (siehe unten). Falls die zu übersetzende XML-Datei einen Verweis auf eine externe DTD bzw. XSD enthält, wird diese beim Einchecken in Across automatisch mit eingelesen (natürlich nur, sofern Zugriff auf die externe DTD/XSD besteht). Dies gilt auch für den Fall, dass die DTD bzw. XSD in der XML-Datei selber enthalten ist. (Tipp: Falls der Zugriff auf eine externe DTD bzw. XSD nicht möglich sein sollte, kann in der Einstellungsvorlage von Tagged XML v2 die DTD bzw. XSD eingelesen werden. Diese fungiert dabei als Master-DTD bzw. -XSD, d. h. sie wird auch dann zur Validierung herangezogen, wenn in einer XML-Datei, die in Across eingecheckt wird, auf eine andere externe DTD/XSD referenziert wird oder diese eine andere interne DTD/XSD enthält.)

Definition von internen XML-Elementen

Bei der Übersetzung von XML-Dateien unterscheidet man zwischen externen und internen XML-Elementen. Externe Elemente stehen außerhalb des zu übersetzenden Segments und werden daher im Übersetzungseditor crossDesk automatisch ausgeblendet. Interne Elemente (auch Inline-Elemente genannt) befinden sich hingegen innerhalb eines zu übersetzenden Segments und bewirken z. B., dass ein Teil des Segments (z. B. ein Wort) in besonderer Form ausgezeichnet wird. Im Vorfeld der Übersetzung sollte geprüft werden, ob die XML-Dateien solche internen XML-Elemente enthalten. Falls ja, sind diese anschließend in der Across Translator Edition als solche zu definieren, um eine reibungslose Übersetzung zu gewährleisten. (Tipp: Die Standardeinstellungen der Across Translator Edition sehen vor, dass neue bzw. unbekannte XML-Elemente stets als externe Elemente interpretiert werden. Daher müssen lediglich die internen XML-Elemente als solche definiert werden. Hierzu das entsprechende Element in der Einstellungsvorlage von Tagged XML v2 unter >>Tools >>Systemeinstellungen... >>Dokumenteneinstellungen >>Tagged XML v2 auswählen, auf Bearbeiten… klicken und als Elementtyp „Intern“ wählen.)

Anpassung von Attributwerten

In bestimmten Fällen kann es notwendig sein, dass die Werte von bestimmten Attributen im Rahmen der Übersetzung angepasst werden müssen. Daher sollte im Vorfeld der Übersetzung mit dem Auftraggeber geklärt werden, ob dies in den zu übersetzenden XML-Dateien der Fall ist. (Tipp: Die Standardeinstellungen der Across Translator Edition sehen vor, dass Attributwerte nicht angepasst werden können. Um dies zu ändern, muss die entsprechende Option in den Einstellungen der Einstellungsvorlage von Tagged XML v2 angepasst werden. Hierzu in der entsprechenden Einstellungsvorlage das Element auswählen, dessen Attributwerte anpassbar sein sollen, und auf Bearbeiten… klicken. Anschließend in die Registerkarte „Attribute“ wechseln, das entsprechende Attribut auswählen und über die Dropdown-Liste in der Spalte „Modus“ die Aktion „Übersetzbar“ festlegen.)

Eingebetteter Markup-Code

Es kann vorkommen, dass in den Markup-Code einer XML-Datei Markup-Code einer anderen Auszeichnungssprache, insbesondere von HTML, eingebettet ist. Der eingefügte Markup-Code kann dabei durch Auszeichnung des Codes als so genannter CDATA-Abschnitt (<![CDATA[ ... ]]>) oder durch Maskierung des Codes mithilfe von Zeichen-Entitäten (z. B. &lt; für <) eingebettet werden. Im Vorfeld der Übersetzung ist daher (ggf. mit dem Auftraggeber) zu klären, ob eingebetteter Code in der zu übersetzenden XML-Datei vorkommt. (Tipp: Um für ein XML-Element festzulegen, dass es eingebetteten Markup-Code enthalten kann, das entsprechende Element in der Einstellungsvorlage von Tagged XML v2 auswählen und auf Bearbeiten... klicken. Anschließend die Option „Kann eingebetteten Markup-Code enthalten“ aktivieren und die Form der Einbettung wählen.)

Längenbeschränkungen

In bestimmten Fällen kann es nötig sein, dass ein Element eine bestimmte Anzahl an Zeichen nicht überschreitet, z. B. um zu gewährleisten, dass der entsprechende Inhalt vollständig angezeigt wird. Mit dem Auftraggeber ist im Vorfeld zu klären, ob Längenbeschränkungen für bestimmte Elemente bestehen. (Tipp: Um für ein Element eine Längenbeschränkung festzulegen, das entsprechende Element in der Einstellungsvorlage von Tagged XML v2 auswählen und auf Bearbeiten... klicken. Anschließend die Option „Max. Länge“ aktivieren und die maximale Zeichenzahl eingeben.)

Übersetzen von XML-Dateien mit der Across Translator Edition

Bei der Übersetzung von XML-Dateien gibt es – neben der Übersetzung des „normalen“ Textes – XML-spezifische Dinge zu beachten. Hierzu zählen u. a.:

Inline-Tags in die Übersetzung übernehmen

Bei der Übersetzung von XML-Dateien müssen die Inline-Tags, die im Quelldokument enthalten sind, in die Übersetzung eingefügt werden. Hierbei ist auf die richtige Position der Tags wie auch auf deren korrekte Reihenfolge zu achten (z. B. immer zuerst den Start- und dann den End-Tag). Hierzu am einfachsten den Cursor an die Position setzen, an der der Tag eingefügt werden soll, und anschließend einen Doppelklick auf den entsprechenden Tag im Quellsegment machen. Oder alternativ per Tastenkombination: Mit Strg+Umschalt+1 wird z. B. der erste Tag des aktuellen Quellsegments in die Übersetzung eingefügt, mit Strg+Umschalt+2 der zweite Tag usw. Mit Strg+Umschalt+0 wird zudem der jeweils aktuelle Tag in die Übersetzung übernommen.

Zusätzliche Inline-Tags einfügen

Es kann nötig sein, zusätzlich zu den Inline-Tags, die in einem Quellsegment enthalten sind, weitere Tags in die Übersetzung einzufügen, z. B. um ein zusätzliches Wort in der Übersetzung auszuzeichnen. Hierzu an der Position, an die der zusätzliche Tag in die Übersetzung eingefügt werden soll, mit einem Klick auf die rechte Maustaste das Kontextmenü öffnen und den Befehl Inline Tags einfügen wählen. Anschließend den gewünschten Tag aus der Liste auswählen, ggf. Attributwerte hinzufügen und mit OK bestätigen. Daraufhin wird an der aktuellen Cursor-Position das entsprechende Tag-Paar in die Übersetzung eingefügt.

Zeichen-Entitäten einfügen

Zeichen-Entitäten dienen u. a. dazu, Sonderzeichen, die innerhalb der Syntax von XML eine bestimmte Bedeutung bzw. Funktion haben, zu umschreiben („maskieren“), wie z. B. < anstelle von <. Durch die Maskierung wird verhindert, dass das Sonderzeichen (in diesem Fall für „kleiner als“) in der Übersetzung als Beginn eines Tags interpretiert wird. Um eine Zeichen-Entität in die Übersetzung einzufügen, an der entsprechenden Position in der Übersetzung mit einem Klick auf die rechte Maustaste das Kontextmenü öffnen und den Befehl Zeichen-Entitäten einfügen wählen. Anschließend die gewünschte Entität aus der Liste auswählen und mit OK bestätigen. Daraufhin wird an der aktuellen Cursor-Position die entsprechende Zeichen-Entität in die Übersetzung eingefügt.

Übersetzung von Attributwerten

Insofern die Übersetzung von Attributwerten vorgesehen ist (siehe oben), wird der entsprechende Attributwert während der Übersetzung in einem gesonderten Segment dargestellt. Der Attributwert kann dadurch wie normaler Text auch übersetzt werden bzw. an die Zielsprache angepasst werden.

 

Tipp: Speziell für die Übersetzung von XML-Dateien stehen in der Across Translator Edition spezielle Qualitätsmanagement-Kriterien zur Verfügung. Diese helfen dabei, Fehler zu vermeiden, sei es im Hinblick auf die Wohlgeformtheit und Gültigkeit der übersetzten XML-Dateien, sei es im Hinblick auf das korrekte Einfügen von Tags in die Übersetzung:

Placeables-Verwendung

Prüft, ob die Anzahl der verwendeten Tags in Quell- und Zielsegment identisch ist.

Placeables-Reihenfolge

Prüft, ob die im Quellsegment verwendeten Tags im Zielsegment in der richtigen Reihenfolge wie auch in der richtigen Anzahl verwendet wurden.

Tagged XML-Wohlgeformtheit

Überprüft, ob das aktuelle Zielsegment wohlgeformt ist.

Tagged XML-Validität

Überprüft, ob die übersetzte XML-Datei gültig (valide) ist. Die Validitätsprüfung erfolgt immer für die komplette XML-Datei, wobei die Prüfung an der ersten Fehlerstelle stoppt. Nach der Korrektur dieses Fehlers kann die Validitätsprüfung erneut durchgeführt werden, um ggf. weitere Fehler zu finden. (Tipp: Die Validitätsprüfung muss manuell gestartet werden, z. B. über das Kontextmenü des QM-Kriteriums.)

Tipps & Tricks

Ein noch nicht unterstütztes XML-Dokumentenformat registrieren

Falls eine zu übersetzende Datei in einem XML-basierten Dokumentenformat vorliegt, dessen Dateiendung standardmäßig nicht unterstützt wird, lässt sich die Datei dennoch mit der Across Translator Edition übersetzen. Hierfür muss lediglich die neue Dateiendung registriert werden. Hierzu in den Bereich „Dokumentenzuordnung“ der Systemeinstellungen wechseln, aus der Dropdown-Liste „Dokumententyp“ den Modus „Tagged XML v2“ auswählen und auf Hinzufügen... klicken. Anschließend die Dateiendung des neuen Dateiformats und einen Namen bzw. eine Beschreibung angeben und auf OK klicken. (Weitere Einstellungen sind normalerweise nicht notwendig.) Das neue Dokumentenformat wird fortan von der Across Translator Edition unterstützt und Dateien in diesem Format können somit problemlos eingecheckt und übersetzt werden.

Einstellungen der Dokumenteneinstellungsvorlage prüfen

Über eine integrierte Vorschau-Funktion lassen sich auf übersichtliche Weise die aktuellen Einstellungen einer Dokumenteneinstellungsvorlage prüfen. Hierzu über >>Konfigurieren... >>Vorschau... den Vorschau-Dialog öffnen, über Durchsuchen... eine zu übersetzende XML-Datei auswählen und anschließend die Vorschau über OK erstellen. Daraufhin wird im Quell-Code der XML-Datei anhand von unterschiedlichen Farben angezeigt, welche Teile der XML-Datei während der Übersetzung z. B. übersetzbar sein werden und welche hingegen ausgeblendet oder gesperrt dargestellt werden.

Bedingtes XML

Es kann vorkommen, dass der Inhalt eines XML-Elements nur in bestimmten Fällen übersetzt werden muss, und zwar in Abhängigkeit von einem anderen über- oder untergeordneten Element oder auch in Abhängigkeit von dem Attributwert eines Elements. In diesen Fällen besteht die Möglichkeit, die Dokumenteneinstellungsvorlage von Tagged XML v2 entsprechend zu konfigurieren.

Erweiterte Einstellungen von Tagged XML

Einstellungen zur Verarbeitung von XML-Dateien, die etwas mehr ins Detail gehen, wie z. B. Einstellungen zu Zeichen-Entitäten oder zur Behandlung ungültiger wie auch undefinierter Elemente, sind in den erweiterten Einstellungen zusammengefasst. Die erweiterten Einstellungen finden sich in der entsprechenden Dokumenteneinstellungsvorlage von Tagged XML v2 unter >>Konfigurieren... >>Erweitert...

Das Tool „acrossXMLMerger“

Für den Fall, dass eine Vielzahl von XML-Dateien übersetzt werden muss, steht in der Toolbox der Across Translator Edition das kleine Tool „acrossXMLMerger“ zur Verfügung. Mit dem Tool können mehrere XML-Dateien zu einer einzigen XML-Datei verschmolzen werden. Diese Datei kann anschließend Ressourcen-schonend eingecheckt und übersetzt werden. Die übersetzte XML-Datei kann abschließend wieder in die ursprünglichen Einzeldateien aufgespalten werden. (Die Toolbox befindet sich im Unterordner Toolbox des Installationsverzeichnisses der Across Translator Edition, z. B. C:\Programme (x86)\Across\Toolbox.)