Abhängigkeiten
Abhängigkeiten verknüpfen ein Element (einen Schritt oder ein Feld) mit einer oder mehreren Auswahlen aus anderen Schritten. Sie entscheiden, ob das Element im Frontend überhaupt zur Auswahl steht.
Bedingung als Ausdruck
Neben der Auswahl-Liste kann jedes Element eine Bedingung tragen. Beide werden UND-verknüpft — eine leere Bedingung ändert nichts.
- Adressierung über IDs
Schritte, Möglichkeiten und Felder werden über ihre ID angesprochen. Namen sind übersetzbar und taugen nicht zur Adressierung; sie lassen sich aber vergleichen (
.name == '…') — dann gegen die aktuell gerenderte Sprache. Mehrsprachig heißt: selbst verodern.- Wiederholbare Einträge
Ein Felder-Schritt kann mehrere Einträge haben.
entries[*]liefert eine Liste;any(…)bzw.all(…)falten sie zu einer Ja/Nein-Antwort. Eine Liste ohneany/allwird abgelehnt — sie wäre immer wahr.- Der eigene Eintrag
Hängt ein Feld an einem anderen Feld desselben Schritts, ist
this.entrygemeint: der Eintrag, in dem das Feld selbst steht. Im Baukasten ist das der Baustein Feldwert (aktueller Eintrag) — er nennt keinen Schritt, weil es immer der eigene ist.this.entry.fields['<field-id>'].values[0] == '<option-id>'Der Baustein Feldwert adressiert dagegen einen fremden Schritt über
entries[0]— bei mehreren Einträgen träfe er dort immer den ersten.- Fehlende Verweise
Zeigt ein Vergleich auf etwas, das es nicht gibt — ein gelöschtes Feld, eine falsche ID —, gilt er als nicht erfüllt. Ein Tippfehler blendet nichts heimlich ein.
- Klammern
&&bindet stärker als||. Bei gemischten Ausdrücken selbst klammern.