Dateiformat für Übersetzungstexte


Anwendung des Dateiformats

Das hier beschriebene Dateiformat (Übersetzungstext) dient als Ausgabe und Eingabe von Übersetzungsprogrammen.

Die Transformation xliff_txt.xslt (Text) erzeugt aus einem XLIFF-Dokument eine Übersetzungstext-Datei.
Das Programm mttext.pl (Quelltext) nutzt das Dateiformat zur Ein- und Ausgabe.
Das Programm resstruct.pl (Quelltext) nutzt das Dateiformat zur Eingabe übersetzter Texte.

Übersetzungstext-Dateiformat

Die Übersetzungstext-Dateien bestehen aus drei Arten von Zeilen: Kommentarzeilen, Strukturzeilen und Textzeilen.

Kommentarzeilen

beginnen mit dem Zeichen #. Sie haben keine Bedeutung für die automatische Verarbeitung der Datei, enthalten aber Hinweise für einen menschlichen Übersetzer.

Strukturzeilen

beginnen mit dem Zeichen =, dem ein Schlüsselwort und mögliche weitere Informationen folgen.

=machineTGTLANG MACHINE

Diese Zeile zeigt an, dass im Folgenden zur Übersetzung in die Zielsprache TGTLANG der Übersetzer MACHINE benutzt worden ist oder benutzt werden soll. Ich benutze diese Zeile nur in der Ausgabe des Programm mttext.pl (Quelltext). Dabei ist MACHINE die Kennung eines Übersetzungsmoduls.

=fileFILEID

FILEID ist der Wert des Attributs file/@id in der XLIFF-Datei ohne das Präfix f. Es gilt für die folgenden Zeilen bis zur nächten =file-Zeile.

=segmentID

ID ist der Wert des Attributs segment/@id ohne das Präfix s. Der Quelltext des segment-Elements (segment/source) enthält kein mrk-Element. Die Zeile bezieht sich auf die folgenden Zeilen bis zur nächsten =segment- oder =struct-Zeile.

=sourceSRCLANG

Die folgenden Textzeilen bis zur nächsten Strukturzeile enthalten den zu übersetzenden Text (Quelltext) des Segments, dessen Kennung die letzte vorangehende =segment-Zeile angibt. SRCLANG bezeichnet die Sprache des Quelltextes. Die Angabe der Sprache kann entfallen. In diesem Fall gilt die zuletzt angegebene Quellsprache bis zur Angabe einer neuen Quellsprache.

=transTGTLANG

Die folgenden Textzeilen bis zur nächsten Strukturzeile enthalten den übersetzten Text des Segments, dessen Kennung die letzte vorangehende =segment-Zeile angibt. TGTLANG bezeichnet die Sprache, in die der Quelltext übersetzt ist. Die Angabe der Sprache kann entfallen. In diesem Fallt gilt die zuletzt angegebene Zielsprache bis zur Angabe einer neuen Zielsprache.

=structID? ...

ID und mögliche folgende Werte sind Kennungen von Übersetzungsabschnitten (section-Elementen) ohne das Präfix s. Die Übersetzungsabschnitte mit der Kennung ID und den folgenden Kennungen sind im Übersetzungsabschnitt, den die vorausgehende =segment-Zeile bezeichnet, in der genannten Reihenfolge enthalten.

Ein Fragezeichen hinter einer Kennung zeigt an, dass der übersetzte Textteil nicht unbedingt im übersetzten Text gefunden werden muss. Zum Beispiel wird in der chinesischen Übersetzung von „Guten Tag!” die chinesische Übersetzung von „Tag” nicht gefunden:

=segment e1
=source de
Guten Tag!
=trans zh
你好
=struct e2?
=segment e2
=source de
Tag
=trans zh
天

Das Skript resstruct.pl (Quelltext) meldet keinen Fehler, wenn es die Übesetzung eines „optionalen” Teiltextes im übesetzten Text nicht findet.

Textzeilen

Zeilen, die weder mit # noch mit = beginnen, (Textzeilen) enthalten den zu übersetzenden Text oder die Übersetzung. Das Zeichen \ am Anfang einer Textzeile wird entfernt. Es „schützt” die Zeichen # und =, die auf diese Weise effektiv am Anfang einer Textzeile möglich sind.