パースされていないエンティティ URI

www.altova.com すべてを展開/折りたたむ このトピックを印刷 前のページ 1つ上のレベル 次のページ

ホーム >  SPS ファイル: 追加機能 >

パースされていないエンティティ URI

DTD を使用していて、その中でパースされていないエンティティを宣言した場合、そのエンティティに関連付けられている URI をSPS 内にあるイメージやハイパーリンクのターゲットとして使用することができます。この機能により、同じ URI を SPS にて複数回使用することが可能になります。この機能では、DTD にあるパースされていないエンティティの URI を出力、すなわち、 Authentic View を除く (HTML、 RTF へ渡すために、unparsed-entity-uri XSLT 関数が使用されます。

 

この機能を使用するには、以下の様に、DTD、XML ドキュメント、SPS ドキュメントを適切に編集する必要があります:

 

1.DTD では、(i) URI と (ii) (エンティティのリソースタイプに StyleVision が指定された)記述により、パースされていないエンティティを宣言する必要があります。
2.XML ドキュメントでは、パースされていないエンティティの名前を与えることにより、エンティティの参照を行う必要があります。
3.SPS では、動的ノードの値をパースされていないエンティティとして適切にアクセス することで イメージハイパーリンク のターゲットとして使用することができます。 .

 

パース去れていないエンティティの宣言と参照と参照

以下に XML ドキュメントの一部を示します。内部 DTD サブセットにはパースされていないエンティティが2つ含まれており、1つには GIF 表記が、もう1つには LNK 表記が含まれています。XML コードにある img/@src ならびに link/@href ノードにて名前を与えることにより、パースされていないエンティティへの参照が行われます。

 

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE Document SYSTEM "UEURIDoc.dtd" [

<!ENTITY Picture SYSTEM "nanonull.gif" NDATA GIF>

<!ENTITY AltovaURI SYSTEM "http://www.altova.com" NDATA LNK>

]>

<document>

   <header>Example of How to Use Unparsed Entity URIs URI</header>

   <para>...</para>

   <img src="Picture"/>

   <link href="AltovaURI">Link to the Altova Website.</link>

</document>

 

パース去れていないエンティティを使用する SPS イメージとハイパーリンク

以下の操作により、 SPS 内でパースされていないエンティ URI を参照するイメージやハイパーリンクを使用することができます:

 

1.メニューオプションの「挿入」から、イメージやハイパーリンクを挿入します。
2.編集ダイアログにて動的タブプロパティを選択し、パースされていないエンティティの名前を含んでいるノードを選択する XPath 条件式を入力します(以下のスクリーンショットを参照)。上の XML ドキュメントサンプルの場合、XPath 条件式には //img/@src ならびに //link/@href ノードを入力することになります。

 

dlg_insert_image

 

3.ダイアログの下部にある「XSLT 変換に対して分析されていないエンティティとして扱う」のチェックボックスにチェックを入れます。これで選択されたノードのコンテンツがパースされていないエンティティとして読み込まれることになります。指定された名前のエンティティが宣言されている場合、そのエンティティに関連付けられている URI が、リソース(イメージまたはハイパーリンク)の指定に使用されます。

 

スタイルシートの処理が行われる際には、エンティティ名に関連付けられる名前がエンティティ名の代わりに使用されます。

 

メモ:URI が相対的な URI となる場合、XSLT プロセッサーにより DTD のベース URI により絶対 URI への展開が行われます。従って、パースされていないエンティティが相対 URI の 'nanonull.gif' により定義されており、DTD が someFolder 以下に配置されている場合、この URI は file:///c:/someFolder/nanonull.gif となります。

 

 

 


(C) 2019 Altova GmbH