<xsl:sort>エレメント
<xsl:sort>エレメントは、XMLデータをソートするxsltの機能です。
書き方としては、<xsl:for-each>エレメントの間に<xsl:sort>エレメントを編集します。
<xsl:sort>エレメントの属性
<xsl:sort select="ソート対象のエレメント名" lang={"ソートの言語"} data-type={"text" | "number" | "名前空間接頭辞付きの修飾名"} <!-- 文字列のデータ型 --> order={"ascending" | "descending"} <!-- 昇順、降順 --> case-order={"upper-first" | "lower-first"} <!-- data-typeが"text"のとき、大文字と小文字の優先順位 --> />
Example
<?xml version="1.0" encoding="shift_jis"?> <?xml:stylesheet type="text/xsl" href="sort.xsl"?> <datalist> <data number="1">A</title> <data number="2">B</title> <data number="3">C</title> <data number="4">D</title> </datalist>
<?xml version="1.0" encoding="shift_jis"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <html> <body> <xsl:apply-templates/> </body> </html> </xsl:template> <xsl:template match="datalist"> <h2>test list</h2gt; <ul> <xsl:for-each select="datalist"> <xsl:sort select="./@number" data-type="number" order="ascending"/> <li><xsl:value-of select="."/>(番号:<xsl:value-of select="./@number"/>)</li> </xsl:for-each> </ul> </xsl:template> </xsl:stylesheet>