forEach
Mit forEach kann ein innerer Scope mehrmals ausgeführt werden, z.B. um über mehrere Elemente in einer XML Struktur zu iterieren:
<forEach parallel="no" counterName="Counter" name="ForEach1">
<startCounterValue>1</startCounterValue>
<finalCounterValue>count($elements/ns1:Element)</finalCounterValue>
<scope name="Scope1">
<variables>
<variable name="Invoke_InputVariable" messageType="ns2:RequestMessage"/>
</variables>
<sequence name="Sequence1">
<assign name="AssignElement">
<copy>
<from>$elements/ns1:Element[$Counter]</from>
<to>$Invoke_InputVariable.payload/ns1:Element</to>
</copy>
</assign>
...
</sequence>
</scope>
</forEach>
<forEach parallel="no" counterName="Counter" name="ForEach1">
<startCounterValue>1</startCounterValue>
<finalCounterValue>count($elements/ns1:Element)</finalCounterValue>
<scope name="Scope1">
<variables>
<variable name="Invoke_InputVariable" messageType="ns2:RequestMessage"/>
</variables>
<sequence name="Sequence1">
<assign name="AssignElement">
<copy>
<from>$elements/ns1:Element[$Counter]</from>
<to>$Invoke_InputVariable.payload/ns1:Element</to>
</copy>
</assign>
...
</sequence>
</scope>
</forEach>