Subject: Re: [xsl] Selection of every second node From: Jeni Tennison <mail@xxxxxxxxxxxxxxxx> Date: Tue, 21 Aug 2001 13:03:13 +0100 |
Hi Conny, > I hope you can help me. How can I make a template that match with > every second node? You need to test the position() of the node element amongst the other node elements in its parent root element. Fortunately, this is what the match pattern does by default. You can look at the position() mod 2 to find the even node elements - if it equals 0 then the node element is an even node. So try: <xsl:template match="node[(position() mod 2) = 0]"> ... </xsl:template> or: <xsl:template match="node[not(position() mod 2)]"> ... </xsl:template> Alternatively, you could have a template that matched all node elements, but only apply templates to every second node element, with: <xsl:apply-templates select="node[not(position() mod 2)]" /> Cheers, Jeni --- Jeni Tennison http://www.jenitennison.com/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Selection of every second nod, Conny Kreyßel | Thread | Re: [xsl] Selection of every second, Heiko Rupp |
RE: [xsl] get the name of a node wh, KIENLE, STEVEN C [IT | Date | Re: [xsl] Selection of every second, Heiko Rupp |
Month |