0
我試圖複製當前節點下使用<xsl:copy-of select="." />
存在的所有節點,並且它也複製了存在於根節點中的名稱空間。 如何避免這種情況?<xsl:copy-of複製存在於根節點中的名稱空間。如何避免這種情況?
我試圖複製當前節點下使用<xsl:copy-of select="." />
存在的所有節點,並且它也複製了存在於根節點中的名稱空間。 如何避免這種情況?<xsl:copy-of複製存在於根節點中的名稱空間。如何避免這種情況?
如果名稱空間不需要,那麼在XSLT 2.0中,您可以使用<xsl:copy-of select="." copy-namespaces="no"/>
。但是請注意,這隻會消除未使用的名稱空間節點;它不會更改任何元素或屬性的名稱空間。如果您希望副本中的元素或屬性位於與原始副本不同的名稱空間中,則需要按照以下方式執行遞歸淺度副本:
<xsl:template match="*">
<xsl:element name="{local-name()}" namespace="new-namespace">
<xsl:apply-templates/>
</xsl:element>
</xsl:template>