【发布时间】:2016-07-08 20:49:11
【问题描述】:
我看到了奇怪的行为,奇怪的意思是它的行为与我们通常的情况相反。 以下是详细信息:
XSLT 代码
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:template match="child[@include='1']"/>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
源 XML
<?xml version="1.0" encoding="UTF-8"?>
<Parent>
<child include='1'>
<Attribute>Attribute1</Attribute>
</child>
<child include='1'>
<Attribute>Attribute2</Attribute>
</child>
<child include='0'>
<Attribute>Attribute3</Attribute>
</child>
<child include='0'>
<Attribute>Attribute4</Attribute>
</child>
</Parent>
我的结果是:
<Parent>
<child include="0">
<Attribute>Attribute3</Attribute>
</child>
<child include="0">
<Attribute>Attribute4</Attribute>
</child>
</Parent>
根据正常情况我们应用的结果应该如下根据条件
<xsl:template match="child[@include='1']"/>
<Parent>
<child include="1">
<Attribute>Attribute3</Attribute>
</child>
<child include="1">
<Attribute>Attribute4</Attribute>
</child>
</Parent>
希望我已经详细解释了: 这是代码和 xslt 处理器的链接:Sample Code
【问题讨论】:
标签: xslt transform xslt-2.0 identity