[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: preceding...please help understanding...

Subject: Re: preceding...please help understanding...
From: Mike Brown <mike@xxxxxxxx>
Date: Sat, 7 Sep 2002 12:13:10 -0600 (MDT)
Re:  preceding...please help understanding...
Bill Carter wrote:
> I am having trouble understanding preceding.

What you don't realize about preceding is not affecting your results.
The preceding axis picks up more nodes than preceding-sibling. You
probably want preceding-sibling. Otherwise, if you have something like

<foo>
  <stocks>
    <ticker>ZZZ</ticker>
    <ticker>AAA</sticker>
  </stocks>
  <stocks>
    <ticker>AAA</sticker>
    <ticker>BBB</sticker>
  </stocks>
</foo>

and you start at the BBB ticker, preceding::ticker picks up the first
ZZZ and AAA as well as the immediately preceding AAA. 
preceding-sibling::ticker will get you just the ones you want.

What you're confused about, though, and this is what is skewing your results,
is equality comparisons on node-sets.

$set1 = $set2 is true if any node in $set1 has a string-value equal to the
string-value of any node in $set2.

$set1 != $set2 is true if any node in $set1 has a string-value not equal to
the string-value of any node in $set2. != is very rarely what you want. Use
not() and = instead, like this:

not($set1 = $set2)

...which will be true if no node in $set1 has a string-value equal to the
string-value of any node in $set2.

Similar rules apply if instead of $set1 you have any other object type;
if the operand on the right is a node-set, then the string-value of the left 
operand is compared to the string-value of every node in the node-set.


   - Mike
____________________________________________________________________________
  mike j. brown                   |  xml/xslt: http://skew.org/xml/
  denver/boulder, colorado, usa   |  resume: http://skew.org/~mike/resume/

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


Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.