我正在尝试创建我认为应该是一个相对简单的业务规则来操作XML模式中的重复元素。
考虑以下XML代码段(为了便于阅读,这会简化为删除名称空间):
<Root>
<AllAccounts>
<Account id="1" currentPayment="10.00" arrearsAmount="25.00">
<AllCustomers>
<Customer id="20" primary="true" canSelfServe="false" />
<Customer id="21" primary="false" canSelfServe="false" />
</AllCustomers>
</Account>
<Account id="2" currentPayment="10.00" arrearsAmount="15.00">
<AllCustomers>
<Customer id="30" primary="true" canSelfServe="false" />
<Customer id="31" primary="false" canSelfServe="false" />
</AllCustomers>
</AllAccounts>
</Root>
我想要做的是有两条规则:
其中[x]为0 ... XML中存在/ Root / AllAccounts / Account记录的数量。
我为此尝试了两个简单的规则,每个规则似乎都会触发x * x次,其中x是XML中的帐户记录数。我只想为每个帐户记录触发一次规则。
任何帮助都非常感谢!
由于
安德鲁
答案 0 :(得分:0)
确保规则具有相同的优先级,以防万一(之前我遇到优先级问题)。我还看到,在规则级别,有一个名为maximum Execution Loop Depth的属性,它指定重新评估规则的次数。如果您确定每个有效负载只应评估一次规则,请尝试将1放在那里。我希望这会有所帮助。
答案 1 :(得分:0)
检查你的谓词。对于谓词中使用的每个匹配的字段组合,规则将触发一次。