|
Subject: [xsl] Nestled <xsl:choose> From: "dante" <dante@xxxxxxxxxxxxx> Date: Sat, 14 Jul 2001 15:16:28 +0800 |
I'm trying to create a testing structure to assign a different template
depending on the content of the element attributes "variant" & "style".
in pseudo code:
---------------------------------
if variant = book
then
if style = fiction
use fiction template
else
use non-fiction template
endif
elseif variant = graphic novel
use graphic novel template
elseif variant = magazine
use magazine template
else
show error massage
endif
---------------------------------
Is this possible in xsl?
Or should I create a separate template to test the "fiction" attribute.
Here's the xsl code that I'm using.
<!--CHECK VARIANT-->
<xsl:attribute name="variant">
<xsl:choose>
<!--BOOK VARIANT-->
<xsl:when test="variant = 'Book'">
<!--CHECK STYLE-->
<xsl:attribute name="style">
<xsl:choose>
<!--FICTION STYLE-->
<xsl:when test="style = 'Fiction'">
<xsl:for-each select="fiction">
<xsl:apply-templates select="." />
</xsl:for-each>
</xsl:when>
<!--END FICTION STYLE-->
<!--NON-FICTION STYLE-->
<xsl:otherwise>
<xsl:for-each select="non-fiction">
<xsl:apply-templates select="." />
</xsl:for-each>
</xsl:otherwise>
<!--END NON-FICTION STYLE-->
</xsl:choose>
</xsl:attribute>
<!--END CHECK STYLE-->
<!--END BOOK VARIANT-->
</xsl:when>
<!--GRAPHIC_NOVEL VARIANT-->
<xsl:when test="variant = 'Graphic_Novel'">
<xsl:for-each select="graphic_novel">
<xsl:apply-templates select="." />
</xsl:for-each>
</xsl:when>
<!--END GRAPHIC_NOVEL VARIANT-->
<!--MAGAZINE VARIANT-->
<xsl:when test="variant = 'Magazine'">
<xsl:for-each select="magazine">
<xsl:apply-templates select="." />
</xsl:for-each>
</xsl:when>
<!--END MAGAZINE VARIANT-->
<!--ERROR TRAP-->
<xsl:otherwise>
<xsl:text>Error</xsl:text>
</xsl:otherwise>
<!--END ERROR TRAP-->
</xsl:choose>
</xsl:attribute>
<!--END CHECK VARIANT-->
Thanks,
Oliver
p.s. does this list have a tip harvester or something similar?
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| [xsl] Using name() with XPath expre, Jenny Simpson | Thread | Re: [xsl] Nestled <xsl:choose>, Jeni Tennison |
| [xsl] Using name() with XPath expre, Jenny Simpson | Date | [xsl] Re: XSL-List Digest V3 #915, Alexey Skoblikov |
| Month |