RE: [xsl] Tree Fragment versus Node Set

Subject: RE: [xsl] Tree Fragment versus Node Set
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Thu, 15 Sep 2005 19:13:44 +0100
Perhaps your elements are actually namespaced? Just a thought.

Try <xsl:message><xsl:copy-of select="$myVar"/></xsl:message>

Michael Kay
http://www.saxonica.com/ 

> -----Original Message-----
> From: Kevin L. Cobb [mailto:kevin.cobb@xxxxxxxxxxxx] 
> Sent: 15 September 2005 17:43
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: RE: [xsl] Tree Fragment versus Node Set
> 
> Now I have a problem getting values out of my node-set which was
> converted from the tree fragment. 
> 
>    <xsl:variable name="myVar">
>       <xsl:call-template name="buildMyVariableNode">
>          <xsl:with-param name="arg1" select="'test1'"/>
>          <xsl:with-param name="arg2" select="'test2'"/>
>       </xsl:call-template>
>    </xsl:variable>
> 
>    <xsl:value-of
> select="xalan:nodeset($myVar)/result/firstElement/text()"/>
> 
> I get nothing back for the value-of tag. My XML snippet that is the
> nodeset 
> would look something like this:
> 
>    <result>
>       <firstElement>some value</firstElement>
>       <secondtElement>some value</secondElement>
>    </result>
> 
> I've tried variations on the XPATH expression but nothing is working.
> This simply 
> ouput of the nodeset works as expected. 
> 
>    <xsl:value-of select="$myVar"/>
> 
> And also ...
> 
>    <xsl:value-of select="xalan:nodeset($myVar)"/>
> 
> I know I must be missing something simple but I can't seem to 
> see if for the trees. 
> 
> -Kevin
> 
> -----Original Message-----
> From: Michael Kay [mailto:mike@xxxxxxxxxxxx] 
> Sent: Thursday, September 15, 2005 12:15 PM
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: RE: [xsl] Tree Fragment versus Node Set
> 
> > is there a
> > better way to do this?
> 
> No, in 1.0 there isn't. You sometimes need to create result tree
> fragments.
> But don't do it when you don't need to.
> 
> Michael Kay
> http://www.saxonica.com/ 
> 
> > -----Original Message-----
> > From: Kevin L. Cobb [mailto:kevin.cobb@xxxxxxxxxxxx]
> > Sent: 15 September 2005 15:33
> > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> > Subject: [xsl] Tree Fragment versus Node Set
> > 
> > I realize that its always better to form my variables into 
> node-sets 
> > versus tree fragments by using the select attribute 
> whenever possible.
> > But, can one ALWAYS prevent (in XSLT 1.0) making a tree 
> fragment? For 
> > example, if building my variable comes from a template 
> call, is there 
> > a better way to do this?
> > 
> >    <xsl:variable name="myVar">
> >       <xsl:call-template name="buildMyVariableNode">
> >          <xsl:with-param name="arg1" select="'test1'"/>
> >          <xsl:with-param name="arg2" select="'test2'"/>
> >       </xsl:call-template>
> >    </xsl:variable>
> > 
> > -Thanks,
> > 
> > Kevin

Current Thread