xsl-list
[Top] [All Lists]

[xsl] Count the node from zero instead of one.

2010-11-26 01:09:07
HI All,

I m counting the node position from this logic in the below sample xml

xml:

<test>
<a>
<b name ='1'></b>
<b name ='2'></b>
<b name ='3'>
<c>aaa</c>
</b>
<b name ='4'>
        <c>bbb</c>
        <c>ccc</c>
</b>
<b name ='4'>
        <c>dddd</c>
        <c>eeee</c>
</b>
</a>
<a>
<b name ='1'></b>
<b name ='2'>
<c>fffff</c>
</b>
<b name ='3'></b>
<b name ='4'>
        <c>gggg</c>
</b>
</a>
</test>

<xsl:template name="CountNode">
                <xsl:param name="node"
select="//b[c[preceding-sibling::c]][not(@name
=preceding::b[child::c]/@name)]/@name"/>
                <xsl:for-each select="$node">
                        <xsl:element name="position">
                                <xsl:number count="*"/>
                                <xsl:text>,</xsl:text>
                        </xsl:element>
                        <xsl:if test="position()!=last()"/>
                </xsl:for-each>
        </xsl:template>

it gives the result 3,4,2,....I want it should count from zero instead
of one and the result shld be 2,3,1.or it can print the result by
subracing 1 from it like 3-1=2.

Please suggest some thing...

Thanks....
Rashi

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>