完成转换后,我正在尝试删除所有空元素,但是我只是不正确。我有以下 XML
<root>
<record name='1'>
<Child1>value1</Child1>
<Child2>value2</Child2>
</record>
<record name='2'>
<Child1>value1</Child1>
<Child2>value2</Child2>
</record>
<record name='3'>
<Child1>value1</Child1>
<Child2>value2</Child2>
</record>
</root>
我希望输出是
<root>
<record name="1">
<Element>1</Element>
</record>
</root>
但是我也不断得到所有空的记录元素,我不知道如何摆脱它们。
<root>
<record>
<Element>1</Element>
</record>
<record/>
<record/>
</root>
这是我的样式表
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="//record">
<xsl:copy>
<xsl:call-template name="SimpleNode"/>
</xsl:copy>
</xsl:template>
<xsl:template name="SimpleNode">
<xsl:if test="@name = '1'">
<Element><xsl:value-of select="@name"/></Element>
</xsl:if>
</xsl:template>
</xsl:stylesheet>