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.