Skip to main content

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 つ以上の部分で構成されます。つまり、主言語タグ (enja) の後に、オプションでハイフン (-) で区切られた 2 番目の言語タグを (en-gbja-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="&lt;b&gt;%1&lt;/b&gt;" $Roles="&lt;b>%2&lt;/b&gt;"
</Message>
FeedbackOpens in a new tab