Subject: AW: [xsl] count Nodes with attributes until... (XSLT 1.0) From: news@xxxxxxxxxxx Date: Wed, 28 Jun 2006 12:10:10 +0200 |
Hi George. Thank you, what a smart idea :) it seems to work fine! Best Regards, Jan -----Urspr|ngliche Nachricht----- Von: George Cristian Bina [mailto:george@xxxxxxxxxxxxx] Gesendet: Mittwoch, 28. Juni 2006 11:34 An: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Betreff: Re: [xsl] count Nodes with attributes until... (XSLT 1.0) You can count the number of following siblings that have the count-me attribute set to yes and remove the nodes to be counted after the first node that does not have a count-me equals with yes attribute: count(following-sibling::*[@count-me='yes'])- count(following-sibling::*[not(@count-me='yes')][1]/following-sibling::*[@co unt-me='yes']) Best Regards, George --------------------------------------------------------------------- George Cristian Bina <oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger http://www.oxygenxml.com news@xxxxxxxxxxx wrote: > Hello List, > > I have to count a number of nodes. Each node that is to be counted has an > attribute 'count-me="yes"' (this is a example :)). But as soon there is a > node which does'nt have such an attribute, or has a attribute > 'count-me="false"' this and all following nodes are not to be counted. The > result value is dependent on the number of the node that is in the focus. > > Example: > <theExampleXMLTree> > <Node count-me="yes"/> > <Node count-me="yes"/> > <Node count-me="yes"/> > <Node/> > <Node count-me="no"/> > <Node count-me="yes"/> > </theExampleXMLTree> > > The value wanted is e.g. 2 when processing the first node. > > ... > > This is how I've tried it so far. The problem here is, that when processing > the first Node I always get the value of 4 (what is quite logical to me). > > <xsl:template natch="Node" mode="counting_example"> > <xsl:variable name="number" select="following-sibling::*[@count-me = > 'yes')]"/> > </xsl:template> > > I also tried: > <xsl:variable name="number" select="following-sibling::*[position() > +1][@count-me = 'yes')]"/> > > But that just counts the next node if it has the matching attribute. > > Let me show what I actually want at the following tabel (using the XML shown > above): > NodeNr.|Value > 1|2 > 2|1 > 3|0 > 4|0 > 5|1 > 6|0 > > Is this possible? and how? > > With best regards, > Jan
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] count Nodes with attribut, Mukul Gandhi | Thread | [xsl] merging two xml files by a ge, Braumüller, Hans |
Re: [xsl] count Nodes with attribut, Mukul Gandhi | Date | [xsl] merging two xml files by a ge, Braumüller, Hans |
Month |