Elementi ya <xsl:choose> ya XSLT

Ina kifaa cha XSLT <xsl:choose> kinatumia kufungua <xsl:when> na <xsl:otherwise> kuonekana tukio kwa kifaa kina kipengele.

<xsl:choose> element

kiingiliana

<xsl:choose>
  <xsl:when test="ingiza">
    ... kutumika ...
  </xsl:when>
  <xsl:otherwise>
    ... kutumika ...
  </xsl:otherwise>
</xsl:choose>

Mwiko wa masharti ya chaguo

Ili kuongeza mawazo ya kina ya ujumbe kwa faili ya XML, ingia <xsl:choose>, <xsl:when> na <xsl:otherwise> katika faili ya XSL:

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

Maktaba hii ya kifaa kimeingia kwenye orodha ya 'Artist' na rangi ya mweupe kama ujauzito wa kifaa kilichotengana na 10.

Matokeo ya kuharibika hupatikana kama hii:

Angalia faili hii ya XML,Angalia faili hii ya XSL,Angalia matokeo.

Mfano mwingine

Hiiyo hili ni mtaani wa <xsl:when> kwa sasa:

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

Maktaba hii itaharibika kama hii kama jipya la CD ni kikilo cha 10, itakataa rangi ya kijani kwenye kina la "Artist", na itakataa rangi ya kijani kwenye kina la "Artist" kama jipya la CD ni kikilo cha 9 na kikilo cha 10.}

Matokeo ya kuharibika hupatikana kama hii:

Angalia faili ya XML hii,Angalia faili ya XSL hii,Angalia matokeo.