Kitengo cha <xsl:choose> cha XSLT

Uainishaji na Matumizi

Elementi <xsl:choose> na <xsl:when> na <xsl:otherwise> zingine zingefanya kufikia michezo ya kina zaidi.

Kama haipo <xsl:when> ambao ni true, inafanyiwa kwa mawazo ya <xsl:otherwise>.

Kama haipo <xsl:when> ambao ni true, na haupatikana elementi <xsl:otherwise>, haitueleza mawazo yoyote.

Mtaarifu:Kwa michezo ya kina, tumia elementi <xsl:if> kwa sababu ya kuzingatia.

Maktaba

<xsl:choose>
<!-- Content:(xsl:when+,xsl:otherwise?) -->
</xsl:choose>

Mafano

Hakuna

Mfano

Mifano 1

Maktaba ya ya juu ya 10 yenye mifano ya artisti hivyo:

<?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">
      <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>

Tazama faili ya XML, tazama faili ya XSL, tazama matokeo.

Mfano 2

Ingia kina inayoitwa "color". Kuweka thamani ya kina hii kwa ujumbe wa kina wa hivi kwa muundo wa color. Ikiwa kina hivi kina haukuwa na muundo wa color, thamani ya color ni "green":

<xsl:variable name="color">
  <xsl:choose>
    <xsl:when test="@color">
      <xsl:value-of select="@color"/>
    </xsl:when>  
    <xsl:otherwise>green</xsl:otherwise>
  </xsl:choose>
</xsl:variable>