XSL变量Xpath表达式,用于一个select中两个子元素的布尔值

时间:2012-12-07 14:29:43

标签: xml xslt xml-parsing xslt-2.0 saxon

设置变量的确切XPath表达式是什么,它在另一个元素的每一个中。到目前为止,我有以下变量,但我还需要知道金额大于0以停止进一步处理我可以在一个选择中做到这一点吗?

到目前为止

XSL

<xsl:variable name="UM" select="LossPayment/Coverage[contains('UM',CoverageCd)]"/>
<xsl:if test="$UM">
         ....          
</xsl:if>

XML

  <Parent>
    <LossPayment>
       <Coverage>
           <CoverageCd>TL</CoverageCd>
       </Coverage>
       <LossPaymentAmt>
               <Amt>000009500</Amt>
       </LossPaymentAmt>
    </LossPayment>
    <LossPayment>
       <Coverage>
            <CoverageCd>UM</CoverageCd>
        </Coverage>
        <LossPaymentAmt>
             <Amt>1</Amt>
       </LossPaymentAmt>
    </LossPayment>
  </Parent>

1 个答案:

答案 0 :(得分:0)

这应该有用。

<xsl:if test="/Parent/LossPayment[Coverage/CoverageCd='UM' and LossPaymentAmt/Amt &gt; 0]">
   <!-- do whatever you want -->
</xsl:if>