1. <xsl:sort> ソート
<xsl:for-each> と組み合わせ、ループ内のデータを並び替えます。
構文ルール
- 配置ルール:
<xsl:for-each>の内部、出力処理より前に記述してください。 select="フィールド名":並び替えの基準となるノードを指定します。- 既定は昇順。
order="descending"を追加すると降順になります。
例:生徒を年齢の昇順で並べる
<xsl:for-each select="class/student">
<xsl:sort select="age"/>
<li><xsl:value-of select="name"/>;<xsl:value-of select="age"/></li>
</xsl:for-each>Code language: HTML, XML (xml)
降順の記述:
<xsl:sort select="age" order="descending"/>Code language: HTML, XML (xml)
2. <xsl:if> 単一条件判定
条件が成立した場合のみ内容を出力します。else 分岐は存在しません。
<xsl:if test="条件式">
条件を満たしたときに表示する内容
</xsl:if>Code language: HTML, XML (xml)
重要:test 属性内では、大なり記号 > は >、小なり記号 < は < に置き換えてください。
例:身長が160より大きい生徒を抽出
<xsl:for-each select="class/student">
<xsl:sort select="age"/>
<xsl:if test="height > 160">
<li><xsl:value-of select="name"/>;<xsl:value-of select="age"/></li>
</xsl:if>
</xsl:for-each>Code language: HTML, XML (xml)
条件判定とソート