スタイルシート変換言語 XSLT

<xsl:apply-templates>の解説です。  スタイルシート変換言語 XSLTリファレンス 

<xsl:apply-templates>

<xsl:apply-templates 
select="node-set-expression" 
mode="qname"/>
xsl:apply-templatesは、xsl:template要素で指定されたルートノード下の子要素に さらにテンプレートルールを適用させる事を意味しています。
select属性を使用すると処理すべきノードを指定する事ができます。
select属性がない場合、テンプレートルールの適用は 、xsl:templateで指定されたルートノード下の全ての子が対象となります。
zipファイル 以下のサンプルをダウンロード(ZIP圧縮)
■ aaa.xml
<?xml version="1.0" encoding="Shift_JIS"?>
<?xml-stylesheet type="text/xsl" href="bbb.xsl"?>

<doc>
<name>スタイルシート変換言語 XSLT</name>
<des>XML文書を別の形式に変換する為の XSLT要素別簡易リファレンス</des>
</doc>
■ bbb.xsl
<?xml version="1.0" encoding="Shift_JIS"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/"> 
<xsl:apply-templates/>
</xsl:template> 

<xsl:template match="doc"> 
<html>
<body>
<xsl:apply-templates/>
</body>
</html>
</xsl:template>

<xsl:template match="name"> 
<h1><xsl:value-of select="."/></h1>
</xsl:template> 

<xsl:template match="des"> 
<p><xsl:value-of select="."/></p>
</xsl:template> 

</xsl:stylesheet>
サンプル
XSLT要素一覧
+ <xsl:apply-imports>
+ <xsl:apply-templates>
+ <xsl:attribute>
+ <xsl:attribute-set>
+ <xsl:call-template>
+ <xsl:comment>
+ <xsl:copy>
+ <xsl:copy-of>
+ <xsl:decimal-format>
+ <xsl:element>
+ <xsl:fallback>
+ <xsl:for-each>
+ <xsl:if>
+ <xsl:import>
+ <xsl:include>
+ <xsl:key>
+ <xsl:message>
+ <xsl:namespace-alias>
+ <xsl:number>
+ <xsl:otherwise>
+ <xsl:output>
+ <xsl:param>
+ <xsl:preserve-space>
+ <xsl:processing-instruction>
+ <xsl:sort>
+ <xsl:strip-space>
+ <xsl:stylesheet>
+ <xsl:template>
+ <xsl:text>
+ <xsl:value-of>
+ <xsl:variable>
+ <xsl:when>
+ <xsl:with-param>