|
ファイル拡張子 |
.xlf, .xliff |
|
API拡張 |
xlf |
|
インポート |
はい |
|
エクスポート |
はい |
|
複数形のサポート |
はい |
|
説明のサポート |
はい |
|
フォーマットオプション ファイルがアップロードまたはダウンロードされる際に指定できるオプションです。アップロード/ダウンロード方法(API、CLI、リポジトリ同期など)に応じて、クエリパラメータ |
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 |
翻訳業界で最も広く使用されているファイル形式です。ソースファイルのミラーとして見なすことができ、ソースコンテンツをタグに格納されたさまざまなセグメントに分解します(例:<trans-unit>、<seg-source>)。
XLIFF はXMLベースで、妥当性や整形式などの基本的なXML規則に従います。.xliff(.xlf)から.xmlにファイル拡張子を変更し、ウェブブラウザで開くことで、翻訳前に常にサニティチェックを完了してください。ファイルが有効な場合、整理されたドキュメント構造が表示され、無効な場合は表示できないか、エラーメッセージが表示されます。
XLIFFはXLIFF 2.0で更新されました。より広く使用されているXLIFFに似ていますが、通常はXLIFFと互換性のない異なるファイル形式です。
Xcode は、ローカライズ可能な文字列を業界標準のXLIFF形式にパッケージ化し、Phraseでローカリゼーションのために送信できます。
ファイル形式オプション
|
識別子 |
enclose_in_cdata |
|
タイプ |
ブール |
|
アップロード |
いいえ |
|
ダウンロード |
はい |
|
デフォルト |
false |
|
概要 |
HTMLタグを含む翻訳をCDATAで囲みます。無効にすると、サポートされていないHTMLエンティティはデコードされた値に置き換えられます。以下に例を挙げます。
|
|
識別子 |
include_translation_state |
|
タイプ |
ブール |
|
アップロード |
いいえ |
|
ダウンロード |
はい |
|
デフォルト |
false |
|
概要 |
ターゲットロケールにおける翻訳の状態を含めます。すべての |
|
識別子 |
ignore_source_translations |
|
タイプ |
ブール |
|
アップロード |
はい |
|
ダウンロード |
いいえ |
|
デフォルト |
false |
|
概要 |
アップロード中にファイル内のソース翻訳を無視します(誤ってソース言語が更新されるのを避けるため)。 |
|
識別子 |
ignore_target_translations |
|
タイプ |
ブール |
|
アップロード |
はい |
|
ダウンロード |
いいえ |
|
デフォルト |
false |
|
概要 |
アップロード中にファイル内のターゲット翻訳を無視します(誤ってソース言語が更新されるのを避けるため)。 |
|
識別子 |
export_key_id_as_resname |
|
タイプ |
ブール |
|
アップロード |
いいえ |
|
ダウンロード |
はい |
|
デフォルト |
false |
|
概要 |
キーIDをresname属性としてエクスポートします。 |
|
識別子 |
export_key_name_hash_as_extradata |
|
タイプ |
ブール |
|
アップロード |
いいえ |
|
ダウンロード |
はい |
|
デフォルト |
false |
|
概要 |
キー名ハッシュをextradata属性としてエクスポートします。 |
|
識別子 |
override_file_language |
|
タイプ |
ブール |
|
アップロード |
はい |
|
ダウンロード |
いいえ |
|
デフォルト |
false |
|
概要 |
このファイル形式は通常、ファイル自体に言語情報を含みます。このオプションを使用して、指定した言語で上書きします。 |
|
識別子 |
delimit_placeholders |
|
タイプ |
ブール |
|
アップロード |
いいえ |
|
ダウンロード |
はい |
|
デフォルト |
false |
|
概要 |
翻訳プレースホルダーを |
コードサンプル
<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file original="global" datatype="plaintext" source-language="de-DE" target-language="en-GB">
<body>
<trans-unit id="boolean_key">
<source xml:lang="de-DE">--- true
</source>
<target xml:lang="en-GB">--- true
</target>
</trans-unit>
<trans-unit id="empty_string_translation">
<source xml:lang="de-DE"/>
<target xml:lang="en-GB"/>
</trans-unit>
<trans-unit id="key_with_description">
<source xml:lang="de-DE">これを見て!このキーには説明があります!</source>
<target xml:lang="ja">チェックしてみて!</target>このキーは説明があります!(少なくとも一部のファイル形式において)</target>
<note>これはこのキーの素晴らしい説明です!</note>
</trans-unit>
<trans-unit id="key_with_line-break">
<source xml:lang="ja">この翻訳には</source>
einen Zeilenumbruch.</source>
<target xml:lang="ja">この翻訳には</target>
a line-break.</target>
</trans-unit>
<trans-unit id="nested.deeply.key">
<source xml:lang="ja">私は深くネストされたキーです。</source>
<target xml:lang="ja">私は深くネストされたキーです。</target>
</trans-unit>
<trans-unit id="nested.key">
<source xml:lang="ja">このキーは名前空間の中にネストされています。</source>
<target xml:lang="ja">このキーは名前空間の中にネストされています。</target>
</trans-unit>
<trans-unit id="null_translation">
<source xml:lang="de-DE"/>
<target xml:lang="en-GB"/>
</trans-unit>
<trans-unit id="sample_collection">
<source xml:lang="de-DE">---
- 最初のアイテム
- 2番目のアイテム
</source>
<target xml:lang="en-GB">---
- 最初のアイテム
- 2番目のアイテム
- 3番目のアイテム
</target>
</trans-unit>
<trans-unit id="simple_key">
<source xml:lang="ja">シンプルなキー、シンプルなメッセージ、非常にシンプルです。</source>
<target xml:lang="ja">シンプルなキー、シンプルなメッセージ、非常にシンプルです。</target>
</trans-unit>
<trans-unit id="unverified_key">
<source xml:lang="ja">この翻訳はまだ確認されておらず、待機中です!</source>
「この翻訳は検証待ちです。」(一部のフォーマットでは、このステータスもエクスポートされます)
</trans-unit>
</body>
</file>
</xliff>
複数形
複数形のキーは、次の構文を使用してエクスポートされます:
<trans-unit id="plural_key">
<source xml:lang="en">{"one":"one chair","other":"{nrOfChairs} chairs","zero":"no chairs"}</source>
<target xml:lang="de">{"one":"ein Stuhl","other":"{nrOfChairs} Stühle","zero":"keine Stühle"}</target>
</trans-unit>