Namespaces declared in the source document or in the stylesheet propagate to the output even if they are not used in the output.
|
XSLT
<xsl:stylesheet xmlns:o="oooooo" xmlns:s="ssssss" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0"> <xsl:output method="xml" indent="yes" omit-xml-declaration="yes"/> <xsl:template match="/aaa"> <zzz> <xsl:apply-templates select="*"/> </zzz> </xsl:template> <xsl:template match="*"> <xsl:copy-of select="."/> </xsl:template> </xsl:stylesheet> |
|
|
XML
<aaa xmlns:o="oooooo" xmlns:p="pppppp" xmlns:v="vvvvvv"> <o:bbb/> <o:ddd/> </aaa> |
Output
<zzz xmlns:o="oooooo" xmlns:s="ssssss"> <o:bbb xmlns:p="pppppp" xmlns:v="vvvvvv"/> <o:ddd xmlns:p="pppppp" xmlns:v="vvvvvv"/> </zzz> |
| Previous chapter: | Multiple Outputs |
| Next chapter: | Keys |
| Previous page: | Matching all elements in selected namespace |
| Next page: | Removal of unwanted namespace declarations |