xsl-list
[Top] [All Lists]

[xsl] XPath references using exsl:node-set() stop working when default name-space defined.

2007-08-27 19:02:28
Previously working references to nodes stored inside a variable and referenced using the exsl:node-set() function are no longer working properly since I defined a default name-space for my document.

I'm using XSLT 1.0 and the syntax is as below:

  <xsl:template name="document" match="document">
       ...

       <xsl:variable name="args">
           <local-pub-id><xsl:value-of select="./@pub-id" /></local-pub-id>
<local-doc-type><xsl:value-of select="./@type" /></local-doc-type>
           <element-num><xsl:value-of select="./@element" /></element-num>
       </xsl:variable>

       <xsl:value-of select="exsl:node-set($args)/local-pub-id" />
       ...
  </xsl:template>


It works fine when I take out the default name-space declaration but I need to keep that in. I *can* reference the nodes in the variable using the form:

   <xsl:value-of select="exsl:node-set($args)[1]" />

But this is also less than desirable. Do I need to put namespace declarations in the variable node or similar? Using the libxml2 processor.


Hope you can help,

Matt

--~------------------------------------------------------------------
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>
--~--

<Prev in Thread] Current Thread [Next in Thread>