Поддерживаемые типы файлов (Strings)

.XLIFF - XML Localization Interchange File Format (Strings)

Контент автоматически переведен с английского языка с помощью Phrase Language AI.

Расширения файлов 

.xlf, .xliff

Расширение API 

xlf

Импорт 

Да

Экспорт 

Да

Поддержка форм множественного числа 

Да

Поддержка описания 

Да

Варианты формата 

enclose_in_cdata

include_translation_state

indent_size

indent_style

ignore_source_translations

ignore_target_translations

export_key_id_as_resname

export_key_name_hash_as_extradata

override_file_language

strip_placeholder_delimiters

delimit_placeholders

Наиболее широко используемый формат файлов в переводческой отрасли. Его можно рассматривать как зеркало файла оригинала, которое делит контент оригинала на различные сегменты, хранящиеся в tags (например, <trans- unit>, <seg- оригинал>). 

XLIFF основан на XML и является темой основных конвенций XML, таких как действительность и четкое оформление. Всегда Завершить проверку на работоспособность перед переводом, изменив расширение файла с .xliff (.xlf) на .xml и открыв его в веб-браузере. Если файл действителен, представляется хорошо организованная структура документа, а если нет, то он будет либо недоступен, либо с сообщением Error.

XLIFF был обновлен с XLIFF 2.0. Он похож на более широко используемый XLIFF, но является файлом другого формата, обычно несовместимым с XLIFF.

Xcode может упаковывать Localizable Strings в отраслевой стандартный формат XLIFF для отправки на локализацию с Phrase.

Параметры формата

Идентификатор 

enclose_in_cdata

Тип 

булевский

Загрузить 

Нет

Скачать 

Да

По умолчанию 

false

Описание 

Помещает переводы, содержащие html tags в CDATA. При отключении неподдерживаемые сущности HTML заменяются их декодированными значениями. Например:

  • &pound; заменен на £.

  • &trade; заменяется на TM.

Идентификатор 

include_translation_state

Тип 

булевский

Загрузить 

Нет

Скачать 

Да

По умолчанию 

false

Описание 

Включить состояние переводов на язык перевода. Каждый тег <перевода> получит атрибут состояния, который может быть одним из: новый, отписанный, переведенный

Идентификатор

indent_size

Тип 

целые числа

Загрузить 

Нет

Скачать 

Да

По умолчанию 

4

Описание 

Указывает количество символов отступа

Идентификатор

indent_style

Тип 

строка

Загрузить 

Нет

Скачать 

Да

По умолчанию 

каталог

Описание 

Указывает символ отступа. Разрешенные значения — каталог и вкладка.

Идентификатор 

ignore_source_translations

Тип 

булевский

Загрузить 

Да

Скачать 

Нет

По умолчанию 

false

Описание 

Пропускает переводы оригинала в файле во время загруженного (во избежание случайного обновления языка оригинала)

Идентификатор 

ignore_target_translations

Тип 

булевский

Загрузить 

Да

Скачать 

Нет

По умолчанию 

false

Описание 

Пропускает перевод переводов в файле во время загруженного (во избежание случайного обновления языка оригинала)

Идентификатор 

export_key_id_as_resname

Тип 

булевский

Загрузить 

Нет

Скачать 

Да

По умолчанию 

false

Описание 

Экспортирует Идентификатор ключа как атрибут resname.

Идентификатор 

export_key_name_hash_as_extradata

Тип 

булевский

Загрузить 

Нет

Скачать 

Да

По умолчанию 

false

Описание 

Экспортирует хэш имени ключа в качестве атрибута extradata.

Идентификатор 

override_file_language

Тип 

булевский

Загрузить 

Да

Скачать 

Нет

По умолчанию 

false

Описание 

Такой формат файла обычно содержит информацию о языке в самом файле. Используйте этот параметр, чтобы переопределить язык на указанный вами.

Идентификатор 

strip_placeholder_delimiters

Тип 

булевский

Загрузить 

Да

Скачать 

Нет

По умолчанию 

false

Описание 

Удаляет <ph> tags из переводов.

Идентификатор 

delimit_placeholders

Тип 

булевский

Загрузить 

Нет

Скачать 

Да

По умолчанию 

false

Описание 

Оберните заполнители перевода в <ph> tags. Должен был определить допустимые стили заполнителей в настройках проекта.

Образец кода

<?xml версия="1.0" кодировка="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:документ:1.2" version="1.2">
  <file original="global" datatype="plaintext" оригинал-язык="de-DE" язык перевода="en-GB">
    <body>
      <trans-unit Идентификатор="boolean_key">
        оригинал xml:lang="de-DE">--- true
<оригинал
        Перевод <xml:lang="en-GB">--- true
</перевод
      </trans-unit>
      <trans-unit id="empty_string_translation">
        оригинал xml:lang="de-DE"/>
        Перевод <xml:lang="en-GB"/>
      </trans-unit>
      <trans-unit id="key_with_description">
        оригинал xml:lang="de-DE">Schau dir das mal an! Dieser Schlüssel hat eine Beschreibung!</оригинал>
        <Перевод xml:lang="en-GB">Проверьте! This key has a description! (По крайней мере в некоторых форматах)</перевод>
        <note>Вот удивительное описание для этого ключа!</note>
      </trans-unit>
      <trans-unit id="key_with_line-break">
        <оригинал xml:lang="de-DE">Шляпа Diese Übersetzung
einen Zeilenumbruch.</оригинал>
        <Перевод xml:lang="en-GB">Этот перевод содержит
разрыв строки.</перевод>
      </trans-unit>
      <trans-unit Идентификатор="nested.deeply.key">
        <оригинал xml:lang="de- DE">Ich bin ein tief verschachtelter Schlüssel.</ оригинал>
        <Перевод xml:lang="en-GB">Я глубоко вложенный ключ.</перевод>
      </trans-unit>
      <trans-unit Идентификатор="nested.key">
        < оригинал xml:lang="de- DE">Dieser Schlüssel ist innerhalb eines Namensraumes verschachtelt.</ оригинал>
        <Перевод xml:lang="en-GB">Этот ключ вложен в пространство имен.</перевод>
      </trans-unit>
      <trans-unit Идентификатор="null_translation">
        оригинал xml:lang="de-DE"/>
        Перевод <xml:lang="en-GB"/>
      </trans-unit>
      <trans-unit Идентификатор="sample_collection">
        оригинал xml:lang="de-DE">---
- erstes item
- zweites Item
<оригинал
        Перевод <xml:lang="en-GB">--
- первый элемент
- второй элемент
- третий элемент
</перевод
      </trans-unit>
      <trans-unit Идентификатор="simple_key">
        <оригинал xml:lang="de- DE">Einfacher Schlüssel, einfache Nachricht, so einfach</ оригинал>
        <Перевод xml:lang="en-GB">Простой ключ, простое сообщение, так просто.</перевод>
      </trans-unit>
      <trans-unit id="unverified_key">
        оригинал xml:lang="de-DE">Diese Übersetzung ist noch nicht bestätigt und wartet drauf!</оригинал
        <translation xml:lang="en-GB">Этот перевод еще не подтвержден и ждет его. (В некоторых форматах мы также экспортируем этот статус)</перевод>
      </trans-unit>
    </body>
  </file>
</xliff>

Формы множественного числа

Ключи во множественном числе экспортируются с использованием следующего синтаксиса:

<trans-unit Идентификатор="plural_key">
  <оригинал xml:lang="en">{"один":"один стул","другой":"{nrOfChairs} стулья","ноль":"без стульев"}</оригинал>
  <перевод xml:lang="de">{"один":"ein Stühl","другой":"{nrOfChairs} Stühle","ноль":"keine Stühle"}</перевод>
</trans-unit>
Была ли эта статья полезной?

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.