<xsl:sort>によるソートの練習2(<xsl:apply-templates>で使う)

1つ前のソートのサンプルは<xsl:for-each>で行ったが、このサンプルでは <xsl:apply-templates>でソートしている。<xsl:sort>を<xsl:apply-templates>の 子要素として指定していることに注目。
【sample026.xml】
<?xml version="1.0" encoding="Shift_JIS" ?>
<?xml-stylesheet href="sample026.xsl" type="text/xsl" ?>

<名簿>
	<会員>
		<名前>山田太郎</名前>
		<年齢>58</年齢>
		<性別>男</性別>
	</会員>
	<会員>
		<名前>鈴木一郎</名前>
		<年齢>30</年齢>
		<性別>男</性別>
	</会員>
	<会員>
		<名前>田中花子</名前>
		<年齢>28</年齢>
		<性別>女</性別>
	</会員>
	<会員>
		<名前>吉田啓介</名前>
		<年齢>60</年齢>
		<性別>男</性別>
	</会員>
	<会員>
		<名前>三好恵子</名前>
		<年齢>31</年齢>
		<性別>女</性別>
	</会員>
	<会員>
		<名前>仲川忍</名前>
		<年齢>29</年齢>
		<性別>男</性別>
	</会員>



【sample026.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="名簿">
	<html>
	<head><title>ソートの練習2</title></head>
	<body>
	<h2>ソートの練習2</h2>
		<xsl:apply-templates select="会員">
			<xsl:sort select="年齢" data-type="number" order="ascending"/>
		</xsl:apply-templates>

</body>
	</html>
</xsl:template>

<xsl:template match="会員">
	<p>
	<xsl:value-of select="名前" />
	[<xsl:value-of select="年齢" />]
	<xsl:value-of select="性別" />
	</p>
</xsl:template>

</xsl:stylesheet>


【結果】