XML エンティティの定義

www.altova.com このトピックを印刷 前のページ 1つ上のレベル 次のページ

ホーム >  ユーザーマニュアル > メニューコマンド > Authentic メニュー >

XML エンティティの定義

Authentic View にて使用するエンティティを(ドキュメントが DTD か XML スキーマをベースにしているかに関わらず)定義することができます。一度定義を行うと、これらのエンティティがエンティティ入力ヘルパーならびにコンテキストメニューのエンティティを挿入サブメニューに表示されます。エンティティ入力ヘルパーに表示されているエンティティをダブルクリックすると、そのエンティティがカーソル位置に挿入されます。

 

テキスト文字列や XML フラグメント、その他の外部リソースを、ドキュメントの複数箇所で使用する場合、エンティティは便利な機能となります。目的のデータを表す短い名前のエンティティをエンティティの定義ダイアログにて定義します。エンティティを一度定義すると、そのエンティティをドキュメントの複数箇所で使用することができるようになります。この機能により、編集時間の短縮や、メンテナンスコストを大幅に軽減することができます。

 

ドキュメントで使用することのできるエンティティには、XML データ(テキスト文字列または XML ドキュメントのフラグメント)の解析対象実体(解析対象エンティティ)と、バイナリファイル(通常はイメージや音楽などのマルチメディアオブジェクト)の様な非 XML データを扱う解析対象外実体(解析対象外エンティティ)と、大きく分けて2つの種類があります。各エンティティには名前と値が与えられています。解析対象エンティティの場合、エンティティは XML データのプレースホルダーとなります。エンティティの値は XML データそのものか、XML データを含む .xml ファイルへの URI となります。解析対象外エンティティの場合、非 XML データファイルへの URI が値として入力されます。

 

エンティティを定義するには:

 

1.Authentic | XML エンティティの定義...」をクリックします。エンティティの定義ダイアログが表示されます。

dlg_define_entities

 

2.エンティティの名前を Name フィールドに入力します。この値がエンティティ入力ヘルパーに表示される名前となります。
3.Type フィールドのドロップダウンリストにてエンティティの種類を指定します。3つある種類から選択を行います。Internal エンティティでは、エンティティの実体であるテキストが XML ドキュメントの中に保管されます。PUBLICSYSTEM では、エンティティのリソースが、XML ファイルの外に配置され、それぞれ PUBLIC 識別子と SYSTEM 識別子を使用することで、リソースが特定されます。SYSTEM 識別子ではリソースの場所を表す URI が記述されます。PUBLIC 識別子は場所に依存しない識別子で、リソースの特定はプロセッサーにより行われます。PUBLIC 識別子と SYSTEM 識別子の両方を指定すると、PUBLIC 識別子により SYSTEM 識別子が特定され、SYSTEM 識別子が使用されます。
4.Type に PUBLIC を選択した場合、リソースの PUBLIC 識別子を PUBLIC フィールドに入力してください。Type にて Internal または SYSTEM を選択した場合、PUBLIC フィールドが無効になります。
5.Value/Path フィールドでは、以下のどれかを入力することができます:

 

エンティティの種類が Internal の場合、エンティティの値となるテキスト文字列を入力してください。エントリーには引用句を入力しないでください。入力された引用句はテキスト文字列の一部として扱われます。
エンティティの種類が SYSTEM の場合、リソースの URI を入力するか、参照ボタンを使用して、ローカルネットワークからリソースを選択してください。リソースが参照可能エンティティである場合、参照されるリソースは XML ファイル(つまり .xml 拡張子を持ったファイル)である必要があります。他にも、GIF ファイルのようなバイナリファイルを使用することもできます。
エンティティの種類が PUBLIC の場合、このフィールドに SYSTEM 識別子を入力する必要があります。

 

6.NDATA エントリーにより、エンティティが解析対象エンティティではなく、適切なプロセッサーに送られるものだということがプロセッサーに伝えられます。そのため NDATA フィールドは解析対象外エンティティに対してのみ使用されます。

 

ダイアログ機能

対応するボタンをクリックすることでエンティティの追加、挿入、そして削除を行うことができます。カラムのヘッダーをクリックすることで、エンティティをアルファベット順に並び替え。1回クリックすることで昇順、2回クリックで降順の並び替えとなります。 ダイアログボックスの大きさならびにカラムの幅を変更することができます。

 

エンティティが1度 XML ドキュメント内で使用されると、そのエンティティはロックされ、エンティティの編集ダイアログにて編集することができなくなります。ロックされたエンティティは、最初のカラムにロックシンボルが表示されます。エンティティのロックを行うことで、エンティティにおける XML ドキュメントの妥当性が保証されます(参照されているエンティティが定義されていない場合、ドキュメントは不正となります)。

 

複製されたエンティティがある場合は、その旨が表示されます。

 

制約

 

他のエンティティ内に含まれているエンティティは、ダイアログ、Authentic View、XSLT 出力にて解決されず、そのようなエンティティのアンパサンドはエスケープされた形(つまり &)で表示されます。
外部エンティティは、そのエンティティがイメージである場合と ENTITY または ENTITIES 型の属性値として入力された場合を除き Authentic View にて解決されません。このようなエンティティは、SPS から生成された XSLT にてドキュメントが処理されたときに解決されます。

 


(C) 2019 Altova GmbH