如何检查父项中的标签是否相等,然后检查标签是否为空?

时间:2014-08-11 08:04:48

标签: xslt

考虑以下示例:

<parent>
<child1/>
<child1_old/>
<child2/>
<child2_old/>
</parent>

我需要检查每个孩子是否有_old标签。我该怎么做? 如果_old标记是Null值。 我应该为另一个父母中的每一个使用父母吗?

1 个答案:

答案 0 :(得分:0)

您可以使用直接模板匹配代替for-each。请考虑以下样式表:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    version="1.0">

    <xsl:template match="node()|@*">
        <xsl:copy>
            <xsl:apply-templates select="node()|@*"/>
        </xsl:copy>
    </xsl:template>

    <xsl:template match="*[contains(name(), '_old')][.='']">
        <test>Successful match</test>
    </xsl:template>

</xsl:stylesheet>