xsl-list
[Top] [All Lists]

Re: [xsl] Namespace missing after transform

2006-09-08 05:24:42


When I copy it using the following xsl template the xmlns:xs reference
is missing.

If you had copied the element the namespaces woul dhave been copied, but
instead you generated (using xsl:element) a new element of the sam
ename. (The main reason for using xsl:element in this way is to _avoid_
copying namespaces when that is needed:-)

Don't use 

        <xsl:element name="elem">

use 
<xsl:copy>

similarly instead of

        <xsl:attribute name="xsi:type"
                        xmlns:xs="http://www.w3.org/2001/XMLSchema"; 
        
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
                        <xsl:value-of select="@xsi:type"/>
                </xsl:attribute>

You could use
 <xsl:copy-of select="@xsi:type"/>

actually in this case, since you are also copying the content you can
just copy the whole node:

<xsl:template match="elem">
 <xsl:copy-of select="."/>
</xsl:template>
 
David




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