Subject: RE: [xsl] Choose-When-Otherwise Nesting Problem From: "Michael Kay" <mhkay@xxxxxxxxxxxx> Date: Wed, 21 Feb 2001 18:28:43 -0000 |
Could you give some indication of the structure of your source document? Also, I can't see any difference between the processing for odd-numbered and even-numbered rows, have I missed something? Mike Kay > At the moment, we're trying to become familiar with how to > nest XSL commands. In > the example I've attached below, we want to take an incoming > stream of XML and > display text depending upon what the incoming MaxAmount and > MinAmount values > are. If a particular alert is associated with a MaxAmount or > a MinAmount, we > want to display it. If both MaxAmount and MinAmount are null, > we want to display > "Any Change". This process is repeated for all the incoming > alerts with the > output format being altered (by the outermost choose > condition) to display > alternating background colors in the output list. > > When we actually try this, the very first MaxAmount or > MinAmount is displayed. > But if the first value is a MaxAmount (for example), no > subsequent MinAmounts > will appear. By the same token, if the first value is a > MinAmount, no MaxAmounts > will appear. And even if all of the MaxAmount and MinAmount > input is null, the > choose statement will never make it down to the otherwise > branch that should > display "Any Change". > > We must be nesting these commands in the wrong order, causing > the process to > 'stick' on the first MaxAmount or MinAmount. But we don't see > a clear solution. > > Any help would be appreciated. > > Thanks! > > Scott > ============================================================== > ========== > <table> > <xsl:for-each > select="transaction/alertDefinitionGroup/alertDefinition"> > <xsl:choose> > <xsl:when test="position() mod 2> 0"> > <TR> > <TD> > <xsl:choose> > <xsl:when test="MaxAmount!='null'"> > > $<xsl:value-of select="MaxAmount" /> > </xsl:when> > <xsl:when test="MinAmount!='null'"> > < $<xsl:value-of select="MinAmount" /> > </xsl:when> > <xsl:otherwise>Any Change</xsl:otherwise> > </xsl:choose> > </TD> > </TR> > </xsl:when> > <xsl:otherwise> > <TR> > <TD> > <xsl:choose> > <xsl:when test="MaxAmount!='null'"> > > $<xsl:value-of select="MaxAmount" /> > </xsl:when> > <xsl:when test="MinAmount!='null'"> > < $<xsl:value-of select="MinAmount" /> > </xsl:when> > <xsl:otherwise>Any Change</xsl:otherwise> > </xsl:choose> > </TD> > </TR> > </xsl:otherwise> > </xsl:choose> > </xsl:for-each> > </table> > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Choose-When-Otherwise Nesting, Scott Downie | Thread | RE: [xsl] Choose-When-Otherwise Nes, Scott Downie |
Re: [xsl] xsl:choose / xsl:when pro, Tony Graham - Sun Ir | Date | RE: [xsl] Q on xsl:choose, Clapham, Paul |
Month |