Re: [xsl] Re:Confusion about preceding-sibling axis

Subject: Re: [xsl] Re:Confusion about preceding-sibling axis
From: Jeni Tennison <mail@xxxxxxxxxxxxxxxx>
Date: Tue, 10 Apr 2001 08:14:55 +0100
Hi Yang,

> When I follow your solution example,
> I have to use msxsl:node-set  in the for-each element
>     <xsl:for-each select="exsl:node-set($item_list)">.

Yes - that's because you're using MSXML.  I have to use
saxon:node-set() because I'm using Saxon.  The node-set() function is
a common function, but each processor has a different namespace for
it.  One of the aims of the EXSLT initiative (see is to get a *common* namespace for *common*
functions like this.

[I'm going to start using exsl or the other EXSLT namespace prefixes
when talking about these functions to promote EXSLT and to indicate
that just 'cos I talk about saxon:node-set() etc. doesn't mean that
you *have* to use Saxon to get the node-set() function - your
processor might well have an equivalent that you can use.]

> However to get a resonable output,  I have to  add ** /item**  to the
> node-set function ,  i.e.,
>     <xsl:for-each select="msxsl:node-set($item_list)/item">
> Is it  the difference between using exsl and  RTF node-set function?

No - it's the difference between being awake when answering XSLT
questions and being asleep :)  The exsl:node-set() function works in
the same way as the processor-specific extensions, returning a node
set consisting of the root node of the RTF.  Sorry for the confusion.



Jeni Tennison

 XSL-List info and archive:

Current Thread