RE: [xsl] 1 + 1 = 11

Subject: RE: [xsl] 1 + 1 = 11
From: "Gosselin, Michael" <Michael.Gosselin@xxxxxxxxxxxxxxxxxxxxx>
Date: Tue, 18 Apr 2006 13:31:47 -0400
I'm trying to remember, but isn't "+" used for concatenation?  So, yes,
1+1=11.

Isn't there an increment() function, or an add() function, somewhere? 

Michael

> -----Original Message-----
> From: Eric White [mailto:eric.white@xxxxxxxxxxx] 
> Sent: Tuesday, April 18, 2006 1:19 PM
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] 1 + 1 = 11
> 
> What am I missing?  I define a parameter, get the highest 
> existing row number and I want to add a value to it -- so I 
> can add the next table row with a new index.  I get the index 
> value correctly, but when I add one (1) to it, I get  the 
> string "11", rather than the number 2. Note that I 
> specifically set the param to a number via the number() function. 
> I've also tried using the number() function inside the select 
> attribute of the apply-templates element, trying to coerce 
> the result, but to no avail.
> 
> <xsl:template match="ntpServerTable">
>    <xsl:param name="rowindex">
>       <xsl:for-each select="ntpServerTableRow">
>          <xsl:sort select="ntpServerTableRowIndex" data-type="number" 
> order="descending" />
>         <xsl:choose>
>            <xsl:when test="position() = 1">
>              <xsl:value-of select="number(ntpServerTableRowIndex)"/>
>           </xsl:when>
>           <xsl:otherwise>0</xsl:otherwise>
>        </xsl:choose>
>      </xsl:for-each>
>    </xsl:param>
>    <xsl:apply-templates select="ntpServerTableRow"/>
>    <ntpServerTableRowIndex><xsl:value-of
> select="$rowindex+1"/></ntpServerTableRowIndex>

Current Thread