Subject: RE: [xsl] Using not(...a nd ... ) to select nodes From: "Lars Huttar" <lars_huttar@xxxxxxx> Date: Thu, 10 Jul 2003 16:47:55 -0500 |
Wendell, This is something that's been fuzzy in my mind for a while... In order for your code to work, current() in the select expression of a for-each loop must refer to the <item> node currently being tested for whether it gets selected, right? If so, is this the way xsl:for-each / xpath work? I realize that INSIDE the for-each, current() refers to the node currently being processed, but is that also true in the select expression of the for-each? Or does current() there refer to the context node outside the for-each? Thanks, Lars > Chris, > > Try > > select="items/item[not(preceding-sibling::* > [name=current()/name and > type = current()/type and > status = current()/status])]" > > The problem with your statement is it's testing true if there no > corresponding values on any preceding siblings, whereas you > want it to be > true only if there's a preceding sibling with all > corresponding values. I thought the same thing... but if that's the case I can't figure out why he's getting only the second and third items. I would have thought the first one would have been selected since it doesn't have any preceding siblings. Chris wrote: >I'm using the following to select the nodes: > ><xsl:for-each select="items/item[not(name = preceding-sibling::*/name >and type = preceding-sibling::*/type and status = >preceding-sibling::*/status)]"> > > >An example from the XML might be: truck,silverado,chevy,on >truck,silverado,chevy,off truck,ranger,ford,on truck,silverado,chevy,on >truck,silverado,chevy,off > > >From that I want to see the first three in a node set. However, what >I'm getting are the second and third ones. > >Any suggestions would be much appreciated. I think you probably need to do Muenchian grouping using a composite key on name, type, and status. See http://www.dpawson.co.uk/xsl/sect2/N4486.html HTH, Lars XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Using not(...a nd ... ) t, Barak | Thread | RE: [xsl] Using not(...a nd ... ) t, Lars Huttar |
[xsl] XSL/XPath Dynamic sort key, Fett Boba | Date | Re: [xsl] XSL/XPath Dynamic sort ke, David Carlisle |
Month |