Subject: Re: [xsl] position() in xsl:for-each From: Vidar Ramdal <vramdal@xxxxxxxxx> Date: Fri, 9 Jul 2004 11:26:10 +0200 |
On Fri, 09 Jul 2004 12:03:13 +0300, George Cristian Bina <george@xxxxxxx> wrote: > > <objects> > > <object name="name1" type="type1">data1</object> > > <object name="name2" type="type1">data2</object> > > <object name="name3" type="type1">data3</object> > > <object name="name4" type="type1">data4</object> > > <object name="name5" type="type2">data5</object> > > </objects> > > > <xsl:for-each select="object[@type='type1'][position() mod 2 = 1]"> will > not select <object name="name4" type="type1">data4</object> as the > context node. If you add a new type1 object before name5: > > <objects> > <object name="name1" type="type1">data1</object> > <object name="name2" type="type1">data2</object> > <object name="name3" type="type1">data3</object> > <object name="name4" type="type1">data4</object> > <object name="nameX" type="type1">dataX</object> > <object name="name5" type="type2">data5</object> > </objects> > > then <object name="nameX" type="type1">dataX</object> will be selected > as the context node and you will get data5 in the output. The > following-sibling axis selects the following siblings of the context > node. See http://www.w3.org/TR/xpath#axes Thank you for clarifying this. Just to be sure I got it right: What you're saying is that position() is relative to a node in the input (original) XML tree, not to the nodes that I select with xsl:for-each. Correct? Does the same behaviour apply if I had used xsl:apply-templates instead of xsl:for-each? -- Vidar S. Ramdal "Fighting for peace is like fucking for virginity"
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] position() in xsl:for-eac, George Cristian Bina | Thread | Re: [xsl] position() in xsl:for-eac, David Carlisle |
[xsl] FO error, Ranjan K. Baisak | Date | Re: [xsl] position() in xsl:for-eac, Vidar Ramdal |
Month |