> You should add an extra stylesheet that removes superfluous namespace
> attributes. This is what I've done:
I used to use this strategy as well, though recently I replaced this xsl
transformer with a custom StripNameSpacesTransformer (about just 10 lines),
which outperforms the slow xsl transformation a factor 30 for small xml docs,
over hundreds of times for bigger xml docs. I am not sure if it is already
available in cocoon in some transformer.
If somebody is interested in the code, I can attach it,
Regards Ard
>
> <xsl:template match="*">
> <!-- remove element prefix (if any) -->
> <xsl:element name="{local-name()}">
> <!-- process attributes -->
> <xsl:for-each select="@*">
> <!-- remove attribute prefix (if any) -->
> <xsl:attribute name="{local-name()}">
> <xsl:value-of select="."/>
> </xsl:attribute>
> </xsl:for-each>
> <xsl:apply-templates/>
> </xsl:element>
> </xsl:template>
>
> Add a generic catchall template or you end up with nothing:
>
> <!-- ========================================= -->
> <!-- generic catchall template -->
> <!-- ========================================= -->
> <xsl:template match="text()">
> <xsl:copy>
> <xsl:apply-templates select="text()"/>
> </xsl:copy>
> </xsl:template>
>
>
> HTH
>
> Bye, Helma
>
>