web-dev-qa-db-ja.com

XSLTで論理的等しい条件を確認するにはどうすればよいですか?

XSLTにこの簡単なテストがあります

<xsl:if test="isTrue = 'false'">

しかし、論理的な等号演算子をここで実行する方法を理解できません。知っている <&lt;および>&gt;では、XSLTの論理演算子は何ですか?私は試した &eq;&et;==および=、またはXSLTで比較できるのは数値のみですか?

8
Jack Thor

=うまく動作するはずです

例えばこの入力XML

<xml>
    <SomeElement>1</SomeElement>
    <SomeAttribute attr="true" />
</xml>

この変換を通じて:

<?xml version="1.0" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:template match="/xml">
        <xsl:if test="SomeElement=1">
            Some Element is 1
        </xsl:if>
        <xsl:if test="SomeAttribute/@attr='true'">
            Some Attribute is true
        </xsl:if>
    </xsl:template>
</xsl:stylesheet>

戻り値

Some Element is 1
Some Attribute is true

予想通り。おそらく、エラーはtestではなく、パスセレクターにありますか?

12
StuartLC