xslt中多个条件的实现



我有下面的条件要检查,我必须检查两个条件

1) ABSClassificationScheme =清除状态

2)如果第一个条件匹配那么只检查第二个条件cfStateId是accpt_novated_sw, Clearing Complete和manual_novated cfStateId应该有这三个值中的一个那么在这种情况下它应该打印为true

所以我提出了以下条件,请告知这是正确的

    <xsl:template match="ABSClassificationScheme[
                            . = 'Clearing State' and 
                            ../cfStateId = 'accpt_novated_sw' or ./cfStateId='Clearing Complete' or ./cfStateId='manual_novated' ]">
   <xsl:value-of select="'true'"/>  
  </xsl:template>

但是现在它不能用于清除完成和manual_novated,你能告诉我上面的实现是否正确吗

我可以在xpath中看到父轴:

../cfStateId = 'accpt_novated_sw'

改为

./cfStateId = 'accpt_novated_sw'

或者你可以直接使用(没有./,因为它是一样的):

cfStateId = 'accpt_novated_sw'

在这一点上我只是猜测,但是如果您有几个累积 (AND)条件,并且这些条件中的一个或多个由几个可选 (or)子条件组成,则必须将该条件放在括号中-因为在or之前求值

相关内容

  • 没有找到相关文章

最新更新