Re: [xsl] Saxon Quirk

Subject: Re: [xsl] Saxon Quirk
From: David Carlisle <davidc@xxxxxxxxx>
Date: Wed, 14 Feb 2001 16:06:04 GMT
Maybe I'm just confused but I'd have expected you to get no output at
all.


You have 

select="//pubtag[@list='yes']/@pub
    [not(.=preceding::pubtag[@list='yes']/@pub)]" 


first
  //pubtag[@list='yes']/@pub
so now the current node list consists of pub attribute nodes of
pubtag nodes with the list attribute being yes.

now in 

.=preceding::pubtag[@list='yes']/@pub

. is the pub attribute node. The preceding axis from an attribute
includes its parent so there is always a node in the node set 
preceding::pubtag[@list='yes']/@pub with string value equal to 
the string value of . (namely the current node again)

so that's always true and not() that is always false.

so I thought you were selecting a node list including the filter
[false()] which would be an empty node set.

But looks like neither msxml nor saxon agree with me.

David

_____________________________________________________________________
This message has been checked for all known viruses by Star Internet delivered
through the MessageLabs Virus Control Centre. For further information visit
http://www.star.net.uk/stats.asp

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


Current Thread