[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Count the node from zero instead of one.
In XSLT 2.0 you may try to do something like below, <xs:function name="func:myNumber" as="xs:positiveInteger"> <xsl:param name="nodePattern" as="node()*" /> <xsl:variable name="num" as="xs:positiveInteger"> <xsl:number count="$nodePattern"/> </xsl:variable> <xsl:sequence select="$num - 1" /> </xs:function> and replace following in your code: <xsl:element name="position"> <xsl:number count="*"/> <xsl:text>,</xsl:text> </xsl:element> with <position> <xsl:value-of select="func:myNumber(*)" /> <xsl:text>,</xsl:text> </position> you would have to bind the function namespace prefix "func:" to an appropriate URI. This is not tested. On Fri, Nov 26, 2010 at 12:38 PM, Rashi Bhardwaj <rashi.bhardwaj@xxxxxxxxx> wrote: > 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'> > B B B B <c>bbb</c> > B B B B <c>ccc</c> > </b> > <b name ='4'> > B B B B <c>dddd</c> > B B B B <c>eeee</c> > </b> > </a> > <a> > <b name ='1'></b> > <b name ='2'> > <c>fffff</c> > </b> > <b name ='3'></b> > <b name ='4'> > B B B B <c>gggg</c> > </b> > </a> > </test> > > <xsl:template name="CountNode"> > B B B B B B B B <xsl:param name="node" > select="//b[c[preceding-sibling::c]][not(@name > =preceding::b[child::c]/@name)]/@name"/> > B B B B B B B B <xsl:for-each select="$node"> > B B B B B B B B B B B B <xsl:element name="position"> > B B B B B B B B B B B B B B B B <xsl:number count="*"/> > B B B B B B B B B B B B B B B B <xsl:text>,</xsl:text> > B B B B B B B B B B B B </xsl:element> > B B B B B B B B B B B B <xsl:if test="position()!=last()"/> > B B B B B B B B </xsl:for-each> > B B B B </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 -- Regards, Mukul Gandhi
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|