xsl-list
[Top] [All Lists]

RE: [xsl] Global namespace prefixes (Corrected Examples)

2008-11-13 19:07:10
The crux of my question is this:

Is there a way to get namespace prefix declarations into the root 
element of the result tree through the XSLT API?

With XSLT 2.0, use the xsl:namespace instruction


I'm stuck with XSLT 1.0

You have my deepest sympathy.


With XSLT 1.0, you can use xsl:copy-of to copy a namespace 
node from 
the source document to the result document.

But that only works if the namespace exists in the source document.


There's a workaround here if your processor has the xx:node-set() extension:
you can create an element in the required namespace, and then copy its
namespace nodes:

<xsl:variable name="dummy">
  <xsl:element name="{$prefix}:dummy" namespace="{$uri}"/>
</xsl:variable>
<xsl:copy-of select="xx:node-set($dummy)//namespace::*"/>

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