テンプレートの基本 <xsl:template・・・・>

■XML文書のどのノードにどのような処理を行うかを定義することをテンプレートルール(template rule)という。以下の書式を用いる。

★書式
 <xsl:template match="パターン">
  ・・・テンプレート(パターンにマッチした時の処理内容)を記述
 </xsl:template>

match属性・・・ノードの選択や条件設定の方法を”パターン”という。パターンに合致("パターンにマッチする"という)したノードだけにテンプレートが適用される。パターンは,xPathのロケーションパスのサブセットにあたる。<xPath>を参照
通常はルートノードを指定したパターン<xsl:template match="/">から始める。このテンプレートを基点に、他のテンプレートを順次呼び出していく。 (ルートノードから始めなかった場合どうなるか?。次の「デフォルトテンプレート」参照)

[サンプルルXML文書を表示](下のフレームに)

XMLソース

<?xml version="1.0" encoding="Shift_JIS"?>
<?xml-stylesheet type="text/xsl" href="temp01.xsl"?>
<root>
<top>KodayanHomepageのサイト構成
<pc>
<map>大阪日本橋マップ</map>
<list>大阪日本橋PCショップ一覧</list>
</pc>
<web>
<xm>XMLとは?</xm>
<css>CSSとDynamicHTML</css>
<cgi>PerlでCGI</cgi>
<java_ap>Java Applet</java_ap>
<java_sc>Java Script</java_sc>
<vbscript>VB Script</vbscript>
</web>
<other>
<link>お気に入りLinks</link>
<bbs>掲示板</bbs>
<etc>その他
  <info>お知らせ</info>
  <prof>自己紹介</prof>
  <hist>ホームページの履歴</hist>
</etc>
</other>
</top>
<end>以上です(03/9/20)</end>
</root>

XSLソース

<?xml version="1.0" encoding="Shift_JIS" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="Shift_JIS"/>
<xsl:template match="/">
<xsl:value-of select="root/top/web"/>
</xsl:template>
</xsl:stylesheet>

end(03/9/20)