Beispiele

in Arbeit . . .

Regeln

WENN - DANN - Konstrukt

Das WENN - DANN - Konstrukt definiert die Bedingung und die Aktion jeder Regel.

Jede Bedingung muss ein Schlüsselwort enthalten.

Regel
YAML Schema
JSON Schema
Regel
WENN das Eigenkapital des Person KLEINER 30000 € ist
DANN darf der Kredit nicht vergeben werden
YAML Schema
Eigenkapital: 25000
JSON Schema
{
Eigenkapital: 25000
}
Regel
YAML Schema
JSON Schema
Regel
WENN der Standort des Unternehmens ist NICHT München
DANN ist eine Geschäftsbeziehung schwierig
YAML Schema
Standort: Dortmund
JSON Schema
{
Standort: "Dortmund"
}

Alternativer Regelausdruck

Alternative Regelausdrücke beinhalten immer die Indikator - Schlüsselwörter. Die Bedingung in so einem Ausdruck enthält eine Implizite Negation!

Regel
YAML Schema
JSON Schema
Regel
das Alter des Antragstellers DARF NICHT KLEINER 18 sein
YAML Schema
Alter: 17
JSON Schema
{
Alter: 17
}
Regel
YAML Schema
JSON Schema
Regel
das Alter des Versicherungsnehmers MUSS MINDESTENS 18 sein
YAML Schema
Alter: 16
JSON Schema
{
Alter: 16
}
Regel
YAML Schema
JSON Schema
Regel
der Wohnort der Person SOLL Deutschland sein
YAML Schema
Wohnort: USA
JSON Schema
{
Wohnort: "USA"
}

Implizite Bedingung

Für Wahrheitswerte können implizite Bedingungen genutzt werden.

Regel
YAML Schema
JSON Schema
Regel
der Vetrag MUSS unterschrieben sein
YAML Schema
unterschrieben: false
JSON Schema
{
unterschrieben: false
}

Multiple Bedingungen

UND

Regel
YAML Schema
JSON Schema
Regel
WENN das Alter des Bewerbers GRÖßER 70 ist
UND sein Wohnort ist NICHT Dortmund
DANN Sie dürfen nicht älter als 70 sein und müssen aus Dortmund kommen
YAML Schema
Wohnort: Berlin
Alter: 18
JSON Schema
{
Wohnort: "Berlin",
Alter: 18
}
Regel
YAML Schema
JSON Schema
Regel
das Alter des Bewerbers DARF NICHT KLEINER 25 sein
UND sein Beruf MUSS Berater sein
YAML Schema
Alter: 18
Beruf: Berater
JSON Schema
{
Alter: 18,
Beruf: "Berater"
}
Regel
YAML Schema
JSON Schema
Regel
der Bewerber DARF KEIN Student sein
UND sein Alter MUSS MINDESTENS 25 Jahre sein
YAML Schema
Student: false,
Alter: 24
JSON Schema
{
Student: false,
Alter: 24
}

ODER

Regel
YAML Schema
JSON Schema
Regel
WENN der Abschluss des Bewerbers NICHT Bachelor ist
ODER seine Berufserfahrung WENIGER als 5 Jahre ist
DANN Sie müssen einen Bachelor oder 5 Jahre Erfahrung haben
YAML Schema
Abschluss: Bachelor
Berufserfahrung: 4
JSON Schema
{
Abschluss: "Bachelor",
Berufserfahrung: 4
}
Regel
YAML Schema
JSON Schema
Regel
der Abschluss des Bewerbers MUSS Bachelor sein
ODER seine Berufserfahrung MUSS MINDESTENS 5 Jahre sein
YAML Schema
Abschluss: Bachelor
Berufserfahrung: 4
JSON Schema
{
Abschluss: "Bachelor",
Berufserfahrung: 4
}

Komplexe Bedingung

Bei komplexen Regeln müssen die Einrückungen beachtet werden.

Regel
YAML Schema
JSON Schema
Regel
WENN der Wohnort der Person IST London
UND der Name des Person ist GLEICH Mycroft Holmes
ODER sein Name ist GLEICH Sherlock Holmes
DANN die Person ist ein Genie
YAML Schema
Wohnort: London
Name: Sherlock Holmes
JSON Schema
{
Wohnort: "London",
Name: "Sherlock Holmes"
}

Arithmetische Beispiele

Die Grammatik unterstützt arithmetische bzw. mathematische Operationen.

Regel
YAML Schema
JSON Schema
Regel
WENN Aktiva - Passiva NICHT GLEICH 0
DANN die Bilanz muss immer ausgeglichen sein
YAML Schema
Aktiva: 10
Passiva: 9
JSON Schema
{
Aktiva: 10,
Passiva: 9
}
Regel
YAML Schema
JSON Schema
Regel
WENN das Eigenkapital / Bilanzsumme NICHT GLEICH Eigenkapitalquote
DANN die Bilanz enthält Fehler
YAML Schema
Eigenkapital: 10
Bilanzsumme : 9
Eigenkapitalquote: 2
JSON Schema
{
Eigenkapital: 10,
Bilanzsumme : 9,
Eigenkapitalquote: 2
}
Regel
YAML Schema
JSON Schema
Regel
die Berufserfahrung von Alter - 18 Jahren DARF NICHT GERINGER sein als 10
YAML Schema
Alter: 17
Berufserfahrung: 10
JSON Schema
{
Alter: 17,
Berufserfahrung: 10
}

Variablen

Numerische Werte

Variablen-Deklaration
Variablen-Deklaration
42
ALS Antwort auf Alles

Zeichenketten

Variablen-Deklaration
Variablen-Deklaration
Honig
ALS lecker

Wahrheitswerte

Variablen-Deklaration
Variablen-Deklaration
das Alter der Bewerberin ist KLEINER als 18
ALS minderjährig

Mit Variablen können auch Berechnungen durchgeführt werden.

Variablen
YAML Schema
JSON Schema
Variablen
25
ALS Berufseinstieg
Berufseinstieg - Abitur
ALS Studienzeit
Alter - Berufseinstieg
ALS Berufserfahrung
Berufserfahrung * 12
ALS Berufserfahrung in Monaten
YAML Schema
Alter: 20,
Abitur: 19
JSON Schema
{
Alter: 20,
Abitur: 19
}

Kommentare

First Tab
First Tab
KOMMENTAR Das ist ein Kommentar
First Tab
First Tab
KOMMENTAR Mehrzeilige Kommentare
sind auch möglich

OpenAPI

openVALIDATION bringt eine eigene OpenAPI Erweiterung mit, die die entsprechenden Validierungsregeln für die jeweiligen Serviceoperationen definiert.

oapi.spec.yaml
Download
oapi.spec.yaml
openapi: "3.0.0"
info:
version: 1.0.0
title: openVALIDATION
description: openVALIDATION Beispiele.
paths:
/:
post:
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/person'
x-ov-rules:
culture: de
rule: |
KOMMENTAR Das ist ein Kommentar
WENN das Eigenkapital des Person KLEINER 30000 € ist
DANN darf der Kredit nicht vergeben werden
responses:
'200':
description: success
components:
schemas:
person:
type: object
properties:
eigenkapital:
type: integer