XSLT 7章 出力とスタイルシートの結合
- 7.1 出力
- 7.2 スタイルシートのインクルード
- 7.3 スタイルシートのインポート
- 7.4 スタイルシートの埋め込み
7.4 スタイルシートの埋め込み
通常の場合、XSLT スタイルシートは、ルート要素として xsl:stylesheet 要素を持つ完全な XML 文書であることが多いですが、XSLT スタイルシートを別の XML 文書の一部として埋め込むこともできます。この埋め込みが容易にできるように xsl:stylesheet 要素には、ユニークな識別子を示す ID 型の属性を指定できます。
xml-stylesheet 処理命令の URI リファレンスには、xsl:stylesheet 要素の位置を特定する、フラグメント識別子を備えた参照 URI を使用します。 また、通常スタイルシート自身をソース文書として処理することはないでしょうから、ソース文書とスタイルシートが埋め込まれている XML 文書が同じ場合は、以下のような記述が必要になります。
<xsl:template match="xsl:stylesheet"></xsl:template>
以下にスタイルシートの埋め込みの例を示します。
<?xml-stylesheet type="text/xml" href="#style1"?>
<!DOCTYPE doc SYSTEM "doc.dtd">
<doc>
<head>
<xsl:stylesheet id="style1"
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:import href="doc.xsl"/>
<xsl:template match="/">
...
</xsl:template>
<xsl:template match="xsl:stylesheet">
<!-- ignore -->
</xsl:template>
</xsl:stylesheet>
...
</doc>

