Regeln erstellen: Der Aufbau einer Regel
Jede Regel besteht aus folgenden Teilbereichen:
Innerhalb einer Regeldefinition (<RULES>...</RULES>) können mehrere, voneinander unabhängige Regeln für ein Formular definiert werden, wobei jede Regel von einer Restriktionsstufe eingeleitet wird und immer mindestens eine Wertermittlung und eine Handlungsanweisung enthalten muss.
1. Restriktionsstufe festlegen
Jeder Regel liegt eine Restriktionsstufe zugrunde, die den redaktionellen Prozess bei ungültigen Zuständen steuert und beispielsweise das Speichern einer fehlerhaften Eingabe unterbindet. Die Wahl der Restriktionsstufe hat auch Auswirkungen auf die Darstellung der Regelverletzung im JavaClient bzw. im WebClient.
Mögliche Tags:
- <ON_SAVE/>
- <ON_EVENT/>
- <ON_RELEASE/>
Weitere Informationen siehe Redaktionelle Prozesse steuern (Restriktionsstufen).
2. (Optionale) Vorbedingung definieren
In einer Regeldefinition kann innerhalb eines <IF/>-Abschnitts eine Vorbedingung definiert werden. Eine Vorbedingung bezieht sich immer auf eine bestimmte Eigenschaft des Formularelements (z. B. „Ist die Eingabekomponente fokussiert?“) oder auch des Formulars („Wurde das Formular in der Inhalte-Verwaltung geöffnet?“). Die nachfolgenden Abschnitte der Regeldefinition werden nur durchlaufen, wenn die Vorbedingung erfüllt ist (und dieser Abschnitt der Regeldefinition TRUE zurückliefert).
Weitere Informationen siehe Vorbedingung für die Regelausführung definieren.
3. Wertermittlung
Eine Regel prüft immer eine oder auch mehrere Eigenschaften des Formulars („In welcher Redaktionssprache wird das Formular bearbeitet?“) oder eines einzelnen Formularelements („Ist der Wert der Komponente NULL?“). Die gewünschten Eigenschaften werden bei der Wertermittlung der Regeldefinition definiert.
Die Wertermittlung kann:
- synchron innerhalb eines <WITH/>-Tags oder
- asynchron innerhalb eines <SCHEDULE/>-Tags erfolgen.
Das ermittelte Ergebnis wird anschließend innerhalb der Handlungsanweisung ausgewertet.
Weitere Informationen siehe Wertermittlung definieren oder asynchrone Regelausführung definieren.
4. Handlungsanweisung definieren
Für jede Regel muss eine Handlungsanweisung definiert werden, die abhängig von den zuvor definierten Bedingungen (innerhalb der Wertermittlung) agiert. In der Handlungsanweisung verknüpft der Vorlagenentwickler die Ergebnisse aus der Wertermittlung mit bestimmten Aktionen im Formular, beispielsweise dem Markieren einer Eingabekomponente oder dem Einblenden eines Korrekturhinweises. Handlungsanweisungen werden innerhalb eines <DO/>-Abschnitts definiert.
Weitere Informationen siehe Handlungsanweisung festlegen.
5. (Optionale) Validierung
Eine Validierung ist eine bestimmte Handlungsanweisung, die ausgeführt wird, solange die innerhalb des <WITH/>-Abschnitts definierten Bedingungen nicht erfüllt sind (d.h. solange die Wertermittlung FALSE zurückliefert). Eine Validierung wird innerhalb eines <VALIDATION/>-Abschnitts im <DO/>-Bereich einer Regel definiert und muss immer einer bestimmten Eingabekomponenten innerhalb eines Formulars zugeordnet werden. Innerhalb der Validierung wird daher ein inneres <PROPERTY/>-Tag mit dem Namen einer Eingabekomponente und dem Attribut VALID definiert.
Weitere Informationen siehe Eingabekomponenten validieren.