XML メッセージ・ファイル
XML メッセージ・ファイルは、文字列のローカライズで使用されるメッセージ・ディクショナリのエクスポートです。また、インポートするメッセージで必要な形式でもあります (エクスポートとインポートの手順は、"メッセージ・ディクショナリの管理" を参照してください)。
可能であれば、XML メッセージ・ファイルでは UTF-8 エンコードを使用する必要があります。ただし、場合によっては、開発者またはトランスレータは、shift-jis などのローカル・プラットフォームのエンコーディングを使用して、XML メッセージ・ファイルを容易に編集できるようにすることができます。XML ファイルに使用するエンコーディングはすべて、アプリケーションのロケールでサポートされている必要があります。また、その言語のメッセージを表すことができる必要があります。
1 つの XML メッセージ・ファイルには 1 つの言語と複数のドメインのメッセージを含めることができます。
<MsgFile> 要素
<MsgFile> 要素は、XML メッセージ・ファイルの最上位コンテナで、1 つのファイルに存在する <MsgFile> 要素は 1 つだけです。
<MsgFile> 要素には 1 つの必須属性 Language があります。<MsgFile> の Language 属性の値は、すべて大文字の RFC1766Opens in a new tab コードであり、ファイルの言語を識別します。 これは、1 つ以上の部分で構成されます。つまり、主言語タグ (en や ja) の後に、オプションでハイフン (-) で区切られた 2 番目の言語タグを (en-gb や ja-jp) 記述します。
以下の例では、この言語は "en" (英語) です。
<?xml version="1.0" encoding="utf-8" ?>
<MsgFile Language="en">
<MsgDomain Domain="sample">
<Message Id="source">Source</Message>
<Message Id="menu">Samples Menu</Message>
</MsgDomain>
</MsgFile>
<MsgFile> には <MsgDomain> 要素が少なくとも 1 つ含まれる必要があります。複数の <MsgDomain> を含めることができます。
<MsgDomain> 要素
<MsgDomain> 要素には 1 つの必須属性 Domain があります。<MsgDomain> の Domain 属性の値は、アプリケーションのメッセージを編成するために使用しているドメイン名の 1 つです。
<MsgDomain> 要素には、0 個以上の <Message> 要素を含めることができます。
<Message> 要素
<Message> 要素には 1 つの必須属性 Id があります。<Message> の Id 属性の値は、アプリケーションのメッセージを編成するために使用しているメッセージ ID 文字列の 1 つです。
<Message> 要素にはテキスト文字列を含めることができます。文字列は、以下の項目を個別に構成するか、組み合わせて構成することができます。
-
使用可能なファイル形式のシンプル・テキスト
-
置換引数 %1、%2、%3、または %4
-
HTML 形式
-
ObjectScript 形式の文字列表現
以下の例では、%1、%2、太字書式の HTML タグ、および連続する 2 つの二重引用符は 1 つの二重引用符を示すという ObjectScript の文字列規約を使用しています。
<Message>
The session $Username="<b>%1</b>" $Roles="<b>%2</b>"
</Message>