<xsl:choose>要素は、と組み合わせて使用され<xsl:when>と<xsl:otherwise>複数の条件付きテストを発現すること。
<xsl:choose>要素
構文
<xsl:choose>
<xsl:when test=" WHERE条件を選択して置くために XMLファイルに対して複数の条件のテストを挿入するには、追加します。<xsl:選択>、<のxsl:とき>、および<xsl:otherwise> XSLファイルの要素:
例
<?xml version="1.0" encoding="UTF-8"?>
<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">
<tr>
<td><xsl:value-of select="title"/></td>
<xsl:choose>
<xsl:when test="price > 10">
<td bgcolor="#ff00ff">
<xsl:value-of select="artist"/></td>
</xsl:when>
<xsl:otherwise>
<td><xsl:value-of select="artist"/></td>
</xsl:otherwise>
</xsl:choose>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
»それを自分で試してみてください 上記のコードは、に、ピンクの背景色を追加します"Artist" CDの価格は10よりも高い場合に列。
もう一つの例
ここでは、2つ含まれているもう一つの例です<xsl:when>要素は:
例
<?xml version="1.0" encoding="UTF-8"?>
<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">
<tr>
<td><xsl:value-of select="title"/></td>
<xsl:choose>
<xsl:when test="price > 10">
<td bgcolor="#ff00ff">
<xsl:value-of select="artist"/></td>
</xsl:when>
<xsl:when test="price > 9">
<td bgcolor="#cccccc">
<xsl:value-of select="artist"/></td>
</xsl:when>
<xsl:otherwise>
<td><xsl:value-of select="artist"/></td>
</xsl:otherwise>
</xsl:choose>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
»それを自分で試してみてください 上記のコードはピンクに背景色を追加する"Artist" CDの価格が9より高く、低い又は10に等しいときCDの価格が10よりも大きい場合、列、および灰色の背景色。