XLIFF 1.1 仕様書 日本語版

免責事項 (Disclaimer)

This translated document is provided by Kenji Inoue as an informational service to the global community. This is an unofficial, non-normative translation of the official document, XLIFF 1.1 Specification, located at http://www.oasis-open.org/committees/xliff/documents/cs-xliff-core-1.1-20031031.htm, copyright OASIS 2001-2003. This translation is published with acknowledgement of and in agreement with terms specified in the OASIS Translation Policy. Neither OASIS nor Kenji Inoue assume responsibility for any errors contained herein.

本翻訳文書は,井上謙次によって世界中の地域社会に提供される情報サービスです。 これは,http://www.oasis-open.org/committees/xliff/documents/cs-xliff-core-1.1-20031031.htmに掲載された 公文書XLIFF 1.1 Specification,copyright OASIS 2001-2003の非公式かつ非規範的な翻訳です。 本翻訳はOASIS翻訳方針に規定された条件を認知し,かつこれに同意の上で公表されます。 OASISおよび井上謙次は,ここに含まれるいかなる誤りについてもその責任は負いません。

何かお気づきの点などありましたら翻訳者井上謙次までお知らせください。

XLIFF 1.1 仕様書

委員会仕様書 ― 2003年10月31日

本バージョン:
最新バージョン:
前バージョン:
編集者:

Copyright © OASIS Open 2001-2003. All Rights Reserved.

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate it into languages other than English.

The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.

This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.


概要

本文書はXML Localization Interchange File Format (XLIFF)を定義します。 この語彙の目的は,ツール間の相互運用性を保ちながら, ローカライズ可能なデータを保持し,それをローカリゼーションプロセスのあるステップから次のステップへと運ぶことです。

本文書の位置付け

本委員会仕様書はOASIS XLIFF技術委員会によって公表を承認されました。 これは委員会の合意を表す安定した文書です。 コメントはxliff-comment@lists.oasis-open.orgに送ることができます。

目次

1. はじめに
2. 基本構造
2.1. ヘッダ
2.2. ボディ
2.3. 名前付きグループ
2.4. インライン要素
2.5. 拡張性
2.5.1. 要素の追加
2.5.2. 属性の追加
2.5.3. 属性値の追加
2.5.4. 拡張文書の検証
2.6. XLIFFの組み込み
3. 詳細仕様
3.1. XML宣言
3.2. 要素
3.2.1. Top-level and Header Elements
3.2.2. Named Group Elements
3.2.3. Structural Elements
3.2.4. Inline Elements
3.2.5. Delimiter Element
3.3. 属性
3.3.1. XLIFF Attributes
3.3.2. XML Namespace Attributes

付録

A. XLIFFの木構造
B. 文書型定義とスキーマ
C. 前バージョンからの変更(非規範的)
D. 命名ガイドライン(非規範的)
E. XLIFF技術委員会(非規範的)
F. 参考文献

1. はじめに

XLIFF (XML Localization Interchange File Format)はソフトウェア提供者,ローカリゼーションサービス提供者, ローカリゼーションツール提供者のグループによって設計されたXMLローカリゼーション交換ファイルフォーマットです。 全てのローカリゼーション提供者が理解可能な単一の交換用ファイルフォーマットをソフトウェア提供者にもたらすように意図されています。 これはおおまかにはOpenTagバージョン1.2仕様書を基盤とし,TMX 1.2仕様書から取り入れています。 しかし,これは独自のフォーマットであると言えるほどそのどちらとも異なっています。

2. 基本構造

XLIFFは,XML宣言から始まるように,XMLアプリケーションの一つです。 XML宣言の後にはXLIFF文書自体があり,<xliff>要素で囲まれます。 XLIFF文書は1つ以上のセクションによって構成され,それぞれ<file>要素で囲まれます。 <file>要素は, <file>に関するメタデータを保持する<header>要素1つと, <file>から抽出された翻訳可能データを保持する<body>要素1つによって構成されます。 <trans-unit>要素内の翻訳可能データは, <source><target>要素対に組み込まれます。 それら<trans-unit>要素は<group>要素内で再帰的にグループ化することができます。

加えて,<phase>>要素を用いて,当該ファイルの処理に関する情報を管理することができるようになります。 特定の<source>要素に対して可能な翻訳のリストは, 各種のMT (Machine Translation; 機械翻訳)やCAT (Computer Assisted Translation; コンピュータ支援翻訳)システムによって生成することができ, <alt-trans>要素内の<source>の近くに保持することができます。 翻訳者やTM (Translation Memory; 翻訳メモリ)システムによって利用可能な <source>に対するコンテキストは <context>要素で与えられます。 バイナリデータは<bin-unit>を通じて利用可能になっており, それもまた翻訳可能で,関連する<trans-unit>を持つことができます。

<file>要素内の内容は一律にバイリンガルであることが強く推奨されます。 言い換えると,<trans-unit>の子要素になっている 全ての<source><target>要素は, それぞれ<file>要素のsource-languagetarget-language属性と同じ言語になっていることです。 それらの要素内ではxml:lang属性は使われるべきではありません。 例外は,<alt-trans>の子要素になっている<source><target>要素では, <file>要素のsource-languagetarget-language属性の値とは異なった言語を持つ xml:lang属性があっても構わないことです。

<xliff version='1.1'
 xmlns='urn:oasis:names:tc:xliff:document:1.1'>
 <file original='hello.txt' source-language='en' target-language='fr'
  datatype='plaintext'>
  <body>
   <trans-unit id='hi'>
    <source>Hello world</source>
    <target>Bonjour le monde</target>
    <alt-trans>
     <target xml:lang='es'>Hola mundo</target>
    </alt-trans>
   </trans-unit>
  </body>
 </file>
</xliff>

完全な木構造は付録Aで入手できます。

2.1. ヘッダ

XLIFFの<header>はファイルやローカリゼーションプロセスに関するメタデータを保持します。 これは<skl>, <phase-group>, <glossary>, <reference>, <count-group>, <tool>, <prop-group>, <note>要素を持ちます。 <skl>要素は,ローカリゼーション用に提出されたファイルのスケルトンファイルか, そのファイルへのハイパーテキストリンクのどちらかを持つことができます。

<phase-group>要素はファイルをローカライズする際に使われる各処理フェーズに関する情報を保持します; これらのフェーズへの参照は翻訳と共に格納されます。 <glossary><reference>要素はそれぞれ用語集へのハイパーテキストリンクや参照ファイルを保持することができます。 あるいは,ローカリゼーションプロセスで使用可能な実際の用語集や参照データを保持することもできます。

<count-group>要素はファイル全体のカウント情報のグルーピング要素です。 <prop-group>要素(非推奨)は, データをスケルトンファイルと結合したり,データをリポジトリ内に格納したりするために使われるツール特有の情報を保持します。 <note>要素はローカリゼーションプロセスのための指示を保持します。 <count-group>, <prop-group>, <note>要素は ファイルのボディ内に出現することも可能です。

2.2. ボディ

XLIFFの<body>はファイルの構造とローカライズ可能な内容を保持します。 これは<group>, <trans-unit>, <bin-unit>要素を持ちます。 構造は<group>, <trans-unit>, <bin-unit>要素を用いて記述されます。 <group>要素はファイルの階層構造を記述するのに使われる多目的の構造的要素です; これは他の<group>や, <trans-unit>, <bin-unit>を子要素として持つことができます。

<trans-unit><bin-unit>要素は文書の翻訳可能な断片を保持します。 <trans-unit>要素は翻訳されるテキストや翻訳文,あるいは他の関連情報を保持します。 <bin-unit>はバイナリデータを(翻訳される必要があるものでもないものでも)保持できます; また,バイナリオブジェクトの翻訳バージョンや,他の関連情報を保持することもできます。

<trans-unit>要素内では, 翻訳されるテキストは<source>要素内に保持されます。 この要素は,ソースからコードを除去するインライン要素 (<g>, <x/>, <bx/>, <ex/>) や,mask off codes left inline するインライン要素 (<bpt>, <ept>, <sub>, <it>, <ph>)を持つことができます。 翻訳済みテキストは<target>要素内で保持され, <source>要素が行うのと同様に, <target>要素はそれに対して利用可能な同じインラインコードを持ちます。 TMやMTによって生成された,あるいは翻訳者によって入力されたtranslation matchは, <alt-trans>要素によって与えることができます。 また,<alt-trans>要素は <source><target>要素を持つことができます。

いかなる構造的階層においても, ローカリゼーションプロセスに関するコンテキスト上の情報は<context-group>名前付きグループ要素によって, カウント情報は<count-group>名前付きグループ要素によって, ツール特有の情報は<prop-group>名前付きグループ要素(非推奨)によって与えられます。

2.3. 名前付きグループ

XLIFFでは複数要素を名前付きグループにグループ化することができます。 名前付きグループはname属性を持つ単純なグルーピング要素です。 それらの名前付きグループは,特定の目的のために作られた情報を持ってファイル全体にわたって散りばめることができます。 XML処理命令を使用して,特定の名前付きグループに対して異なったアクションを実行することができます。 名前付きグループ要素は<context-group>, <count-group>, <prop-group>(非推奨)です。

<count-group>要素は単語や翻訳,ダイアログ,その他ファイル中で数え上げが必要とされるもののカウントを保持します。 クライアントや翻訳者,レビューア,ローカリゼーション技術者が異なった名前付きグループを格納することが可能です。 処理命令は,ローカリゼーションプロセス中にそれら<count-group>のどれを更新するかをシステムに通知することができます。

<prop-group>要素は, 翻訳済みファイルの作成や翻訳の格納,あるいは他の特定のタスクで使用される,ツール特有のデータを保持します。 処理命令は,リポジトリを更新する際や翻訳済みファイルを作成するためにスケルトンファイルとローカライズ済みデータを結合する際に, どの名前付き<prop-group>を使うかをツールに知らせることができます。 なお,<prop-group>はバージョン1.1で非推奨(deprecated)になったことに注意してください。

2.4. インライン要素

<source><target>要素の内容には, 1つ以上のインライン要素("内容マークアップ"とも呼ばれます)を含むことができます。 それらの要素はソースまたはターゲットテキスト中に存在するコード (例えば,ある文の一部分を太字にマーク付けするフォーマット用コード)を表すために使われます。

インライン要素には3種類あります:

  1. 内容を持つ要素で,その内容はオリジナルデータのネイティブコードそのものになっている (必要であればXML用にエスケープされる)。 これには以下の要素があります: <bpt>, <ept>, <it>, <ph>
  2. 空要素で,スケルトンファイル内にあるか自動的に生成されたネイティブコードに対するプレイスホルダとして働く。 これには以下の要素があります: <g>, <bx/>, <ex/>, <x/>
  3. <bpt>, <ept>, <it>, <ph>内に存在可能で, ネイティブインラインコード内の一連の翻訳可能なテキストを区切る<sub>要素。 例えば,HTMLの<IMG>要素にあるALT属性の値がそうです。

インライン要素の最初の2種類は,それらの機能に基づいて3つの主なカテゴリに分類することができます。 これは,それらがネイティブコードを保持する手法には関係ありません。

A) 命令を開始または終了するコードで, かつその開始と終了の機能が両者ともに1つの翻訳ユニット内に現れるもの。 例えば,ある言葉の範囲を太字にする命令があり, 同じ翻訳ユニット内でその後に太字の書式を終了させる命令が続く場合が挙げられます。 そのようなケースを扱うことが可能な要素には以下のものがあります: <bpt>, <ept>, <g>, <bx/>, <ex/>

B) 命令を開始または終了するコードで, かつその開始と終了の機能が両者同時に1つの翻訳ユニット内に含まれることはないもの。 例えば,文章を太字にする命令は,単一の翻訳ユニット内に含まれている,1つの段落内にある3つの文のうちの最初の文に対して指定できますが, 太字を止める命令は3つ目の文の最後にしか現れない場合があります。 その場合,開始命令は最初の翻訳ユニット内に存在し,終了タグは3つ目の翻訳ユニット内に存在することになります。 そのようなケースを扱うことが可能な要素には以下のものがあります: <it>, <x/>

C) 明示的な終了命令を必要としない自己完結型の機能を表すコード。 これらのスタンドアロンコードの例には画像や相互参照のトークンがあります。 そのようなケースを扱うことが可能な要素には以下のものがあります: <ph>, <x/>

インライン要素を使う際のガイドラインは以下の通りです:

XLIFFのインライン要素はTMXのインライン要素と密接な関係があるので, これらのタグのより詳細な使用例はそれらの仕様書のContent Markupセクションで見つけることができるでしょう。

2.5. 拡張性

場合によっては,他の様々なXML語彙における構成要素を挿入して, XLIFF文書内で利用可能な情報の種類を拡張することが有用でしょう。 ユーザ(あなた)はXLIFF以外の要素や属性,属性値を追加することができます。 要素や属性の追加には名前空間の仕組みを使います[XML Names]。 属性値の追加では通常 "x-" を値の前に付加します (例: <context context-type='x-for-engineers'>)。

XLIFFはこの拡張メカニズムを提供しますが, 情報過多を避けツール間の相互運用性を高めるために, 非標準のユーザ定義の要素や属性を作り出すのではなく, 可能な限りXLIFFの機能を利用することが強く推奨されます。

2.5.1. 要素の追加

XLIFFは以下の要素内に複数の拡張ポイントを提供しています: <header>, <group>, <tool>, <trans-unit>, <alt-trans>, <bin-unit>

各拡張ポイントでは複数の非XLIFF要素を使うことができます。 各要素の内容は妥当なXMLの内容(内容が空,PCDATA,混合内容など)であれば構いません。

例えば,以下のXLIFFコードはXLIFF文書内でユーザ定義要素を追加する方法を(太字で)示しています:

<xliff version='1.1'
 xmlns='urn:oasis:names:tc:xliff:document:1.1'
 xmlns:sup='http://www.ChaucerState.ac.pg/Frm/XLFSup-v1'>
 <file original='passus-1.doc' source-language='enm' datatype='plaintext'>
  <group>
   <sup:SourceInfo>
    <sup:Book>Piers Plowman, Passus 1</sup:Book>
    <sup:Author>William Langland</sup:Author>
   </sup:SourceInfo>
   <sup:WorkInfo Task='transcription' Context='Middle-English:1360'/>
   <trans-unit id='1'>
    <source xml:lang='enm'>What this mountaigne bymeneth</source>
    <target xml:lang='en'>What this mountain means</target>
    <sup:Reference Type='strophe'>1-a</sup:Reference>
   </trans-unit>
   <trans-unit id='2'>
    <source xml:lang='enm'>and the merke dale</source>
    <target xml:lang='en'>and the dark dale</target>
    <sup:Reference Type='strophe'>1-b</sup:Reference>
   </trans-unit>
   <trans-unit id='3'>
    <source xml:lang='enm'>And the feld ful of folk</source>
    <target xml:lang='en'>And the field full of folk</target>
    <sup:Reference Type='strophe'>2-a</sup:Reference>
   </trans-unit>
   <trans-unit id='4'>
    <source xml:lang='enm'>I shal yow faire shewe.</source>
    <target xml:lang='en'>I fairly will show.</target>
    <sup:Reference Type='strophe'>2-b</sup:Reference>
   </trans-unit>
  </group>
 </file>
</xliff>

上記の例で使われている非XLIFF要素は以下のように定義できるでしょう:

<xsd:schema targetNamespace="XLFSup-v1"
 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
 xmlns:sup="http://www.ChaucerState.ac.pg/Frm/XLFSup-v1"
 elementFormDefault="qualified" attributeFormDefault="unqualified">
 <xsd:element name="SourceInfo">
  <xsd:complexType>
   <xsd:sequence maxOccurs="unbounded">
    <xsd:element name="Book" type="xsd:string"/>
    <xsd:element name="Author" type="xsd:string"/>
   </xsd:sequence>
  </xsd:complexType>
 </xsd:element>
 <xsd:element name="WorkInfo">
  <xsd:complexType>
   <xsd:attribute name="Task" type="xsd:string"/>
   <xsd:attribute name="Context" type="xsd:string"/>
  </xsd:complexType>
 </xsd:element>
 <xsd:element name="Reference">
  <xsd:complexType>
   <xsd:simpleContent>
    <xsd:extension base="xsd:string">
     <xsd:attribute name="Type" type="xsd:string"/>
    </xsd:extension>
   </xsd:simpleContent>
  </xsd:complexType>
 </xsd:element>
</xsd:schema>

<source><target>要素内で 非XLIFF要素を追加することは不可能です。 However, the <mrk> element can be used to markup sections of the text with user-defined values assigned to the mtype attribute. また,<source><target>内で 使われるほとんどのインライン要素に対して非XLIFF属性を追加することができます。

2.5.2. 属性の追加

XLIFF以外の名前空間の属性を複数のXLIFF要素内に含むことができます。

以下の要素が非XLIFFの属性を許しています: <file>, <group>, <trans-unit>, <source>, <target>, <tool>, <bin-unit>, <bin-source>, <bin-target>, <alt-trans>, <mrk>, <g>, <x/>, <bx/>, <ex/>, <bpt>, <ept>, <ph>, <it>

例えば,以下のXLIFFコードは,XLIFF要素の<group><trans-unit>内で XHTML語彙の属性を使う方法を(太字で)例示しています。 この例は抽出された表に関する書式情報を持ち運ぶ方法を示しています:

<xliff version='1.1'
 xmlns='urn:oasis:names:tc:xliff:document:1.1'
 xmlns:htm='http://www.w3.org/TR/REC-html40'>
 <file original='table.htm' source-language='en' datatype='html'>
  <group restype='table' htm:border='1' htm:cellpadding='5'
   htm:cellspacing='0' htm:width='100%'>
   <group restype='row'>
    <trans-unit id='1' htm:valign='top' htm:width='30%'>
     <source>Text of row 1 column 1</source>
    </trans-unit>
    <trans-unit id='2' htm:valign='top' htm:width='30%'>
     <source>Text of row 1 column 2</source>
    </trans-unit>
   </group>
   <group restype='row'>
    <trans-unit id='3' htm:valign='top' htm:width='30%'>
     <source>Text of row 2 column 1</source>
    </trans-unit>
    <trans-unit id='4' htm:valign='top' htm:width='30%'>
     <source>Text of row 2 column 2</source>
    </trans-unit>
   </group>
  </group>
 </file>
</xliff>

非XLIFF属性を許す各XLIFF要素について: 非XLIFF属性を挿入する特定の場所はなく,使用される非XLIFF属性の数に対する制限もありません。

2.5.3. 属性値の追加

XLIFFの属性の多くは列挙型の値のリストを提供しています。 アプリケーションによってはそれらのリストにユーザ定義値を追加する必要があるでしょう。 XLIFFはそのような拡張を許しています。

値のリストが拡張可能な属性は以下の通りです: context-type, count-type, ctype, datatype, mtype, restype, size-unit, state, state-qualifier, unit, priority, purpose

ユーザ定義値は必ずプレフィックス(接頭辞)"x-"で始めなければなりません。 おのおののユーザ定義値を検証する決まった仕組みはありません。 XLIFFスキーマは定義済みの値の他に"x-"で始まる任意の値も許しています。

例えば,以下の抜粋は文書内でユーザ定義値x-for-engineerがどのように使われうるかを示しています:

...
<group>
 <context-group name='EngineersData'>
  <context context-type='x-for-engineers'>Data...</context>
...

2.5.4. 拡張文書の検証

非XLIFF部分を含むXLIFF文書を検証するために,スキーマ検証メカニズムを使うことができます: 名前空間の宣言に加えて,XML Schema-instance名前空間のschemaLocation属性を追加して 文書を検証するためにどのスキーマを使うかを定義します(XLIFFと非XLIFF名前空間)。

<xliff version='1.1'
 xmlns='urn:oasis:names:tc:xliff:document:1.1'
 xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
 xsi:schemaLocation='
  urn:oasis:names:tc:xliff:document:1.1 xliff-core-1.1.xsd
  http://www.ChaucerState.ac.pg/Frm/XLFSup-v1 XLFSup-v1.xsd'
>
...
</xliff>

XMLスキーマと検証の詳細についてはhttp://www.w3.org/XML/Schemaを参照してください。

2.6. XLIFFの組み込み

XML名前空間は,XLIFFの構成要素を他のXML語彙内で使うための便利な仕組みを提供します。

必要であれば,1つのXLIFF文書丸ごとや文書の一部分を他のXML文書内に組み込むことができます。 それを行うのに要求されることは,XLIFFデータを含むXMLフォーマット側のみにしかありません。 文書を妥当(valid)にするためには,与えられた文書型のスキーマが外部要素用の定義を持たなければなりません。

もし組み込み側のXMLフォーマットがXMLスキーマを使っている場合, XLIFFデータが挿入されうる要素の定義において<any>要素を記述するべきです。 例えば,以下のXSDの抜粋は, 必須の<type>要素の後に0以上のXLIFFの構成要素を持つことができる 要素型dataBlockTypeを例示しています:

...
<xsd:complexType name="dataBlockType">
 <xsd:sequence>
  <xsd:element name="type" type="string" minOccurs="0"/>
  <xsd:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded"/>
 </xsd:sequence>
</xsd:complexType>
...

XSDを用いてXML文書内に異なった語彙を挿入する方法は, 以下で入手できる文書"XML Schema Part 0: Primer"の"Any Element, Any Attribute"節に記載されています: http://www.w3.org/TR/xmlschema-0/#any

3. 詳細仕様

3.1. XML宣言

The XML declaration is strongly recommended. It indicates the XML version and sets the defaults for the encoding of the file. For example, the following declaration specifies the document is in ISO 8859-1, the Latin-1 encoding.

<?xml version="1.0" encoding="iso-8859-1"?>

As in all XML files, the default encoding for an XLIFF file is assumed to be either UTF-8, which is a superset of the 7-bit ASCII character set, or UTF-16, which is UCS-2 with surrogate pairs for code points above U+FFFF. Thus, for these character sets, the encoding declaration is not necessary. Further, all XML parsers support these encodings. If the encoding is in UTF-16 the first character of the file must be the Unicode Byte-Order-Mark, U+FEFF, which indicates the endianness of the file. Other encodings may be desirable and may be generally supported by XML parsers. These must be declared using the encoding declaration. The values to use for the encoding declaration are defined in the [IANA Charsets] listing.

If necessary, you can also specify a namespace for XLIFF. The namespace identifier for this standard is "urn:oasis:names:tc:xliff:document:1.1".

A minimal XLIFF document with one entry looks something like this:

<?xml version="1.0"?>
<xliff version="1.1">
 <file source-language="EN" datatype="plaintext" original="file.ext">
  <body>
   <trans-unit id="1">
    <source>Hello World!</source>
   </trans-unit>
  </body>
 </file>
</xliff>

If you need to validate the document, use the schema validation mechanism: In addition to the namespace declarations, add the schemaLocation attribute of the XML Schema-instance namespace to define what schema files to use. The same example as above would then look like this:

<?xml version="1.0"?>
<xliff version='1.1'
 xmlns='urn:oasis:names:tc:xliff:document:1.1'
 xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
 xsi:schemaLocation='
  urn:oasis:names:tc:xliff:document:1.1 xliff-core-1.1.xsd'>
 <file source-language="EN" datatype="plaintext" original="file.ext">
  <body>
   <trans-unit id="1">
    <source>Hello World!</source>
   </trans-unit>
  </body>
 </file>
</xliff>

If a document of a previous compatible version of XLIFF is to be validated with the schema of a newer version, the document should use the same mechanism.

For validating documents that include non-XLIFF namespaces see the section Validating Documents with Extensions.

3.2. 要素

XLIFF elements can be divided into five main categories: the top-level and header elements, the named group elements, the structural elements, the inline elements, and the delimiter elements. Attributes are shared among them.

Top Level and Header elements <xliff>, <file>, <header>, <skl>, <external-file>, <internal-file>, <glossary>, <reference>, <phase-group>, <phase>, <tool>, <note>.
Named Group Elements <context-group>, <context>, <count-group>, <count>, <prop-group>, <prop>.
Structural elements <body>, <group>, <trans-unit>, <source>, <target>, <bin-unit>, <bin-source>, <bin-target>, <alt-trans>.
Inline elements <g>, <x/>, <bx/>, <ex/>, <bpt>, <ept>, <sub>, <it>, <ph>.
Delimiter element <mrk>.

3.2.1. Top-level and Header Elements

The top-level and header elements are the following:

<xliff>

XLIFF document - The <xliff> element encloses all the other elements of the document. The required version attribute specifies the version of XLIFF. The optional xml:lang attribute is used to specify the language of the content of the document.

Required attributes:

version.

Optional attributes:

xml:lang.

Contents:

One or more <file> elements.

<file>

File - The <file> element corresponds to a single extracted original document. The required original attribute specifies the name of the file from which this file content is derived. The required datatype attribute specifies the format of the original file; e.g. "html". The required source-language attribute specifies the language of the <source> content. The optional target-language attribute is used to specify the language of the <target> content. The optional tool-id attribute accepts the id of the <tool> used to generate this XLIFF document. The optional date attribute is used to specify the creation date of this XLIFF file. The optional xml:space attribute is used to specify how white-spaces are to be treated. The optional category attribute is used to specify a general category of the content of the file; e.g. "medical". The optional product-name attribute is used to specify the name of the product which uses this file. The optional product-version and build-num attributes are used to specify the revision of the product from which this file comes. The tool and ts attributes have been deprecated in XLIFF 1.1.

Required attributes:

original, source-language, datatype.

Optional attributes:

tool, tool-id, date, xml:space, ts, category, target-language, product-name, product-version, build-num.

Contents:

Zero or one <header> element, followed by
One <body> element.

<header>

File header - The <header> element contains metadata relating to the <file> element.

Required attributes:

None.

Optional attributes:

None.

Contents:

zero or one <skl> element, followed by
zero or one <phase-group> element, followed by
zero, one or more <glossary>, <reference>, <count-group>, <prop-group>, <note>, <tool> elements, in any order, followed by
Zero, one or more non-XLIFF elements.

While for backward compatibility reasons no order is enforced for the elements before the non-XLIFF elements, the recommended order is the one in which they are listed here.

<skl>

Skeleton file - The <skl> element contains the skeleton file or the location of the skeleton file. The skeleton file is a template that can be used in recreating the original file, from the <source> content, or the translated file, from the <target> content.

Required attributes:

None.

Optional attributes:

None

Contents:

Either exactly one <internal-file> or one <external-file> element.

<internal-file>

Internal file - The <internal-file> element contains the actual file being referenced. It is a child of the <skl>, <glossary>, and <reference> elements. The format of the file is specified by the optional form attribute, which accepts mime-type values. The crc attribute accepts a value that can be used to precisely identify and assure the authenticity of the file.

Required attributes:

None.

Optional attributes:

form, crc.

Contents:

An embedded file.

<external-file>

External file - The <external-file> element specifies the location of the actual file being referenced. The required href attribute provides a URI to the file. The crc attribute accepts a value that can be used to precisely identify and assure the authenticity of the file. The uid attribute allows a unique ID to be assigned to the file.

Required attributes:

href.

Optional attributes:

uid, crc.

Contents:

The <external-file> is an empty element, including attributes only.

<glossary>

Glossary - The <glossary> element points to or contains a glossary, which can be used in the localization of the file.

Required attributes:

None.

Optional attributes:

None.

Contents:

The glossary description and either exactly one <internal-file> or one <external-file> element.

<reference>

Reference - The <reference> element points to or contains reference material, which can aid in the localization of the file.

Required attributes:

None.

Optional attributes:

None.

Contents:

A description of the reference material and either exactly one <internal-file> or one <external-file> element.

<note>

Note - The <note> element is used to add localization-related comments to the XLIFF document. The content of <note> may be instructions from developers about how to handle the <source>, comments from the translator about the translation, or any comment from anyone involved in processing the XLIFF file. The optional xml:lang attribute specifies the language of the note content. The optional from attribute indicates who entered the note. The optional priority attribute allows a priority from 1 (high) to 10 (low) to be assigned to the note. The optional annotates attribute indicates if the note is a general note or, in the case of a <trans-unit>, pertains specifically to the to the <source> or the <target> element.

Required attributes:

None.

Optional attributes:

xml:lang, from, priority, annotates.

Contents:

Text, no standard elements.

<phase-group>

Phase group - The <phase-group> element contains information about the task that has been performed on the file. This phase information is specific to the tools and workflow used in processing the file.

Required attributes:

None.

Optional attributes:

None.

Contents:

One or more <phase> elements.

<phase>

Phase information - The <phase> contains metadata about the tasks performed in a particular process. The optional phase-name attribute uniquely identifies the phase for reference within the file. The required process-name attribute identifies the kind of process the phase corresponds to; e.g. "proofreading". The optional company-name attribute identifies the company performing the task. The optional tool-id attribute references the <tool> used in performing the task. The optional date attribute provides a timestamp indicating when the task was performed. The optional job-id attribute allows an ID to be assigned to the job. The optional contact-name, contact-email, and contact-phone attributes all refer to the person performing the task.

Required attributes:

phase-name, process-name.

Optional attributes:

company-name, tool, tool-id, date, job-id, contact-name, contact-email, contact-phone.

Contents:

Zero, one or more <note> elements.

<tool>

Tool - The <tool> element describes the tool that has been used to execute a given task in the document. The required tool-id attribute uniquely identifies the tool for reference within the file. The required tool-name attribute specifies the actual tool name. The optional tool-version attribute provides the version of the tool. The optional tool-company attribute provides the name of the company that produced the tool.

Required attributes:

tool-id, tool-name.

Optional attributes:

tool-version, tool-company.

Contents:

Zero, one or more non-XLIFF elements.

 

3.2.2. Named Group Elements

The named group elements are the following:

<count-group>

Count group - The <count-group> element holds count elements relating to the level in the tree in which it occurs. Each group for <count> elements must be named, allowing different uses for each group. The required name attribute uniquely identifies the <count-group> within the file.

Required attributes:

name.

Optional attributes:

None.

Contents:

One or more <count> elements.

<count>

Count - The <count> element contains information about counts. For each <count> element the required count-type attribute indicates what kind of count the element represents, and the optional unit attribute indicates the unit of the count (by default: word). A list of values for count-type and unit is provided. The optional phase-name attribute references the <phase> in which the count was produced.

Required attributes:

count-type.

Optional attributes:

phase-name, unit.

Contents:

Number (the count value).

<context-group>

Context group - The <context-group> element holds context elements relating to the level in the tree in which it occurs. Thus context can be set at a <group> level, a <trans-unit> level, or a <alt-trans> level.

Each <context-group> element must be named, allowing different uses for each group. These uses can be controlled through the use of XML processing instructions.

Because the <context-group> element may occur at a very high level, a default context can be established for all <trans-unit> elements within a file. This default can be overridden at many subsequent levels.

The required name attribute uniquely identifies the <context-group> within the file. The optional crc attribute allows a verification of the data. The optional purpose attribute indicates to what use this context information is used; e.g. "match" indicates the context information is for memory lookups.

Required attributes:

name.

Optional attributes:

crc, purpose.

Contents:

One or more <context> elements.

<context>

Context - The <context> element describes the context of a <source> within a <trans-unit> or a <alt-trans>. The purpose of this context information is to allow certain pieces of text to have different translations depending on where they came from. The translation of a piece of text may differ if it is a web form or a dialog or an Oracle form or a Lotus form for example. This information is thus required by a translator when working on the file. Likewise, the information may be used by any tool proposing to automatically leverage the text successfully.

The required context-type attribute indicates what the context information is; e.g. "recordtitle" indicates the name of a record in a database. The optional match-mandatory attribute indicates that translations of the <source> elements within the scope of this context must have the same context. The optional crc attribute allows a verification of the data.

Required attributes:

context-type.

Optional attributes:

match-mandatory, crc.

Contents:

Text, no standard elements.

<prop-group>

Property group - The <prop-group> element contains <prop> elements. Each <prop-group> element may be named, allowing different uses for each group. These uses can be controlled through the use of XML processing instructions.

Important: The <prop-group> element is DEPRECATED in version 1.1. Instead, use attributes defined in a namespace different from XLIFF. See the Extensibility section for more information.

Required attributes:

None.

Optional attributes:

name.

Contents:

One or more <prop> elements.

<prop>

Property - The <prop> element allows the tools to specify non-standard information in the XLIFF document. This information can be used by the tools that have produced the file or that translate the file or that do any other amount of processing specific to the producer.

Important: The <prop> element is DEPRECATED in version 1.1. Instead, use attributes defined in a namespace different from XLIFF. See the Extensibility section for more information.

Required attributes:

prop-type.

Optional attributes:

xml:lang.

Contents:

Tool-specific data or text, no standard elements.

3.2.3. Structural Elements

The structural elements specify the frame of a XLIFF document as well as contextual and processing information. The <source> element contains the extracted data and, possibly, inline elements.

<body>

File body - The <body> element contains the content from the file.

Required attributes:

None.

Optional attributes:

None.

Contents:

Zero, one or more <group>, <trans-unit>, <bin-unit> elements, in any order.

<group>

Group - The <group> element specifies a set of elements that should be processed together. For example: all the items of a menu, etc. Note that a <group> element can contain other <group> elements. The <group> element can be used to describe the hierarchy of the file.

The optional id attribute is used to identify the <group> within the file. The optional datatype attribute specifies the data type of the content of the <group>; e.g. "winres" for Windows resources. The optional xml:space attribute is used to specify how white-spaces are to be treated within the <group>. The optional restype, resname, extradata, help-id, menu, menu-option, menu-name, coord, font, css-style, style, exstyle, and extype attributes describe the resources contained within the <group>. The optional translate attribute provides a default value for all <trans-unit> elements contained within the <group>. The optional reformat attribute specifies whether and which attributes can be modified for the <target> elements of the <group>. The optional maxbytes and minbytes attributes specify the required maximum and minimum number of bytes for the translation units within the <group>. The optional size-unit attribute determines the unit for the optional maxheight, minheight, maxwidth, and minwidth attributes, which limit the size of the resource described by the <group>. The optional charclass attribute restricts all translation units in the scope of the <group> to a subset of characters. The optional ts attribute has been deprecated in XLIFF 1.1. Lists of values for the datatype, restype, and size-unit attributes are provided by this specification.

Required attributes:

None.

Optional attributes:

id, datatype, xml:space, ts, restype, resname, extradata, help-id, menu, menu-option, menu-name, coord, font, css-style, style, exstyle, extype, translate, reformat, maxbytes, minbytes, size-unit, maxheight, minheight, maxwidth, minwidth, charclass.

Contents:

Zero, one or more <context-group> elements, followed by
Zero, one or more <count-group> elements, followed by
Zero, one or more <prop-group> elements, followed by
Zero, one or more <note> elements, followed by
Zero, one or more non-XLIFF elements, followed by
One or more <group>, <trans-unit>, <bin-unit> elements, in any order.

All <context-group>, <count-group>, <prop-group>, <note> and non-XLIFF elements pertain to the subsequent elements in the tree but can be overridden within a child element.

<trans-unit>

Translation unit - The <trans-unit> elements contains a <source>, <target> and associated elements.

The required id attribute is used to identify the <trans-unit> within the file. The optional approved attribute indicates whether the translation has been approved by a reviewer. The optional translate attribute indicates whether the <trans-unit> is to be translated. The optional reformat attribute specifies whether and which attributes can be modified for the <target> element of the <trans-unit>. The optional xml:space attribute is used to specify how white-spaces are to be treated within the <trans-unit>. The optional datatype attribute specifies the data type of the content of the <trans-unit>; e.g. "winres" for Windows resources. The optional ts attribute has been deprecated in XLIFF 1.1. The optional phase-name attribute references the phase that the <trans-unit> is in. The optional restype, resname, extradata, help-id, menu, menu-option, menu-name, coord, font, css-style, style, exstyle, and extype attributes describe the resource contained within the <trans-unit>. The optional maxbytes and minbytes attributes specify the required maximum and minimum number of bytes for the text inside the <source> and <target> elements of the <trans-unit>. The optional size-unit attribute determines the unit for the optional maxheight, minheight, maxwidth, and minwidth attributes, which limit the size of the resource described by the <trans-unit>. The optional charclass attribute restricts all <source> and <target> text in the scope of the <trans-unit> to a subset of characters. Lists of values for the datatype, restype, and size-unit attributes are provided by this specification.

Required attributes:

id.

Optional attributes:

approved, translate, reformat, xml:space, datatype, ts, phase-name, restype, resname, extradata, help-id, menu, menu-option, menu-name, coord, font, css-style, style, exstyle, extype, maxbytes, minbytes, size-unit, maxheight, minheight, maxwidth, minwidth, charclass.

Contents:

One <source> element, followed by
Zero or one <target> element, followed by
Zero, one or more <context-group>, <count-group>, <prop-group>, <note>, <alt-trans> elements, in any order, followed by
Zero, one or more non-XLIFF elements.

All child elements of <trans-unit> pertain to their sibling <source> element.
While for backward compatibility reasons no order is enforced for the elements before the non-XLIFF elements, the recommended order is the one in which they are listed here.

<source>

Source text - The <source> element is used to delimit a unit of text that could be a paragraph, a title, a menu item, a caption, etc. The content of the <source> is generally the translatable text, depending upon the translate attribute of the parent <trans-unit>. The optional xml:lang attribute is used to specify the content language of the <source>; this should always match source-language as a child of <trans-unit> but can vary as a child of <alt-trans>. The optional ts attribute has been deprecated in XLIFF 1.1.

Required attributes:

None.

Optional attributes:

xml:lang, ts.

Contents:

Text, 
Zero, one or more of the following elements: <g>, <x/>, <bx/>, <ex/>, <bpt>, <ept>, <ph>, <it>, <mrk>, in any order.

<target>

Target - The <target> element contains the translation of the content of the sibling <source> element. The optional state and state-qualifier attributes indicate in which state the <target> is. The optional phase-name attribute references the <phase> in which the <target> was last modified. The optional xml:lang attribute is used to specify the content language of the <target>; this should always match target-language as a child of <trans-unit> but can vary as a child of <alt-trans>. The optional coord, font, css-style, style, and exstyle attributes describe the resource contained within the <target>; these are the modifiable attributes for the <trans-unit> depending upon the reformat attribute of the parent <trans-unit>. The optional ts attribute has been deprecated in XLIFF 1.1. A list of preferred values for the restype, state, and state-qualifier attributes are provided by this specification.

Required attributes:

None.

Optional attributes:

state, phase-name, xml:lang, ts, restype, resnamecoord, font, css-style, style, exstyle.

Contents:

Text, 
Zero, one or more of the following elements: <g>, <x/>, <bx/>, <ex/>, <bpt>, <ept>, <ph>, <it>, <mrk>, in any order.

<alt-trans>

Translation match - The <alt-trans> element contains possible translations in <target> elements along with optional context, notes, etc. The optional match-quality attribute provides a value indicating the exactness of the match between the <source> of the <alt-trans> and that of the <source> element of the parent <trans-unit>; e.g. "90%". The optional tool-id attribute accepts the id of the <tool> used to generate this <alt-trans>. The optional crc attribute allows a verification of the data. The optional xml:lang attribute is used to specify the content language of the <alt-trans>. The optional xml:space attribute is used to specify how white-spaces are to be treated within the <alt-trans>. The optional datatype attribute specifies the data type of the content of the <alt-trans>; e.g. "winres" for Windows resources. The optional restype, resname, extradata, help-id, menu, menu-option, menu-name, coord, font, css-style, style, exstyle, and extype attributes describe the resource contained within the <alt-trans>. The optional origin attribute specifies where the alternate translation comes from; e.g. a previous version of the product. The tool and ts attributes have been deprecated in XLIFF 1.1. Lists of values for the datatype and restype attributes are provided by this specification.

Required attributes:

None.

Optional attributes:

match-quality, tool, tool-id, crc, xml:lang, datatype, xml:space, ts, restype, resname, extradata, help-id, menu, menu-option, menu-name, coord, font, css-style, style, exstyle, extype, origin.

Contents:

Zero or one <source> element, followed by
One or more <target> elements, followed by
Zero, one or more  <context-group>, <prop-group>, <note> elements, in any order, followed by
Zero, one or more non-XLIFF elements.

All child elements of <alt-trans> pertain to their sibling <target> element.
While for backward compatibility reasons no order is enforced for the elements before the non-XLIFF elements, the recommended order is the one in which they are listed here.

<bin-unit>

Binary unit - The <bin-unit> element contains a binary object that may or may not be translatable. The required id attribute is used to identify the <bin-unit> within the file. The required mime-type attribute specifies the data type of the binary object based on RFC 1341. The optional approved attribute indicates whether the translation has been approved by a reviewer. The optional translate attribute indicates whether the <bin-unit> is to be translated. The optional reformat attribute specifies whether and which attributes can be modified for the <bin-target> element of the <bin-unit>. The optional ts attribute has been deprecated in XLIFF 1.1. The optional phase-name attribute references the phase that the <bin-unit> is in. The optional restype and resname attributes describe the resource contained within the <bin-unit>. Lists of values for the restype attribute is provided by this specification.

Required attributes:

id, mime-type.

Optional attributes:

approved, translate, reformat, ts, phase-name, restype, resname.

Contents:

One<bin-source> element, followed by
Zero or one <bin-target> element, followed by
Zero, one or more <context-group>, <count-group>, <prop-group>, <note>, <trans-unit> elements, in any order, followed by
Zero, one or more non-XLIFF elements.

All child elements of <bin-unit> pertain to their sibling <bin-source> element.
While for backward compatibility reasons no order is enforced for the elements before the non-XLIFF elements, the recommended order is the one in which they are listed here.

<bin-source>

Binary source -The <bin-source> element is the container for the binary source data. The optional ts attribute has been deprecated in XLIFF 1.1.

Required attributes:

None.

Optional attributes:

ts.

Contents:

One of <internal-file> or <external-file>.

<bin-target>

Binary target -The <bin-target> element is the container for the translated version of the binary data. The optional mime-type attribute specifies the data type of the binary object based on RFC 1341. The optional ts attribute has been deprecated in XLIFF 1.1. The optional state and state-qualifier attributes indicate in which state the <bin-target> is. The optional phase-name attribute references the phase that the <bin-target> is in. The optional restype and resname attributes describe the resource contained within the <bin-target>. A list of values for the restype, state, and state-qualifier attributes are provided by this specification.

Required attributes:

None.

Optional attributes:

mime-type, ts, state, phase-name, restype, resname.

Contents:

One of <internal-file> or <external-file>.

3.2.4. Inline Elements

The inline elements are the elements that can appear inside the <source> and <target> elements. They enclose or replace any formatting or control codes that is not text, but resides within the text unit.

<g>

Generic group placeholder - The <g> element is used to replace any inline code of the original document that has a beginning and an end, does not overlap other paired inline codes, and can be moved within its parent structural element. The required id attribute is used to reference the replaced code in the skeleton file. The optional ctype attribute allows you to specify what kind of attribute the placeholder represents; e.g. "bold". The optional ts attribute has been deprecated in XLIFF 1.1. The optional clone attribute indicates whether this <g> element may be duplicated. The optional xid attribute references a <trans-unit> or <bin-unit>, through its id attribute value, which can contain any translatable text from the replaced code. A list of values for the ctype attribute is available. A <g> element can contain another <g> element.

Required attributes:

id.

Optional attributes:

ctype, ts, clone, xid.

Contents:

Text,
Zero, one or more of the following elements: <g>, <x/>, <bx/>, <ex/>, <bpt>, <ept>, <ph>, <it>, <mrk>, in any order.

<x/>

Generic placeholder - The <x/> element is used to replace any code of the original document. The required id attribute is used to reference the replaced code in the skeleton file. The optional ctype  attribute allows you to specify what kind of attribute the placeholder represents; e.g. "bold". The optional ts attribute has been deprecated in XLIFF 1.1. The optional clone attribute indicates whether this <x/> element may be duplicated. The optional xid attribute references a <trans-unit> or <bin-unit>, through its id attribute value, which can contain any translatable text from the replaced code. A list of values for the ctype attribute is provided by this specification.

Required attributes:

id.

Optional attributes:

ctype, ts, clone, xid.

Contents:

Empty.

<bx/>

Begin paired placeholder - The <bx/> element is used to replace a beginning paired code of the original document. It should be used for paired codes that do not follow XML well-formedness rules (i.e. no overlapping elements). If the paired codes follow that rule, it is strongly recommended that the <g> element is used because it simplifies processing. The <bx/> element should be followed by a matching <ex/> element. These paired elements are related via their rid attributes. If the rid attribute is not present (in a 1.0 document for example), the attribute id is used to match both tags. The required id attribute is used to reference the replaced code in the skeleton file. The optional ctype attribute allows you to specify what kind of attribute the placeholder represents; e.g. "bold". The optional ts attribute has been deprecated in XLIFF 1.1. The optional clone attribute indicates whether this <bx/> element may be duplicated. The optional xid attribute references a <trans-unit> or <bin-unit>, through its id attribute value, which can contain any translatable text from the replaced code. A list of values for the ctype attribute is provided by this specification.

Required attributes:

id.

Optional attributes:

rid, ctype, ts, clone, xid.

Contents:

Empty.

<ex/>

End paired placeholder - The <ex/> element is used to replace an ending paired code of the original document. It should be used for paired codes that do not follow XML well-formedness rules (i.e. no overlapping elements). If the paired codes follow that rule, it is strongly recommended that the <g> element is used because it simplifies processing. The <ex/> element should be preceded by a matching <bx/> element. These paired elements are related via their rid attributes. If the rid attribute is not present (in a 1.0 document for example), the attribute id is used to match both tags. The required id attribute is used to reference the replaced code in the skeleton file. The optional ts attribute has been deprecated in XLIFF 1.1. The optional xid attribute references a <trans-unit> or <bin-unit>, through its id attribute value, which can contain any translatable text from the replaced code.

Required attributes:

id.

Optional attributes:

rid, ts, xid.

Contents:

Empty.

<ph>

Placeholder - The <ph> element is used to delimit a sequence of native stand-alone codes in the translation unit.  The required id attribute is used to identify the <ph> inline code. The optional ctype attribute allows you to specify what kind of attribute the placeholder represents; e.g. "bold". The optional ts attribute has been deprecated in XLIFF 1.1. The optional crc attribute allows a verification of the data. The optional assoc attribute specifies whether this placeholder code is associated with the text prior or after. The optional xid attribute references a <trans-unit> or <bin-unit>, through its id attribute value, which can contain any translatable text from the replaced code. A list of values for the ctype attribute is provided by this specification.

Required attributes:

id.

Optional attributes:

ctype, ts, crc, assoc, xid.

Contents:

Code data,
Zero, one or more <sub> elements.

<bpt>

Begin paired tag - The <bpt> element is used to delimit the beginning of a paired sequence of native codes. Each <bpt> has a corresponding <ept> element within the translation unit. These paired elements are related via their rid attributes. If the rid attribute is not present (in a 1.0 document for example), the attribute id is used to match both tags. The required id attribute is used to identify the <bpt> inline code. The optional ctype attribute allows you to specify what kind of attribute the code represents; e.g. "bold". The optional ts attribute has been deprecated in XLIFF 1.1. The optional crc attribute allows a verification of the data. The optional xid attribute references a <trans-unit> or <bin-unit>, through its id attribute value, which can contain any translatable text from the inline code. A list of values for the ctype attribute is provided by this specification.

Required attributes:

id.

Optional attributes:

rid, ctype, ts, crc, xid.

Contents:

Code data,
Zero, one or more <sub> elements.

<ept>

End paired tag - The <ept> element is used to delimit the end of a paired sequence of native codes. Each <ept> has a corresponding <bpt> element within the translation unit. These paired elements are related via their rid attributes. If the rid attribute is not present (in a 1.0 document for example), the attribute id is used to match both tags. The required id attribute is used to identify the <ept> inline code. The optional ts attribute has been deprecated in XLIFF 1.1. The optional crc attribute allows a verification of the data. The optional xid attribute references a <trans-unit> or <bin-unit>, through its id attribute value, which can contain any translatable text from the inline code.

Required attributes:

id.

Optional attributes:

rid, ts, crc, xid.

Contents:

Code data,
Zero, one or more <sub> elements.

<it>

Isolated tag - The <it> element is used to delimit a beginning/ending sequence of native codes that does not have its corresponding ending/beginning within the translation unit. The required id attribute is used to identify the <it> inline code. The required pos attribute specifies whether this is the begin or end code. The optional ctype attribute allows you to specify what kind of attribute the code represents; e.g. "bold". The optional ts attribute has been deprecated in XLIFF 1.1. The optional crc attribute allows a verification of the data. The optional xid attribute references a <trans-unit> or <bin-unit>, through its id attribute value, which can contain any translatable text from the inline code. A list of values for the ctype attribute is provided by this specification.

Required attributes:

id, pos.

Optional attributes:

rid, ctype, ts, crc, xid.

Contents:

Code data,
Zero, one or more <sub> elements.

<sub>

Sub-flow - The <sub> element is used to delimit sub-flow text inside a sequence of native code, for example: the definition of a footnote or the text of a title attribute in a HTML <a> element. The optional datatype attribute specifies the data type of the content of the <sub>; e.g. "html". The optional ctype attribute allows you to specify what kind of attribute the code represents. The optional xid attribute references a <trans-unit> or <bin-unit>, through its id attribute value, which can contain any translatable text from the inline code. Lists of values for the ctype and datatype attributes are provided by this specification.

Required attributes:

None.

Optional attributes:

datatype, ctype, xid.

Contents:

Text,
Zero, one or more of the following elements: <g>, <x/>, <bx/>, <ex/>, <bpt>, <ept>, <ph>, <it>, <mrk>, in any order.

3.2.5. Delimiter Element

XLIFF defines an additional element to support various types of text processing. This element is usually not generated by the extraction module and are ignored most of the time during merging, but it can be very powerful with tools such as Machine Translation, glossary handling, quality assurance, etc.

<mrk>

Marker - The <mrk> element delimits a section of text that has special meaning, such as a terminological unit, a proper name, an item that should not be modified, etc. It can be used for various processing tasks. For example, to indicate to a Machine Translation tool proper names that should not be translated; for terminology verification, to mark suspect expressions after a grammar checking. The <mrk> element is usually not generated by the extraction tool and it is not part of the tags used to merge the XLIFF file back into its original format. The required mtype attribute specifies what is being delimited; e.g. "abbrev" for an abbreviation. The optional ts attribute has been deprecated in XLIFF 1.1. The optional comment attribute allow a free-form comment to be entered. A list of values for the mtype attribute is provided by this specification.

Required attributes:

mtype.

Optional attributes:

mid, ts, comment.

Contents:

Text,
Zero, one or more of the following elements: <g>, <x/>, <bx/>, <ex/>, <bpt>, <ept>, <ph>, <it>, <mrk>, in any order.

3.3. 属性

This section lists the various attributes used in the XLIFF elements. An attribute is never specified more than once for each element. Along with some of the attributes are the list of their possible values.

XLIFF attributes annotates, approved, assoc, build-num, ctype, category, charclass, comment, company-name, contact-email, contact-name, contact-phone, context-type, coord, count-type, crc, css-style, datatype, date, exstyle, extradata, extype, font, form, from, help-id, href, id, job-id, match-mandatory, match-quality, maxheight, maxbytes, maxwidth, menu, menu-name, menu-option, mid, mime-type, minheight, minbytes, minwidth, mtype, name, original, phase-name, pos, priority, process-name, product-name, product-version, prop-type, purpose, reformat, resname, restype, rid, size-unit, source-language, state, state-qualifier, style, tool, tool-company, tool-id, tool-name, tool-version, target-language, translate, ts, uid, unit, version, xid.
XML namespace attributes xml:lang, xml:space.

3.3.1. XLIFF Attributes

annotates

Annotates - Indicates if a <note> element pertains to the <source> or the <target>, or neither in particular.

Value description:

source, target, or general.

Default value:

general.

Used in:

 <note>.

approved

Approved - Indicates whether a translation is final or has passed its final review.

Value description:

Boolean: yes or no.

Default value:

no.

Used in:

<trans-unit>,<bin-unit>.

assoc

Association - Indicates the association of a <ph> with the text prior or after the inline element.

Value description:

preceding (the element is associated with the text preceding the element), following (the element is associated with the text following the element), and both (the element is associated with the text on both sides).

Default value:

Undefined.

Used in:

<ph>.

build-num

Build number - The build number of the version of the product or application the localizable material is for. For example: build-num="12" for the 12th build of the new version of a product.

Value description:

Alpha-numeric.

Default value:

Undefined.

Used in:

<file>.

category

Category - This provides information on the subject of what is being translated. For example: category="medical" for files from a medical related product.

Value description:

Text.

Default value:

Undefined.

Used in:

<file>.

charclass

Character class - This indicates that a translation is restricted to a subset of characters (i.e. ASCII only, Katakana only, uppercase only, etc.). A blank value indicates there is no limitation.

Value description:

Text.

Default value:

Undefined.

Used in:

<group>, <trans-unit>.

clone

Clone - This indicates that a copy of the given inline element can be made and placed multiple times in the <target>. This is useful for codes such as bold which may require duplication after localization of a segment.

Value description:

Boolean: yes or no.

Default value:

yes.

Used in:

<g>, <x/>, <bx/>.

comment

Comment - A comment in a tag.

Value description:

Alpha-numeric.

Default value:

Undefined.

Used in:

<mrk>.

company-name

Company name - The name of the company that has performed a task.

Value description:

Text.

Default value:

Undefined.

Used in:

<phase>.

contact-email

Contact email - The contact email of the contact-name person.

Value description:

Text.

Default value:

Undefined.

Used in:

<phase>.

contact-name

Contact name - The name of the person that has performed a task in a phase.

Value description:

Text.

Default value:

Undefined.

Used in:

<phase>.

contact-phone

Contact phone - The phone number of the contact-name person.

Value description:

Text.

Default value:

Undefined.

Used in:

<phase>.

context-type

Context type - The context-type attribute specifies the context and the type of resource or style of the data of a given element. For example, to define if it is a label, or a menu item in the case of resource-type data, or the style in the case of document-related data.

Value description:

The pre-defined values are defined in the table below.

ValueDescription
database Indicates a database content.
element Indicates the content of an element within an XML document.
elementtitle Indicates the name of an element within an XML document.
linenumber Indicates the line number from the sourcefile (see context-type="sourcefile") where the <source> is found.
numparams Indicates a the number of parameters contained within the <source>.
paramnotes Indicates notes pertaining to the parameters in the <source>.
record Indicates the content of a record within a database.
recordtitle Indicates the name of a record within a database.
sourcefile Indicates the original source file in the case that multiple files are merged to form the original file from which the XLIFF file is created. This differs from the original <file> attribute in that this sourcefile is one of many that make up that file.

In addition, user-defined values can be used with this attribute. A user-defined value must start with an "x-" prefix.

Default value:

Undefined.

Used in:

<context>.

coord

Coordinates - The coord attribute specifies the x, y, cx and cy coordinates of the text for a given element. The cx and cy values must represent the width and the height (as in Windows resources). The extraction and merging tools must make the right conversion if the original format uses a top-left/bottom-right coordinate system.

Value description:

Four decimal (possibly negative) values, in the order: x, y, cx and cy, separated by semi-colons. Null values may be entered as "#"; (e.g. coord="#;#;183;272").

Default value:

Undefined.

Used in:

<group>, <trans-unit>, <target>, <alt-trans>.

count-type

Count type - The count-type attribute specifies the purpose of the <count> element. For example: count-type="total" for the total count of words in the current scope.

Value description:

The pre-defined values are defined in the table below.

ValueDescription
num-usages Indicates the count units are items that are used X times in a certain context; example: this is a reusable text unit which is used 42 times in other texts.
repetition Indicates the count units are translation units existing already in the same document.
total Indicates a total count.

In addition, user-defined values can be used with this attribute. A user-defined value must start with an "x-" prefix.

In addition, the count-type attribute can take any value defined for datatype, restype, or state.

Default value:

None.

Used in:

<count>.

crc

Cyclic redundancy checking - A private value used to verify data as it is returned to the producer. The generation and verification of this number is tool-specific.

Value description:

Number (possibly not decimal).

Default value:

None.

Used in:

<internal-file>, <external-file>, <context-group>, <context>, <alt-trans>, <bpt>, <ept>, <it>, <ph>.

css-style

Cascading style-sheet style - The css-style attribute allows any valid CSS statement to be specified.

Value description:

Text, the value is subject to CSS syntax rules.

Default value:

Undefined.

Used in:

<group>, <trans-unit>, <target>, <alt-trans>.

ctype

Content type - The ctype attribute specifies the type of code that is represented by the inline element; e.g. ctype="bold" means that the code represents a bolding code.

Value description for the ctype attribute of the <x/> and <ph> elements:

The pre-defined values are defined in the table below.

ValueDescription
image Indicates a inline image.
pb Indicates a page break.
lb Indicates a line break.

In addition, user-defined values can be used with this attribute. A user-defined value must start with an "x-" prefix.

Value description for the ctype attribute of other elements:

The pre-defined values are defined in the table below.

ValueDescription
bold Indicates a run of bolded text.
italic Indicates a run of text in italics.
underlined Indicates a run of underlined text.
link Indicates a run of hyper-text.

In addition, user-defined values can be used with this attribute. A user-defined value must start with an "x-" prefix.

Default value:

Undefined.

Used in:

<g>, <x/>, <bx/>, <bpt>, <sub>, <it>, <ph>.

datatype

Data type - The datatype attribute specifies the kind of text contained in the element. Depending on that type, you may apply different processes to the data. For example: datatype="winres" specifies that the content is Windows resources which would allow using the Win32 API in rendering the content.

Value description:

The pre-defined values are defined in the table below.

ValueDescription
asp Indicates Active Server Page data.
c Indicates C source file data.
cdf Indicates Channel Definition Format (CDF) data.
cfm Indicates ColdFusion data.
cpp Indicates C++ source file data.
csharp Indicates C-Sharp data.
cstring Indicates strings from C, ASM, and driver files data.
csv Indicates comma-separated values data.
database Indicates database data.
documentfooter Indicates portions of document that follows data and contains metadata.
documentheader Indicates portions of document that precedes data and contains metadata.
filedialog Indicates data from standard UI file operations dialogs (e.g., Open, Save, Save As, Export, Import).
form Indicates standard user input screen data.
html Indicates HyperText Markup Language (HTML) data - document instance.
htmlbody Indicates content within an HTML document’s <body> element.
ini Indicates Windows INI file data.
interleaf Indicates Interleaf data.
javaclass Indicates Java source file data (extension '.java').
javapropertyresourcebundle Indicates Java property resource bundle data.
javalistresourcebundle Indicates Java list resource bundle data.
javascript Indicates JavaScript source file data.
jscript Indicates JScript source file data.
layout Indicates information relating to formatting.
lisp Indicates LISP source file data.
margin Indicates information relating to margin formats.
menufile Indicates a file containing menu.
messagefile Indicates numerically identified string table.
mif Indicates Maker Interchange Format (MIF) data.
mimetype Indicates that the datatype attribute value is a MIME Type value and is defined in the mime-type attribute.
mo Indicates GNU Machine Object data.
msglib Indicates Message Librarian strings created by Novell's Message Librarian Tool.
pagefooter Indicates information to be displayed at the bottom of each page of a document.
pageheader Indicates information to be displayed at the top of each page of a document.
parameters Indicates a list of property values (e.g., settings within INI files or preferences dialog).
pascal Indicates Pascal source file data.
php Indicates Hypertext Preprocessor data.
plaintext Indicates plain text file (no formatting other than, possibly, wrapping).
po Indicates GNU Portable Object file.
report Indicates dynamically generated user defined document. e.g. Oracle Report, Crystal Report, etc.
resources Indicates Windows .NET binary resources.
resx Indicates Windows .NET Resources.
rtf Indicates Rich Text Format (RTF) data.
sgml Indicates Standard Generalized Markup Language (SGML) data - document instance.
sgmldtd Indicates Standard Generalized Markup Language (SGML) data - Document Type Definition (DTD).
svg Indicates Scalable Vector Graphic (SVG) data.
vbscript Indicates VisualBasic Script source file.
warning Indicates warning message.
winres Indicates Windows (Win32) resources (i.e. resources extracted from an RC script, a message file, or a compiled file).
xhtml Indicates Extensible HyperText Markup Language (XHTML) data - document instance.
xml Indicates Extensible Markup Language (XML) data - document instance.
xmldtd Indicates Extensible Markup Language (XML) data - Document Type Definition (DTD).
xsl Indicates Extensible Stylesheet Language (XSL) data.
xul Indicates XUL elements.

In addition, user-defined values can be used with this attribute. A user-defined value must start with an "x-" prefix.

Default value:

Empty string.

Used in:

<file>, <group>, <trans-unit>, <alt-trans>, <sub>.

date

Date - The date attribute indicates when a given element was created or modified.

Value description:

Date in [ISO 8601] Format. The recommended pattern to use is: CCYY-MM-DDThh:mm:ssZ
Where: CCYY is the year (4 digits), MM is the month (2 digits), DD is the day (2 digits), hh is the hours (2 digits), mm is the minutes (2 digits), ss is the second (2 digits), and Z indicates the time is UTC time. For example:

date="2002-01-25T21:06:00Z"
is January 25, 2002 at 9:06pm GMT
is January 25, 2002 at 2:06pm US Mountain Time
is January 26, 2002 at 6:06am Japan time

Default value:

Undefined.

Used in:

<file>,<phase>.

exstyle

Extended style - The exstyle attribute stores the extended style of a control. For example, in Windows resources it corresponds to the EXSTYLE statement.

Value description:

Text.

Default value:

Undefined.

Used in:

<group>, <trans-unit>, <target>, <alt-trans>.

extradata

Extra data - The extradata attribute stores the extra data properties of an item.

Value description:

Text.

Default value:

Undefined.

Used in:

<group>, <trans-unit>, <alt-trans>.

extype

Extended type -The extype attribute stores the extra type properties of an item.

Value description:

Text.

Default value:

Undefined.

Used in:

<group>, <trans-unit>, <alt-trans>.

font

Font - The font attribute specifies the font name, size, and weight of the text for a given element. The font attribute would generally be used for resource-type data: change of font in document-type data can be marked with the <g> element.

Value description:

Name of the font, its size, its weight, its style and its encoding separated by semi-colons. Only the name of the font is required.

Default value:

Undefined.

Used in:

<group>, <trans-unit>, <target>, <alt-trans>.

form

Format - Describes the type of format used in an <internal-file> element. For example: form="text" indicates a plain text format internal file.

Value description:

The value can be either text (for plain text data), base64 (for data coded in base64 format), or one of values available from the [RFC 1341] document: the MIME specification.

Default value:

text.

Used in:

<internal-file>.

from

From - Indicates the author of a <note> element. For example: from="reviewer" indicates a note from a reviewer.

Value description:

Text.

Default value:

Undefined.

Used in:

<note>.

help-id

Help ID -The help-id attribute stores the help identifier of an item. For example, in Windows resources it corresponds to the Help ID parameter of a control.

Value description:

Number.

Default value:

Undefined.

Used in:

<group>, <trans-unit>, <alt-trans>.

href

Hypertext reference - The location of the file or the URL for an <external-file> element. For example: href="file:///C:/MyFolder/MyProject/MyFile.htm" indicates a file on a local drive.

Value description:

Text.

Default value:

Undefined.

Used in:

<external-file>.

id

Identifier - The id attribute is used in many elements as a reference to the original corresponding code data or format for the given element. The value of the id element is determined by the tool creating the XLIFF document. It may or may not be a resource identifier. The identifier of a resource should, at least, be stored in the resname attribute.

For example:

<trans-unit id="34" resname="IDD_ABOUT_DLG" restype="dialog"
 coord="0;0;235;100" font="MS Sans Serif;8" style="0x0932239">
 <source>About Dialog</source>
</trans-unit>
<trans-unit id="IDD_ABOUT_DLG" resname="IDD_ABOUT_DLG"
 restype="dialog" coord="0;0;235;100" font="MS Sans Serif;8"
 style="0x0932239">
 <source>About Dialog</source>
</trans-unit>

Value description:

Text. Note that, while allowed, spaces are usually not used in identifiers.

Default value:

Undefined.

Used in:

<group>, <trans-unit>, <bin-unit>, <g>, <x/>, <bx/>, <ex/>, <bpt>, <ept>, <it>, <ph>.

job-id

Job ID - The identifier given to the localization job. This is determined by the entity creating the phase element at the time of processing the file.

Value description:

Text.

Default value:

Undefined.

Used in:

<phase>.

match-mandatory

Match mandatory -Indicates that any <alt-trans> element of the parent <trans-unit> must have the same <context> as the <trans-unit>.

Value description:

Boolean: yes or no.

Default value:

no.

Used in:

<context>.

match-quality

Match quality - The match quality of the <alt-trans> element is tool specific and can be a score expressed in percentage or an arbitrary value (e.g. match-quality="high").

Value description:

Text.

Default value:

Undefined.

Used in:

<alt-trans>.

maxheight

Maximum height - The maximum height for the <target> of a <trans-unit>. This could be interpreted as lines, pixels, or any other relevant unit. The unit is determined by the size-unit attribute, which defaults to pixel.

Value description:

Number.

Default value:

Undefined.

Used in:

<group>, <trans-unit>.

maxbytes

Maximum bytes - The maximum number of bytes for the <target> of a <trans-unit>. The verification of whether the relevant text respects this requirement must be done using the encoding and line-break type of the final target environment.

Value description:

Number.

Default value:

Undefined.

Used in:

<group>, <trans-unit>.

maxwidth

Maximum width - The maximum width for the <target> of a <trans-unit>. This could be interpreted as lines, pixels, or any other relevant unit. The unit is determined by the size-unit attribute, which defaults to pixel.

Value description:

Number.

Default value:

Undefined.

Used in:

<group>, <trans-unit>.

menu

Menu - The menu attribute stores the menu property of an item.

Value description:

Text.

Default value:

Undefined.

Used in:

<group>, <trans-unit>, <alt-trans>.

menu-name

Menu name - The menu-name attribute stores the menu name of a control.

Value description:

Text.

Default value:

Undefined.

Used in:

<group>, <trans-unit>, <alt-trans>.

menu-option

Menu option - The menu-option attribute stores the option data of a control.

Value description:

Text.

Default value:

Undefined.

Used in:

<group>, <trans-unit>, <alt-trans>.

mid

Marker ID - Identifier for an <mrk> element.

Value description:

Text.

Default value:

Undefined.

Used in:

<mrk>.

mime-type

Mime type -Indicates the type of a binary object. These roughly correspond to the content-type of RFC 1341, the MIME specification; e.g. mime-type="image/jpeg" indicates the binary object is an image file of JPEG format. This is important in determining how to edit the binary object.

Value description:

Text. A list of preferred values is available from the [RFC 1341] document: the MIME specification.

Default value:

Undefined.

Used in:

<bin-unit>, <bin-target>.

minheight

Minimum height - The minimum height for the <target> of a <trans-unit>. This could be interpreted as lines, pixels, or any other relevant unit. The unit is determined by the size-unit attribute, which defaults to pixel.

Value description:

Number.

Default value:

Undefined.

Used in:

<group>, <trans-unit>.

minbytes

Minimum bytes - The minimum number of bytes for the <target> of a <trans-unit>. The verification of whether the relevant text respects this requirement must be done using the encoding and line-break type of the final target environment.

Value description:

Number.

Default value:

Undefined.

Used in:

<group>, <trans-unit>.

minwidth

Minimum width - The minimum width for the <target> of a <trans-unit>. This could be interpreted as lines, pixels, or any other relevant unit. The unit is determined by the size-unit attribute, which defaults to pixel.

Value description:

Number.

Default value:

Undefined.

Used in:

<group>, <trans-unit>.

mtype

Marker type -The mtype attribute specifies what a <mrk> element is defining within the content of a <source> or <target> element.

Value description:

The pre-defined values are defined in the table below.

ValueDescription
abbrev Indicates the marked text is an abbreviation.
abbreviated-form ISO-12620 2.1.8: A term resulting from the omission of any part of the full term while designating the same concept.
abbreviation ISO-12620 2.1.8.1: An abbreviated form of a simple term resulting from the omission of some of its letters (e.g. 'adj.' for 'adjective').
acronym ISO-12620 2.1.8.4: An abbreviated form of a term made up of letters from the full form of a multiword term strung together into a sequence pronounced only syllabically (e.g. 'radar' for 'radio detecting and ranging').
appellation ISO-12620: A proper-name term, such as the name of an agency or other proper entity.
collocation ISO-12620 2.1.18.1: A recurrent word combination characterized by cohesion in that the components of the collocation must co-occur within an utterance or series of utterances, even though they do not necessarily have to maintain immediate proximity to one another.
common-name ISO-12620 2.1.5: A synonym for an international scientific term that is used in general discourse in a given language.
datetime Indicates the marked text is a date and/or time.
equation ISO-12620 2.1.15: An expression used to represent a concept based on a statement that two mathematical expressions are, for instance, equal as identified by the equal sign (=), or assigned to one another by a similar sign.
expanded-form ISO-12620 2.1.7: The complete representation of a term for which there is an abbreviated form.
formula ISO-12620 2.1.14: Figures, symbols or the like used to express a concept briefly, such as a mathematical or chemical formula.
head-term ISO-12620 2.1.1: The concept designation that has been chosen to head a terminological record.
initialism ISO-12620 2.1.8.3: An abbreviated form of a term consisting of some of the initial letters of the words making up a multiword term or the term elements making up a compound term when these letters are pronounced individually (e.g. 'BSE' for 'bovine spongiform encephalopathy').
international-scientific-term ISO-12620 2.1.4: A term that is part of an international scientific nomenclature as adopted by an appropriate scientific body.
internationalism ISO-12620 2.1.6: A term that has the same or nearly identical orthographic or phonemic form in many languages.
logical-expression ISO-12620 2.1.16: An expression used to represent a concept based on mathematical or logical relations, such as statements of inequality, set relationships, Boolean operations, and the like.
materials-management-unit ISO-12620 2.1.17: A unit to track object.
name Indicates the marked text is a name.
near-synonym ISO-12620 2.1.3: A term that represents the same or a very similar concept as another term in the same language, but for which interchangeability is limited to some contexts and inapplicable in others.
part-number ISO-12620 2.1.17.2: A unique alphanumeric designation assigned to an object in a manufacturing system.
phrase Indicates the marked text is a phrase.
phraseological-unit ISO-12620 2.1.18: Any group of two or more words that form a unit, the meaning of which frequently cannot be deduced based on the combined sense of the words making up the phrase.
protected Indicates the marked text should not be translated.
romanized-form ISO-12620 2.1.12: A form of a term resulting from an operation whereby non-Latin writing systems are converted to the Latin alphabet.
set-phrase ISO-12620 2.1.18.2: A fixed, lexicalized phrase.
short-form ISO-12620 2.1.8.2: A variant of a multiword term that includes fewer words than the full form of the term (e.g. 'Group of Twenty-four' for 'Intergovernmental Group of Twenty-four on International Monetary Affairs').
sku ISO-12620 2.1.17.1: Stock keeping unit, an inventory item identified by a unique alphanumeric designation assigned to an object in an inventory control system.
standard-text ISO-12620 2.1.19: A fixed chunk of recurring text.
symbol ISO-12620 2.1.13: A designation of a concept by letters, numerals, pictograms or any combination thereof.
synonym ISO-12620 2.1.2: Any term that represents the same or a very similar concept as the main entry term in a term entry.
synonymous-phrase ISO-12620 2.1.18.3: Phraseological unit in a language that expresses the same semantic content as another phrase in that same language.
term Indicates the marked text is a term.
transcribed-form ISO-12620 2.1.11: A form of a term resulting from an operation whereby the characters of one writing system are represented by characters from another writing system, taking into account the pronunciation of the characters converted.
transliterated-form ISO-12620 2.1.10: A form of a term resulting from an operation whereby the characters of an alphabetic writing system are represented by characters from another alphabetic writing system.
truncated-term ISO-12620 2.1.8.5: An abbreviated form of a term resulting from the omission of one or more term elements or syllables (e.g. 'flu' for 'influenza').
variant ISO-12620 2.1.9: One of the alternate forms of a term.

In addition, user-defined values can be used with this attribute. A user-defined value must start with an "x-" prefix.

Default value:

Undefined.

Used in:

<mrk>.

name

Name - The name attribute specifies the user-defined name of a named group element. This is used for identification purposes only and is not referenced with the file, unless by a processing instruction.

Value description:

Text.

Default value:

Undefined.

Used in:

<prop-group>, <context-group>, <count-group>.

origin

Translation Match Origin - The origin attribute specifies where a translation match came from; for example, from a previous version of the same product, a different product, a shared translation memory, etc.

Value description:

Text.

Default value:

Undefined.

Used in:

<alt-trans>.

original

Original file - The original attribute specifies the name of the original file from which the contents of a <file> element has been extracted.

Value description:

Text.

Default value:

Undefined.

Used in:

<file>.

phase-name

Phase Name - The phase-name attribute provides a unique name for a <phase> element. It is used in other elements in the file to refer to the given <phase> element.

Value description:

Text.

Default value:

Undefined.

Used in:

<count>, <phase>, <trans-unit>, <target>, <bin-unit>, <bin-target>.

pos

Position - Indicates whether an isolated tag <it> is a beginning or an ending tag.

Value description:

open or close.

Default value:

Undefined.

Used in:

<it>.

priority

Priority - The priority of a <note> element.

Value description:

A number between 1 and 10, 1 being the highest priority.

Default value:

1

Used in:

<note>.

process-name

Process name - The name specifying the type of process a given <phase> corresponds to (e.g. Translation, Proofreading, Sizing, etc.).

Value description:

Text.

Default value:

Undefined.

Used in:

<phase>.

product-name

Product name - The name of the product which uses this file.

Value description:

Text.

Default value:

Undefined.

Used in:

<file>.

product-version

Product version - The version of the product which uses this file.

Value description:

Alpha-numeric.

Default value:

Undefined.

Used in:

<file>.

prop-type

Property type - The prop-type attribute specifies the type of a <prop> element.

Important: Because the <prop> element is DEPRECATED in version 1.1 and this attribute is only a member of that element, this attribute is also deprecated. Instead, use attributes defined in a namespace different from XLIFF. See the Extensibility section for more information.

Value description:

Text. No value defined by the standard.

Default value:

Undefined.

Used in:

<prop>.

purpose

Purpose - The purpose attribute specifies the purpose of a <context-group> element. For example: purpose="information" indicates the content is informational only and not used for specific processing.

Value description:

The pre-defined values are defined in the table below.

ValueDescription
information Indicates that the context is informational in nature, specifying for example, how a term should be translated. Thus, should be displayed to anyone editing the XLIFF document.
location Indicates that the context-group is used to specify where the term was found in the translatable source. Thus, it is not displayed.
match Indicates that the context information should be used during translation memory lookups. Thus, it is not displayed.

In addition, user-defined values can be used with this attribute. A user-defined value must start with an "x-" prefix.

Combinations of these values can be used. For example, purpose="location match x-validate" provides both location (location) and TM matching (match) contextual information, as well as some user-defined data (x-validate).

Default value:

Undefined.

Used in:

<context-group>.

reformat

Reformat - Indicates whether some properties (size, font, etc.) of the target can be formatted differently from the source.

Value description (stand-alone):

The pre-defined values are defined in the table below.

ValueDescription
yes This value indicate that all properties can be reformatted. This value must be used alone.
no This value indicate that no properties should be reformatted. This value must be used alone.

Value description (enumerated):

The pre-defined values are defined in the table below.

ValueDescription
coord This value indicates that all information in the coord attribute can be modified.
coord-x This value indicates that the x information in the coord attribute can be modified.
coord-y This value indicates that the y information in the coord attribute can be modified.
coord-cx This value indicates that the cx information in the coord attribute can be modified.
coord-cy This value indicates that the cy information in the coord attribute can be modified.
font This value indicates that all the information in the font attribute can be modified.
font-name This value indicates that the name information in the font attribute can be modified.
font-size This value indicates that the size information in the font attribute can be modified.
font-weight This value indicates that the weight information in the font attribute can be modified.
css-style This value indicates that the information in the css-style attribute can be modified.
style This value indicates that the information in the style attribute can be modified.
ex-style This value indicates that the information in the exstyle attribute can be modified.

In addition, user-defined values can be used with this attribute. A user-defined value must start with an "x-" prefix.

Except for the values yes and no, the other values can be used in combination, separated by a space. For example:

reformat="yes"

All properties can be reformatted.

reformat="no"

No properties should be reformatted.

reformat="font-name coord-x coord-y"

Only the name part of the font attribute, the x part of the coord attribute and the y part of the coord attribute can be modified.

Default value:

yes.

Used in:

<group>, <trans-unit>,<bin-unit>.

resname

Resource name - Resource name or identifier of a item. For example: the key in the key/value pair in a Java properties file, the ID of a string in a Windows string table, the index value of an entry in a database table, etc.

Value description:

Text.

Default value:

Undefined.

Used in:

<group>. <trans-unit>, <alt-trans>, <target>, <bin-unit>, <bin-target>.

restype

Resource type - Indicates the resource type of the container element.

Value description:

The pre-defined values are defined in the table below.

ValueDescription
auto3state Indicates a Windows RC AUTO3STATE control.
autocheckbox Indicates a Windows RC AUTOCHECKBOX control.
autoradiobutton Indicates a Windows RC AUTORADIOBUTTON control.
bedit Indicates a Windows RC BEDIT control.
bitmap Indicates a bitmap, for example a BITMAP resource in Windows.
button Indicates a button object, for example a BUTTON control Windows.
caption Indicates a caption, such as the caption of a dialog box.
cell Indicates the cell in a table, for example the content of the <td> element in HTML.
checkbox Indicates check box object, for example a CHECKBOX control in Windows.
checkboxmenuitem Indicates a menu item with an associated checkbox.
checkedlistbox Indicates a list box, but with a check-box for each item.
colorchooser Indicates a color selection dialog.
combobox Indicates a combination of edit box and listbox object, for example a COMBOBOX control in Windows.
comboboxexitem Indicates an initialization entry of an extended combobox DLGINIT resource block. (code 0x1234).
comboboxitem Indicates an initialization entry of a combobox DLGINIT resource block (code 0x0403).
component Indicates a UI base class element that cannot be represented by any other element.
contextmenu Indicates a context menu.
ctext Indicates a Windows RC CTEXT control.
cursor Indicates a cursor, for example a CURSOR resource in Windows.
datetimepicker Indicates a date/time picker.
defpushbutton Indicates a Windows RC DEFPUSHBUTTON control.
dialog Indicates a dialog box.
dlginit Indicates a Windows RC DLGINIT resource block.
edit Indicates an edit box object, for example an EDIT control in Windows.
file Indicates a filename.
filechooser Indicates a file dialog.
fn Indicates a footnote.
font Indicates a font name.
footer Indicates a footer.
frame Indicates a frame object.
grid Indicates a XUL grid element.
groupbox Indicates a groupbox object, for example a GROUPBOX control in Windows.
header Indicates a header item.
heading Indicates a heading, such has the content of <h1>, <h2>, etc. in HTML.
hedit Indicates a Windows RC HEDIT control.
hscrollbar Indicates a horizontal scrollbar.
icon Indicates an icon, for example an ICON resource in Windows.
iedit Indicates a Windows RC IEDIT control.
keywords Indicates keyword list, such as the content of the Keywords meta-data in HTML, or a K footnote in WinHelp RTF.
label Indicates a label object.
linklabel Indicates a label that is also a HTML link (not necessarily a URL).
list Indicates a list (a group of list-items, for example an <ol> or <ul> element in HTML).
listbox Indicates a listbox object, for example an LISTBOX control in Windows.
listitem Indicates an list item (an entry in a list).
ltext Indicates a Windows RC LTEXT control.
menu Indicates a menu (a group of menu-items).
menubar Indicates a toolbar containing one or more tope level menus.
menuitem Indicates a menu item (an entry in a menu).
menuseparator Indicates a XUL menuseparator element.
message Indicates a message, for example an entry in a MESSAGETABLE resource in Windows.
monthcalendar Indicates a calendar control.
numericupdown Indicates an edit box beside a spin control.
panel Indicates a catch all for rectangular areas.
popupmenu Indicates a standalone menu not necessarily associated with a menubar.
pushbox Indicates a pushbox object, for example a PUSHBOX control in Windows.
pushbutton Indicates a Windows RC PUSHBUTTON control.
radio Indicates a radio button object.
radiobuttonmenuitem Indicates a menuitem with associated radio button.
rcdata Indicates raw data resources for an application.
row Indicates a row in a table.
rtext Indicates a Windows RC RTEXT control.
scrollpane Indicates a user navigable container used to show a portion of a document.
separator Indicates a generic divider object (e.g. menu group separator).
shortcut Windows accelerators, shortcuts in resource or property files.
spinner Indicates a UI control to indicate process activity but not progress.
splitter Indicates a splitter bar.
state3 Indicates a Windows RC STATE3 control.
statusbar Indicates a window for providing feedback to the users, like 'read-only', etc.
string Indicates a string, for example an entry in a STRINGTABLE resource in Windows.
tabcontrol Indicates a layers of controls with a tab to select layers.
table Indicates a display and edits regular two-dimensional tables of cells.
textbox Indicates a XUL textbox element.
togglebutton Indicates a UI button that can be toggled to on or off state.
toolbar Indicates an array of controls, usually buttons.
tooltip Indicates a pop up tool tip text.
trackbar Indicates a bar with a pointer indicating a position within a certain range.
tree Indicates a control that displays a set of hierarchical data.
uri Indicates a URI (URN or URL).
userbutton Indicates a Windows RC USERBUTTON control.
usercontrol Indicates a user-defined control like CONTROL control in Windows.
var Indicates the text of a variable.
versioninfo Indicates version information about a resource like VERSIONINFO in Windows.
vscrollbar Indicates a vertical scrollbar.
window Indicates a graphical window.

In addition, user-defined values can be used with this attribute. A user-defined value must start with an "x-" prefix.

Default value:

Undefined.

Used in:

<group>, <trans-unit>, <target>, <alt-trans>, <bin-unit>, <bin-target>.

rid

Reference identifier - The rid attribute is used to link paired inline elements. The rid attribute of a begin-paired-code element should have the same value as the close-paired-code element. For example: <bx id="1" rid="1"/> ... <ex id="3" rid="1"/> indicates these elements are paired.  If the rid attribute is not present (in a 1.0 document for example), the attribute id is used to match both tags. For example: <bpt id='5'>xx</bpt> ... <ept id='5'>xx</ept>.

Value description:

Alpha-numeric without spaces.

Default value:

Undefined.

Used in:

<bpt>, <ept>, <it>, <bx/>, <ex/>.

size-unit

Unit of size attributes - The size-unit attribute specifies the units of measure used in the maxheight, minheight, maxwidth, and minwidth attributes. The size-unit attribute is not related to the coord attribute.

Value description:

The pre-defined values are defined in the table below.

ValueDescription
byte Indicates a size in 8-bit bytes.
char Indicates a size in Unicode characters.
col Indicates a size in columns. Used for HTML text area.
cm Indicates a size in centimeters.
dlgunit Indicates a size in dialog units, as defined in Windows resources.
em Indicates a size in 'font-size' units (as defined in CSS).
ex Indicates a size in 'x-height' units (as defined in CSS).
glyph Indicates a size in glyphs. A glyph is considered to be one or more combined Unicode characters that represent a single displayable text character. Sometimes referred to as a 'grapheme cluster'
in Indicates a size in inches.
mm Indicates a size in millimeters.
percent Indicates a size in percentage.
pixel Indicates a size in pixels.
point Indicates a size in point.
row Indicates a size in rows. Used for HTML text area.

In addition, user-defined values can be used with this attribute. A user-defined value must start with an "x-" prefix.

Default value:

pixel.

Used in:

<group>, <trans-unit>.

source-language

Source language - The language for the <source> elements in the given <file> element.

Value description:

A language code as described in the [RFC 3066]. The values for this attribute follow the same rules as the values for xml:lang. Unlike the other XLIFF attributes, the values for xml:lang are not case-sensitive. For more information see the section on xml:lang in the XML specification, and the erratum E11 (which replaces RFC 1766 by RFC 3066).

The source language can be also specified by xml:lang in each <source> element. The values of source-language and xml:lang in <source> can be different only in an <alt-trans> element.

Default value:

Undefined.

Used in:

<file>.

state

State - The status of a particular translation in a <target> or <bin-target> element.

Value description:

The pre-defined values are defined in the table below.

ValueDescription
final Indicates the terminating state.
needs-adaptation Indicates only non-textual information needs adaptation.
needs-l10n Indicates both text and non-textual information needs adaptation.
needs-review-adaptation Indicates only non-textual information needs review.
needs-review-l10n Indicates both text and non-textual information needs review.
needs-review-translation Indicates that only the text of the item needs to be reviewed.
needs-translation Indicates that the item needs to be translated.
new Indicates that the item is new. For example, translation units that were not in a previous version of the document.
signed-off Indicates that changes are reviewed and approved.
translated Indicates that the item has been translated.

In addition, user-defined values can be used with this attribute. A user-defined value must start with an "x-" prefix.

Default value:

Undefined.

Used in:

<target>,<bin-target>.

state-qualifier

State-qualifier - Describes the state of a particular translation in a <target> or <bin-target> element.

Value description:

The pre-defined values are defined in the table below.

ValueDescription
exact-match Indicates an exact match. An exact match occurs when a source text of a segment is exactly the same as the source text of a segment that was translated previously.
fuzzy-match Indicates a fuzzy match. A fuzzy match occurs when a source text of a segment is very similar to the source text of a segment that was translated previously (e.g. when the difference is casing, a few changed words, white-space discripancy, etc.).
id-match Indicates a match based on matching IDs (in addition to matching text).
leveraged-glossary Indicates a translation derived from a glossary.
leveraged-inherited Indicates a translation derived from existing translation.
leveraged-mt Indicates a translation derived from machine translation.
leveraged-repository Indicates a translation derived from a translation repository.
leveraged-tm Indicates a translation derived from a translation memory.
mt-suggestion Indicates the translation is suggested by machine translation.
rejected-grammar Indicates that the item has been rejected because of incorrect grammar.
rejected-inaccurate Indicates that the item has been rejected because it is incorrect.
rejected-length Indicates that the item has been rejected because it is too long or too short.
rejected-spelling Indicates that the item has been rejected because of incorrect spelling.
tm-suggestion Indicates the translation is suggested by translation memory.

In addition, user-defined values can be used with this attribute. A user-defined value must start with an "x-" prefix.

Default value:

Undefined.

Used in:

<target>,<bin-target>.

style

Style - The resource style of a control. For example, in Windows resources it corresponds to the STYLE statement.

Value description:

Text.

Default value:

Undefined.

Used in:

<group>, <trans-unit>, <target>, <alt-trans>.

target-language

Target language - The language for the <target> elements in the given <file> element.

Value description:

A language code as described in the [RFC 3066]. The values for this attribute follow the same rules as the values for xml:lang. Unlike the other XLIFF attributes, the values for xml:lang are not case-sensitive. For more information see the section on xml:lang in the XML specification, and the erratum E11 (which replaces RFC 1766 by RFC 3066).

The target language can be also specified by xml:lang in each <target> element. The values of target-language and xml:lang in <target> can be different only when in an <alt-trans> element.

Default value:

Undefined.

Used in:

<file>.

tool

Creation tool - The tool attribute is used to specify the signature and version of the tool that created or modified the document.

Important: The tool attribute is DEPRECATED in version 1.1. Instead, use the <tool> element and a tool-id attribute.

Value description:

Text

Default value:

manual.

Used in:

<file>, <phase>, <alt-trans>.

tool-company

Tool company - The tool-company attribute specifies the company from which a tool originates.

Value description:

Text.

Default value:

Undefined.

Used in:

<tool>.

tool-id

Tool identifier - The tool-id attribute allows unique identification of a <tool> element. It is also used in other elements in the file to refer to the given <tool> element.

Value description:

Text.

Default value:

Undefined.

Used in:

<file>, <phase>, <alt-trans>, <tool>.

tool-name

Tool name - The tool-name attribute specifies the name of a given tool.

Value description:

Text.

Default value:

Undefined.

Used in:

<tool>.

tool-version

Tool version - The tool-version attribute specifies the version of a given tool.

Value description:

Text.

Default value:

Undefined.

Used in:

<tool>.

translate

Translate - The translate attribute indicates whether or not the text referred to should be translated.

Value description:

Boolean: yes or no.

Default value:

yes.

Used in:

<group>, <trans-unit>, <bin-unit>.

ts

Tool-specific data - The ts attribute allows you to include short data understood by a specific toolset. You can also use the <prop> element to define large properties at the element level.

Important: The ts attribute is DEPRECATED in version 1.1. Instead, use attributes defined in a namespace different from XLIFF. See the Extensibility section for more information.

Value description:

Text. No value defined by the standard.

Default value:

Undefined.

Used in:

<file>, <group>, <trans-unit>, <source>, <target>, <bin-unit>, <bin-source>, <bin-target>, <alt-trans>, <mrk>, <g>, <x/>, <bx/>, <ex/>, <bpt>, <ept>, <ph>, <it>.

uid

Unique ID - The uid attribute is used to provide a unique ID to identify the skeleton file.

Value description:

Text.

Default value:

Undefined.

Used in:

<external-file>.

unit

Unit - The unit attribute specifies the units counted in a <count> element.

Value description:

The pre-defined values are defined in the table below.

ValueDescription
word Refers to words.
page Refers to pages.
trans-unit Refers to <trans-unit> elements.
bin-unit Refers to <bin-unit> elements.
glyph Refers to glyphs.
item Refers to <trans-unit> and/or <bin-unit> elements.
instance Refers to the occurrences of instances defined by the count-type value.
character Refers to characters.
line Refers to lines.
sentence Refers to sentences.
paragraph Refers to paragraphs.
segment Refers to segments.
placeable Refers to placeables (inline elements).

In addition, user-defined values can be used with this attribute. A user-defined value must start with an "x-" prefix.

Default value:

Undefined.

Used in:

<count>.

version

XLIFF version - The version attribute is used to specify the format version of the XLIFF document. This corresponds to the version number of the XLIFF specification that is being adhered to.

Value description:

Text.

Default value:

1.1

Used in:

<xliff>.

xid

Extern Reference identifier - The xid attribute is used to link an inline element to a different <trans-unit> or <bin-unit> element. For example, to link the text within a code to a corresponding translation unit.

Value description:

The value of the referenced id.

Default value:

Undefined.

Used in:

<bpt>, <ept>, <it>, <ph>, <g>, <x/>, <bx/>, <ex/>, <sub>.

3.3.2. XML Namespace Attributes

xml:lang

Language - The xml:lang attribute specifies the language variant of the text of a given element. For example: xml:lang="fr-FR" indicates the French language as spoken in France.

Value description:

A language code as described in the [RFC 3066]. This declared value is considered to apply to all elements within the content of the element where it is specified, unless overridden with another instance of the xml:lang attribute. Unlike the other XLIFF attributes, the values for xml:lang are not case-sensitive. For more information see the section on xml:lang in the XML specification, and the erratum E11 (which replaces RFC 1766 by RFC 3066).

Default value:

Undefined.

Used in:

<xliff>, <note>, <prop>, <source>, <target>, <alt-trans>.

xml:space

White spaces - The xml:space attribute specifies how white spaces (ASCII spaces, tabs and line-breaks) should be treated.

Value description:

default or preserve. The value default signals that an application's default white-space processing modes are acceptable for this element; the value preserve indicates the intent that applications preserve all the white space. This declared intent is considered to apply to all elements within the content of the element where it is specified, unless overridden with another instance of the xml:space attribute.

For more information see the section on xml:space in the XML specification.

Default value:

default.

Used in:

<file>, <group>, <trans-unit>, <alt-trans>.

A. XLIFFの木構造

以下の図は可能な構造を木で表現しています。 各要素の後には,可能な出現回数を対応する凡例に従って示す表記が書かれています。

(凡例: 1 = 1つ
       + = 1以上
       ? = 0か1
       * = 0か1以上)

<xliff>1
|
+--- <file>+
     |
     +--- <header>?
     |    |
     |    +--- <skl>?
     |    |    |
     |    |    +--- (<internal-file> | <external-file>)1
     |    |
     |    +--- <phase-group>?
     |    |    |
     |    |    +--- <phase>+
     |    |         |
     |    |         +--- <note>*
     |    |
     |    +--- <glossary>*
     |    |    |
     |    |    +--- (<internal-file> | <external-file>)1
     |    |
     |    +--- <reference>*
     |    |    |
     |    |    +--- (<internal-file> | <external-file>)1
     |    |
     |    +--- <count-group>*
     |    |    |
     |    |    +--- <count>*
     |    |
     |    +--- <tool>*
     |    |    |
     |    |    +--- [拡張ポイント]
     |    |
     |    +--- <prop-group>*
     |    |    |
     |    |    +--- <prop>*
     |    |
     |    +--- [拡張ポイント]
     |    |
     |    +--- <note>*
     |
     +--- <body>1
          |
          +--- <group>*
          |    |
          |    +--- <context-group>*
          |    |    |
          |    |    +--- <context>+
          |    |
          |    +--- <count-group>*
          |    |    |
          |    |    +--- <count>*
          |    |
          |    +--- <prop-group>*
          |    |    |
          |    |    +--- <prop>*
          |    |
          |    +--- [拡張ポイント]
          |    |
          |    +--- <note>*
          |    |
          |    +--- 少なくとも1つ以上の: (<group>* <trans-unit>* <bin-unit>*)
          |
          +--- <trans-unit>*
          |    |
          |    +--- <source>1
          |    |    |
          |    |    +--- [インライン要素]
          |    |
          |    +--- <target>?
          |    |    |
          |    |    +--- [インライン要素]
          |    |
          |    +--- <context-group>*
          |    |    |
          |    |    +--- <context>+
          |    |
          |    +--- <count-group>*
          |    |    |
          |    |    +--- <count>*
          |    |
          |    +--- <prop-group>*
          |    |    |
          |    |    +--- <prop>*
          |    |
          |    +--- [拡張ポイント]
          |    |
          |    +--- <note>*
          |    |
          |    +--- <alt-trans>*
          |         |
          |         +--- <context-group>*
          |         |    |
          |         |    +--- <context>+
          |         |
          |         +--- <source>?
          |         |    |
          |         |    +--- [インライン要素]
          |         |
          |         +--- <target>+
          |         |    |
          |         |    +--- [インライン要素]
          |         |
          |         +--- <prop-group>*
          |         |    |
          |         |    +--- <prop>*
          |         |
          |         +--- [拡張ポイント]
          |         |
          |         +---- <note>*
          |
          +--- <bin-unit>*
               |
               +--- <bin-source>1 & <bin-target>?
               |    |
               |    +--- (<internal-file> | <external-file>)1
               |
               +--- <context-group>*
               |    |
               |    +--- <context>+
               |
               +--- <count-group>*
               |    |
               |    +--- <count>*
               |
               +--- <prop-group>*
               |    |
               |    +--- <prop>*
               |
               +--- [拡張ポイント]
               |
               +--- <note>*
               |
               +--- <trans-unit>*



インライン要素:

---+--- <ph>*
   |    |
   |    +--- <sub>*
   |         |
   |         +--- [インライン要素]
   |
   +--- <it>*
   |    |
   |    +--- <sub>*
   |         |
   |         +--- [インライン要素]
   |
   +--- <bpt>*
   |    |
   |    +--- <sub>*
   |         |
   |         +--- [インライン要素]
   |
   +--- <ept>*
   |    |
   |    +--- <sub>*
   |         |
   |         +--- [インライン要素]
   |
   +--- <g>*
   |    |
   |    +--- [インライン要素]
   |
   +--- <x/>*
   |    |
   |    +--- [インライン要素]
   |
   +--- <bx/>*
   |    |
   |    +--- [インライン要素]
   |
   +--- <ex/>*
   |    |
   |    +--- [インライン要素]
   |
   +--- <mrk>*
        |
        +--- [インライン要素]

B. 文書型定義とスキーマ

C. 前バージョンからの変更(非規範的)

本バージョンにおける前バージョンからの相対的な変更は以下の通りです:

D. 命名ガイドライン(非規範的)

本仕様書を記述するために以下の命名ガイドラインが使用されました。

D.1. 要素と属性

要素と属性の命名には以下のガイドラインが使用されました。

  1. 標準的な英語の文字。
  2. 小文字のみ。
  3. 複合名の作成にはハイフンが好ましい方法である。
  4. 可能な限り業界標準用語に従うべきである。

D.2. 属性値

属性値は大文字小文字を区別します。 小文字の値を使用することが推奨されます。 本仕様書は属性に対して数多くの値を推奨しており,それらは全て小文字です。

XLIFF文書内で複数の属性値が使用されうる場合,2つのアプローチが用いられています: 列挙型の属性(例えば<context-group>purpose属性)に対しては, セパレータはスペース1つでなければなりません。 他の文字列に基づくテキスト型の属性に対しては,本仕様書は値のセパレータにはセミコロンの使用を推奨します。 例えば,<file>に対する複数のコンタクトは, 次のような属性の記述でリストアップすることができます: contact-name="Frank Sinatra;Sammy Davis Jnr;Dean Martin"

D.3. 処理命令

XLIFFは"xliff-"で始まる処理命令を予約しています。

D.4. XLIFFファイル拡張子

XLIFF文書は .xlf 拡張子を使います。 本仕様書では他の拡張子は推奨していません。

E. XLIFF技術委員会(非規範的)

OASISのXLIFF技術委員会は以下のメンバーで構成されています:

E. 参考文献

規範的

[CSS]
CSS Specifications. W3C (World Wide Web Consortium).
[IANA Charsets]
IANA Names for Character Sets. IANA (Internet Assigned Numbers Authority), Aug 2001
[ISO 639]
Codes for the Representation of Names of Languages. ISO (International Standards Organization), Nov 2001.
[ISO 3166]
Codes for the representation of names of countries and their subdivisions. ISO (International Organization for Standardization), Jun 2000.
[ISO 8601]
Representation of dates and times. ISO (International Organization for Standardization), Dec 2000.
[RFC 1341]
Multipurpose Internet Mail Extensions. IETF (Internet Engineering Task Force), Jun 1992.
[RFC 3066]
RFC 3066 Tags for the Identification of Languages. IETF (Internet Engineering Task Force), Jan 2001.
[XML 1.0]
Extensible Markup Language (XML) 1.0 Second Edition. W3C (World Wide Web Consortium), Oct 2000.
[XML Names]
Namespaces in XML. W3C (World Wide Web Consortium), Jan 1999.

非規範的

[ISO]
International Organization for Standardization Web site.
[LISA]
Localisation Industry Standards Association Web site.
[OASIS]
Organization for the Advancement of Structured Information Standards Web site.
[OpenTag 1.2]
OpenTag Format Specifications. ILE (International Language Engineering), Nov 1998.
[TMX 1.4a]
TMX Format Specifications. LISA (Localisation Industry Standards association), Jul 2002.
[Unicode]
Unicode Consortium Web site.
[W3C]
World Wide Web Consortium Web site.