<Document>
<NodeA>1</NodeA>
<NodeB>2</NodeB>
<ServiceNode>3</ServiceNode>
<NodeX>4</NodeX>
</Document>
我需要使用XSLT转换从上面的XML中删除ServiceNode
。转换的输出应该是:
<Document>
<NodeA>1</NodeA>
<NodeB>2</NodeB>
<NodeX>4</NodeX>
</Document>
我已经尝试了this solution和this solution,并且没有得到任何这些工作。输出值始终包含“排除”节点。我该怎么做才能让它发挥作用?
答案 0 :(得分:2)
你没有说出你的XSL是什么样的。因此,我猜它还有另外一个错误?!
使用以下代码,您可以通过应用空模板来消除<ServiceNode>
。
<?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" indent="yes"/>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="ServiceNode"/>
</xsl:stylesheet>