This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: Re:Confusion about preceding-sibling axis
- To: "Yang" <sfyang at unisvr dot net dot tw>
- Subject: Re: [xsl] Re:Confusion about preceding-sibling axis
- From: Jeni Tennison <mail at jenitennison dot com>
- Date: Tue, 10 Apr 2001 08:14:55 +0100
- CC: xsl-list at lists dot mulberrytech dot com
- Organization: Jeni Tennison Consulting Ltd
- References: <000d01c0c186$e4738bd0$f501800a@hqlab.unisvr>
- Reply-To: xsl-list at lists dot mulberrytech dot com
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
http://www.exslt.org) 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.
Cheers,
Jeni
---
Jeni Tennison
http://www.jenitennison.com/
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list