Cíl: Větvit generování výstupu na základě podmínky.
Řešení: Použít do konstrukční části šablony větvení - jednoduché xsl:if nebo vícecestné xsl:choose / xsl:when / xsl:otherwise :
<pecivo>
<rohlik cena="5"> ... </rohlik>
<rohlik cena="2"> ... </rohlik>
<rohlik cena="0.9"> ... </rohlik>
</pecivo>
<xsl:template match="pecivo">
<xsl:for-each select="rohlik">
<p>Rohlík - cena <xsl:value-of select="@cena"/> Kč</p>
</xsl:for-each>
</xsl:template>
Vytvoří element p , do něj vloží info o rohlíku - se zvýrazněním, je-li drahý.
Pozor: Konstrukce xsl:for-each má typicky procedurální charakter, je dobré s ní šetřit. Dává totiž minumum flexibility na obsah iterované množiny uzlů - tj. předem musím vědět, co tam bude.