在Datapower上下文中设置动态变量

时间:2011-05-24 08:24:56

标签: xslt ibm-datapower

我的要求是在for循环中将一些动态变量设置为datapower上下文,如:

<dp:set-variable name="'var://context/txn-info/appErrorInd[$i+1]'"
                value="'yes'" />

变量$ i将继续改变。上面的代码不起作用。有人可以给我一个解决方案吗?

1 个答案:

答案 0 :(得分:1)

使用

<dp:set-variable name="'var:{//context/txn-info/appErrorInd[$i+1]}'"
                 value="'yes'" />

以上是对所提供代码的机械修正。它很可能包含另一个更微妙的错误。要更正此错误,请使用:

<dp:set-variable name="'var:{(//context/txn-info/appErrorInd)[$i+1]}'"
                 value="'yes'" />

<强>解释

  1. 使用 AVT

  2. []运算符的优先级高于//伪运算符。要覆盖这个,需要使用明确的括号。