通过在XSLT中使用模板更改其某些节点值来复制变量

时间:2017-11-07 12:12:26

标签: xslt

<xsl:template name="removeEmptyTransaction">
   <xsl:param name="eachTransactionElement"/>
        <xsl:copy-of select="$eachTransactionElement"/>
</xsl:template>
  

事务节点我将传递给removeEmptyTransaction模板   我想仅在事务包含 catalogueItemReference 时更改 catalogueItemConfirmationStateCode 的值,然后在输出中复制整个事务节点。它们是多个事务节点,catalogueItemReference是可选的。

{{1}}

请建议..

1 个答案:

答案 0 :(得分:0)

好吧,写一个模板,例如match="transaction[.//catalogueItemReference]//catalogueItemConfirmationStateCode"实现您需要的更改(您尚未解释您想要的更改),然后使用<xsl:apply-templates select="$eachTransactionElement"/>推送您的变量完成转换。当然,这种方法还需要使用身份转换模板,以确保其余部分未被更改。