RE: [xsl] exsl:node-set behaviour with variables

Subject: RE: [xsl] exsl:node-set behaviour with variables
From: "Michael Kay" <michael.h.kay@xxxxxxxxxxxx>
Date: Tue, 22 Oct 2002 14:31:30 +0100
> Hi,
> What happens when a value of a variable is passed to 
> exsl:node-set() ? That is, suppose you have the following XSL 
> fragment:
> 
> <xsl:variable name="nodes">
>     <nodes>
>         <node>node 1</node>
>         <node>node 2</node>
>         <node>node 3</node>
>     </nodes>
> </xsl:variable>
> 
> Name: <xsl:value-of select="local-name(exsl:node-set($nodes))" />
> 
> The result I expect is:
> 
> Name: nodes

exsl:node-set() returns the root node, which is the parent of the
<nodes> element, and which has no name.
> 
> But, with libxslt 1.0.22 processor, I got:
> 
> Name: fake node libxslt

I would expect to see an empty string.
> 
> To get what I want, I have to write:
> 
> Name: <xsl:value-of select="local-name(exsl:node-set($nodes)/*)" />
> 
> really tedious!!!
> 

What would you expect to get if the variable was

> <xsl:variable name="nodes">
      <a/>
>     <nodes>
>         <node>node 1</node>
>         <node>node 2</node>
>         <node>node 3</node>
>     </nodes>
      <z/>
> </xsl:variable>

?

Michael Kay
Software AG
home: Michael.H.Kay@xxxxxxxxxxxx
work: Michael.Kay@xxxxxxxxxxxxxx 


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


Current Thread