<node name="iterate_over_elements" channel="inline" format="flow/loop-each" model="">
    <node name="collection" channel="inline" format="text/cybol-path" model=".collection"/>
    <node name="index" channel="inline" format="text/cybol-path" model=".index"/>
    <node name="model" channel="inline" format="text/cybol-path" model=".model"/>
</node>

<!--
    This is a possible implementation of the model being called by the loop.
    It accesses the elements as destination, in order to write to them.
    This is the style of "map" (function, not container) in functional programming.
-->
<node name="increment_numbers" channel="inline" format="calculate/add" model="">
    <node name="result" channel="inline" format="text/cybol-path" model=".collection.[.index]"/>
    <node name="operand" channel="inline" format="number/integer" model="1"/>
</node>

<!--
    This is a possible implementation of the model being called by the loop.
    It accesses the elements as source, in order to read from them.
    This is the style of "reduce" in functional programming.
-->
<node name="sum_up_numbers" channel="inline" format="calculate/add" model="">
    <node name="result" channel="inline" format="text/cybol-path" model=".sum"/>
    <node name="operand" channel="inline" format="text/cybol-path" model=".collection.[.index]"/>
</node>