我需要一些帮助来转换这个 XML 文档:
<root>
<tree>
<leaf>Hello</leaf>
ignore me
<pear>World</pear>
</tree>
</root>
对此:
<root>
<tree>
<leaf>Hello</leaf>
<pear>World</pear>
</tree>
</root>
该示例已简化,但基本上,我可以删除所有“忽略我”的实例或不在叶子或梨内的所有内容。
我只提出了这个 XSLT 几乎可以复制所有内容:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" encoding="UTF-8" standalone="yes"/>
<xsl:template match="root|tree">
<xsl:element name="{name()}">
<xsl:copy-of select="@*"/>
<xsl:apply-templates/>
</xsl:element>
</xsl:template>
<xsl:template match="leaf|pear">
<xsl:element name="{name()}">
<xsl:copy-of select="child::node()"/>
</xsl:element>
</xsl:template>
</xsl:stylesheet>
我发现如何使用 xsl:call-template 删除叶子或梨元素内的文本,但这不适用于树元素内的内容。
提前致谢。