|
Subject: RE: [xsl] Removing namespace attributes From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Thu, 22 Sep 2005 12:59:52 +0100 |
exclude-result-prefixes only affects the namespaces created using literal
result elements. It has no effect on namespaces copied from the source
document using xsl:copy or xsl:copy-of.
XSLT 2.0 provides a copy-namespaces=yes|no attribute on these instructions.
In 1.0 you have to switch from using xsl:copy to using an modified-identity
template with xsl:element name="{local-name()}".
Rather than this:
<xsl:template match="@* | node()">
> <xsl:if test="name()!='xlink:href'">
> <xsl:copy>
> <xsl:apply-templates select="@* | node()" />
> </xsl:copy>
> </xsl:if>
> </xsl:template>
it's much cleaner to do this:
<xsl:template match="@* | node()">
<xsl:copy>
<xsl:apply-templates select="@* | node()" />
</xsl:copy>
</xsl:template>
<xsl:template match="@xlink:href"/>
Apart from anything else, it doesn't depend on the document author's choice
of namespace prefix.
Michael Kay
http://www.saxonica.com/
> -----Original Message-----
> From: Hank Ratzesberger [mailto:hankr@xxxxxxxxxxxxxxxx]
> Sent: 22 September 2005 01:31
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] Removing namespace attributes
>
> I want to strip all namespaces and one
> attribute (declared in the namespace).
>
> In my stylesheet, I declare the namespaces
> and then list them in the exclude-result-prefixes.
> But it doesn't work. The namespaces remain.
>
> Thank you for your ideas,
> Hank
>
> Hank Ratzesberger
> NEES Programmer
> Institute for Crustal Studies
> University of California, Santa Barbara
>
>
> <xsl:stylesheet version="1.0"
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
> xmlns:flextps="http://flextps.org/schema/"
> xmlns:xlink="http://www.w3.org/1999/xlink"
> exclude-result-prefixes="flextps">
> <xsl:template match="@* | node()">
> <xsl:if test="name()!='xlink:href'">
> <xsl:copy>
> <xsl:apply-templates select="@* | node()" />
> </xsl:copy>
> </xsl:if>
> </xsl:template>
> </xsl:stylesheet>
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] Removing namespace attrib, Jonas Lundberg | Thread | [xsl] Newbee, vijay thakre |
| Re: [xsl] Wath is the opposite of t, António Mota | Date | Re: [xsl] Wath is the opposite of t, António Mota |
| Month |