XLIFF 1.1 und 1.2

Bemerkung

XLIFF 2.0 ist ein anderes Format und nicht rückwärtskompatibel mit XLIFF 1.2.

XML-basiertes Format, das zur Vereinheitlichung von Übersetzungsdateien entwickelt wurde, aber letztlich nur einer von vielen Standards in diesem Bereich ist.

XML Localization Interchange File Format (XLIFF) wird normalerweise zweisprachig verwendet, aber Weblate unterstützt es auch einsprachig.

Weblate unterstützt XLIFF in mehreren Varianten:

XLIFF-1.2-Übersetzungsdatei

Einfache XLIFF-Datei, in welcher der Inhalt der Elemente als reiner Text gespeichert ist (alle XML-Elemente sind maskiert).

XLIFF 1.2 mit Platzhalterunterstützung

Standard-XLIFF mit Platzhalterunterstützung und anderen XML-Elementen.

XLIFF 1.2 mit Gettext-Erweiterungen

XLIFF angereichert durch XLIFF-1.2-Darstellungsleitfaden für Gettext PO zur Unterstützung von Pluralformen.

XLIFF 1.2 mit Apple-Erweiterungen

XLIFF angereichert von Apple zur Unterstützung von Pluralformen.

Übersetzungsstatus

Das Attribut state in der Datei wird teilweise verarbeitet und in Weblate dem Status „Bearbeitungsbedürftig“ zugeordnet (die folgenden Status werden verwendet, um die Zeichenkette als bearbeitungsbedürftig zu markieren, wenn ein Ziel vorhanden ist: new, needs-translation, needs-adaptation, needs-l10n). Fehlt das Attribut state, wird eine Zeichenkette als übersetzt betrachtet, sobald ein <target>-Element vorhanden ist.

Wenn die Übersetzungszeichenkette approved="yes" hat, wird sie auch in Weblate als „Genehmigt“ importiert, alles andere wird als „Überprüfung ausstehend“ importiert (dies entspricht der XLIFF-Spezifikation).

Beim Speichern fügt Weblate diese Attribute nur bei Bedarf hinzu:

  • Das Attribut state wird nur hinzugefügt, wenn die Zeichenkette als bearbeitungsbedürftig markiert ist.

  • Das Attribut approved wird nur hinzugefügt, wenn die Zeichenkette genehmigt wurde.

  • In anderen Fällen werden die Attribute nicht hinzugefügt, aber sie werden aktualisiert, falls sie vorhanden sind.

Das bedeutet, dass beim Verwenden des XLIFF-Formats dringend empfohlen wird, den Weblate-Überprüfungsprozess zu aktivieren, um den genehmigten Status von Zeichenketten zu sehen und zu ändern.

Ebenso sollten Sie beim Importieren solcher Dateien (im Upload-Formular) unter Verarbeitung von „Bearbeitungsbedürftig“-Zeichenketten die Option Als übersetzt importieren wählen.

Siehe auch

Dedizierte Prüfer

Leerzeichen und Zeilenumbrüche in XLIFF

Im Allgemeinen wird bei XML-Formaten nicht zwischen verschiedenen Arten oder Mengen von Leerzeichen unterschieden. Wenn Sie diese beibehalten wollen, müssen Sie die Markierung xml:space="preserve" an die Zeichenkette anhängen.

Zum Beispiel:

    <trans-unit id="10" approved="yes">
        <source xml:space="preserve">hello</source>
        <target xml:space="preserve">Hello, world!
</target>
    </trans-unit>

Angabe von Übersetzungsmarkierungen

Sie können zusätzliche Übersetzungsmarkierungen (siehe Verhalten mit Markierungen anpassen) angeben, indem Sie das Attribut weblate-flags verwenden. Weblate versteht auch die Attribute maxwidth und font der XLIFF-Spezifikation:

<trans-unit id="10" maxwidth="100" size-unit="pixel" font="ubuntu;22;bold">
   <source>Hello %s</source>
</trans-unit>
<trans-unit id="20" maxwidth="100" size-unit="char" weblate-flags="c-format">
   <source>Hello %s</source>
</trans-unit>

Das Attribut font wird nach Schriftfamilie, -größe und -gewicht analysiert, das obige Beispiel zeigt all das, obwohl nur die Schriftfamilie erforderlich ist. Jedes Leerzeichen in der Schriftfamilie wird in einen Unterstrich umgewandelt, so wird Source Sans Pro zu Source_Sans_Pro, bitte beachten Sie dies beim Benennen der Schriftgruppe (siehe Schriftarten verwalten).

Zeichenkettenschlüssel

Weblate identifiziert die Einheiten in der XLIFF-Datei anhand des Attributs resname, falls es vorhanden ist, und greift auf id zurück (zusammen mit dem Tag file, falls vorhanden).

Das Attribut resname soll ein benutzerfreundlicher Bezeichner für die Einheit sein, so dass es für Weblate besser geeignet ist als id. resname muss in der gesamten XLIFF-Datei eindeutig sein. Dies wird von Weblate gefordert und ist nicht durch den XLIFF-Standard abgedeckt – es gibt keine Einschränkungen für die Eindeutigkeit dieses Attributs.

Beispieldateien

XLIFF-Beispieldatei:

<?xml version='1.0' encoding='UTF-8'?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.1">
    <file>
        <body>
            <trans-unit weblate-flags="c-format, max-length:100">
                <source xml:space="preserve">Hello, world!
</source>
            </trans-unit>
            <trans-unit>
                <source xml:space="preserve">Orangutan has %d banana.
</source>
            </trans-unit>
            <trans-unit>
                <source xml:space="preserve">Try Weblate at &lt;https://demo.weblate.org/&gt;!
</source>
            </trans-unit>
            <trans-unit>
                <source>Thank you for using Weblate.</source>
            </trans-unit>
        </body>
    </file>
</xliff>
Unterstützte Funktionen

Dateierweiterungen

.sdlxliff, .xlf, .xliff

Linguistik:

Sowohl einsprachig als auch zweisprachig

Unterstützt Pluralformen

Yes

Unterstützt Beschreibungen

Yes

Unterstützt Erklärung

No

Unterstützt Kontext

Yes

Unterstützt Ort

Yes

Unterstützt Markierungen

Yes

Zusätzliche Status

Genehmigt, Bearbeitungsbedürftig

API-Kennung

apple-xliff, plainxliff, poxliff, xliff

Unterstützt schreibgeschützte Zeichenketten

Yes

Weblate-Konfiguration

Typische Weblate-Komponentenkonfiguration für zweisprachiges XLIFF

Dateimaske

localizations/*.xliff

Einsprachige Basissprachdatei

Leer

Vorlage für neue Übersetzungen

localizations/en-US.xliff

Dateiformat

XLIFF-Übersetzungsdatei

Typische Weblate-Komponentenkonfiguration für einsprachiges XLIFF

Dateimaske

localizations/*.xliff

Einsprachige Basissprachdatei

localizations/en-US.xliff

Vorlage für neue Übersetzungen

localizations/en-US.xliff

Dateiformat

XLIFF-Übersetzungsdatei