Subject: RE: preceeding sibling on a first node
From: "Michael Kay" <mhk@xxxxxxxxx>
Date: Sun, 8 Feb 2004 16:11:46 -0000
|
>
> What does a preceeding sibling check return in the
> first child node position?
The preceding-sibling axis returns the empty node-set if the context
node has no preceding siblings.
>
> Here's an xml snippet
>
> ------------------------------------------
> <LOG>
> <DIRECT>
> <LOCATION_ID> 24 </LOCATION_ID>
> <TARGET_CHARACTER_LOCATION_ID> 2799
> </TARGET_CHARACTER_LOCATION_ID>
> <MESSAGE> hello </MESSAGE>
> </DIRECT>
>
> <xsl:variable name="vNumNotSame"
> select="count(LOG/*[number(LOCATION_ID) !=
>
> number(TARGET_CHARACTER_LOCATION_ID) and
>
> preceding-sibling::*[1]/MESSAGE !=
> MESSAGE])"/>
>
Try using not(A=B) in place of A!=B. In the case where A is an empty
node-set, the first expression is true, while the second is false. (But
I haven't analyzed your code deeply enough to be confident this is the
problem).
Michael Kay
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|