XSLT <xsl:sort>要素
XSLT 要素リファレンス
定義と使い方
<xsl:sort> 要素は出力結果を並べ替えるために使用します。
注意:<xsl:sort> は常に <xsl:for-each> または <xsl:apply-templates> の内部に置かれます。
構文
<xsl:sort
select="expression"
lang="language-code"
data-type="text|number|qname"
order="ascending|descending"
case-order="upper-first|lower-first"/>
lang="language-code"
data-type="text|number|qname"
order="ascending|descending"
case-order="upper-first|lower-first"/>
属性
| 属性 | 值 | 説明 |
|---|---|---|
| select | XPath-expression | 任意。ノードの並べ替えキーを指定します。つまり、どのノードまたはノードセットに基づいて並べ替えるかを指定します。 |
| lang | language-code | 任意。並べ替えに使用する言語を指定します。 |
| data-type | text number qname |
任意。並べ替え対象データのデータ型を指定します。デフォルトは "text" です。 |
| order | ascending descending |
任意。並べ替え順序を指定します。デフォルトは "ascending" です。 |
| case-order | upper-first lower-first |
任意。大文字のアルファベット順と小文字のアルファベット順のどちらを先にして並べ替えるかを指定します。 |
例
次の例では、artist をキーとして並べ替えます:
例
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2>My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-each select="catalog/cd">
<xsl:sort select="artist"/>
<tr>
<td><xsl:value-of select="title"/></td>
<td><xsl:value-of select="artist"/></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2>My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-each select="catalog/cd">
<xsl:sort select="artist"/>
<tr>
<td><xsl:value-of select="title"/></td>
<td><xsl:value-of select="artist"/></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
試してみる »
XSLT 要素リファレンス その他の拡張