if-Anweisungen
Mithilfe von if
-Anweisungen lässt sich steuern, ob ein collector Werte
ausgibt oder nicht. Die Syntax sieht folgendermassen aus:
<combine name="ausgabe" value="${a}+${b}">
<if>
<data source="feldA">
<equals string="wertA"/>
</data>
</if>
<data source="feldA" name="a"/>
<data source="feldB" name="b"/>
</combine>
Wenn der Wert im feldA
tatsächlich wertA
ist, dann wird das Ergebnis
von ${a}+${b}
ausgegeben, ansonsten nicht.
In der if-Anweisung lässt sich jede Filter-Funktion sowie die collectors all
,
any
und none
verwenden. Ein Beispiel mit all
:
<combine name="ausgabe" value="${a}+${b}">
<if>
<all>
<data source="feldA"/>
<data source="feldB"/>
</all>
</if>
<data source="feldA" name="a"/>
<data source="feldB" name="b"/>
</combine>
Wenn beide Literale einen Wert liefern, wird das Ergebnis von ${a}+${b}
weitergeleitet.