xsl-list
[Top] [All Lists]

RE: Problem with Saxon 7.9.1 xsl:variable and selecting additional elements from variable value

2005-10-12 04:05:17

In this situation I can't see why you want to make a copy 
of the original
node. Why not just do:

 <xsl:variable name="thissection" select="../myns:section"/>
In the real environment I do something like:

<xsl:variable name="thissection" >
     <xsl:choose>
         <xsl:when test="../myns:section">
             <xsl:sequence select="../myns:section"/>
         </xsl:when>
         <xsl:when test="../../myns:section">
             <xsl:sequence select="../../myns:section"/>
         </xsl:when>
     </xsl:choose>
</xsl:variable>

with first checking where the matching node exists and then set a 
variable to this to access the subnodes of $thissection.
So, is there is another way to set the original node to $thissection 
variable without the xsl:sequence?

It's not xsl:sequence that's the problem, it's the fact that you are
creating a temporary tree, which always causes nodes to be copied.

You can use

<xsl:variable name="thissection" 
    select="(../myns:section, ../../myns:section)[1]"/>

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



--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--