xsl-list
[Top] [All Lists]

RE: RE: Using not(...a nd ... ) to select nodes

2003-07-10 14:59:06
Exactly.  :)

Chris


-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com 
[mailto:owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com] On Behalf Of 
cknell(_at_)onebox(_dot_)com
Sent: Thursday, July 10, 2003 5:08 PM
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: RE: RE: [xsl] Using not(...a nd ... ) to select nodes


So what you are asking for is an XPath expression that will 
select all the unique <item> nodes (as distinguished by the 
values of their child nodes), correct?

Here is an XML document based on my understanding of your 
question: Based on this, you want an expression which returns 
the first, second, and third <item> nodes, and not the fourth 
and fifth because they are identical to one of the first 
three. Is that right?

<?xml version="1.0" encoding="UTF-8" ?>
<items>
  <item>
    <name>truck</name>
    <type>silverado</type>
    <status>on</status>
  </item>
  <item>
    <name>truck</name>
    <type>silverado</type>
    <status>off</status>
  </item>
  <item>
    <name>truck</name>
    <type>ranger</type>
    <status>on</status>
  </item>
  <item>
    <name>truck</name>
    <type>silverado</type>
    <status>on</status>
  </item>
  <item>
    <name>truck</name>
    <type>silverado</type>
    <status>off</status>
  </item>
</items>
-- 
Charles Knell
cknell(_at_)onebox(_dot_)com - email



-----Original Message-----
From:     "Barak" <barak(_at_)voyager(_dot_)net>
Sent:     Thu, 10 Jul 2003 16:37:25 -0400
To:       <xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com>
Subject:  RE: [xsl] Using not(...a nd ... ) to select nodes

I'm sorry, I wasn't thinking/typing clearly.  There's three 
that are of concern.  There are actually more, but I need to 
select nodes based on those three.

Chris



-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
[mailto:owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com] On Behalf 
Of 
cknell(_at_)onebox(_dot_)com
Sent: Thursday, July 10, 2003 4:06 PM
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: RE: [xsl] Using not(...a nd ... ) to select nodes


You say that each "item" node has three child nodes, yet your
list of items shows four values for each item. Which is correct?
-- 
Charles Knell
cknell(_at_)onebox(_dot_)com - email



-----Original Message-----
From:     "Barak" <barak(_at_)voyager(_dot_)net>
Sent:     Thu, 10 Jul 2003 15:43:01 -0400
To:       <xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com>
Subject:  [xsl] Using not(...a nd ... ) to select nodes

Hello!

I'm fairly new to XSLT and have been trhown in the deep end 
here.  :p

I have a problem I've been beating my head against a wall
over for a couple of days, so now that it's good and bloody 
I've found this mailing list.  

In a nutshell, I have "item" nodes that have three sub nodes:
name, type and status. 

I'm trying to create a node set that only contains different
nodes.  The problem I'm running into is I seem to be losing 
nodes that I shouldn't.

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.

Chris



 XSL-List info and archive:  
http://www.mulberrytech.com/xsl/xsl-list




 
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list






 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list




 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list






 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list