Expertensyntax

Zuletzt geändert von Carina Enke (Admin) am 06.01.2026

Neben den beschriebenen Anwendungsbeispielen zu Expertenregeln können Sie mit Hilfe der Syntax weitere eigene Regeln zusammenstellen.

Folgende Syntax können Sie zur Konfiguration eigener Regeln verwenden:

Syntax der FunktionBedeutungRückgabewert

date("[date]")

Wandelt eine als Text angegebene Datums- und optional Uhrzeit-Angabe in einen festen Zeitpunkt um, der in Regeln für Vergleiche verwendet werden kann. Ein Beispiel dazu finden Sie auf der Seite Auswertung Einschreibezeitpunkt.

Erwartetes Format: TT.MM.JJJJ oder TT.MM.JJJJ SS:mm, z. B. date("26.5.2020") oder date("26.5.2020 18:00"). Wird keine Uhrzeit angegeben, gilt automatisch 00:00 Uhr. 

Date
getAttempts("[integer]")Gibt vom Kursbaustein mit spezifizierter ID die Anzahl der Versuche zurück. Bei Kursbausteinen vom Typ Test, Selbsttest, Fragebogen (mögliche Rückgabewerte 0 oder 1) werden gestartete Versuche zurückgegeben. Beim Kursbaustein Aufgabe zeigt der Rückgabewert die Anzahl abgegebener Dateien. Der Kursbaustein Portfolioaufgabe die Anzahl der abgegebenen Portfolioaufgaben. Ein Beispiel dazu finden Sie auf der Seite Auswertung der Versuchsanzahl.

Number

getInitialCourseLaunchDate(0)Gibt das Datum des erstmaligen Kursbesuchs des betreffenden Kursteilnehmers zurück. Ein Beispiel dazu finden Sie auf der Seite Auswertung Einschreibezeitpunkt.Date
getInitialEnrollmentDate("[integer]")Gibt vom Kursbaustein Einschreibung mit spezifizierter ID das Datum des erstmaligen Einschreibens des betreffenden Kursteilnehmers zurück. Ein Beispiel dazu finden Sie auf der Seite Auswertung Einschreibezeitpunkt.Date
getMark("[integer]")Gibt vom Kursbaustein mit spezifizierter ID die Note zurück. Ein Beispiel dazu finden Sie auf der Seite Auswertung von Bewertungsdaten anderer Kursbausteine.

Number

getMarkWithCourseId("[integer-1]","[integer-2]")Gibt vom Kursbaustein mit ID=[integer-2] des Kurses mit ID=[integer-1] die Note zurück.

Number

getNumberOfEnrollments("[string1]*")Gibt TRUE, wenn die konfigurierte Anzahl der Lerngruppenmitgliedschaften im Lernbereich (string1) erreicht ist.

Boolean

getOnyxTestOutcome("[string1]","[string2]")Gibt vom Onyx-Test-Kursbaustein mit spezifizierter ID (string1) und spezifizierter Ausgabevariable (string2) den Wert dieser Variablen zurück. Der Rückgabewert ist eine Zahl. Beispiele dazu finden Sie auf der Seite Steuerung auf Basis von Ausgabevariablen eines Tests.Number
getOnyxTestOutcomeZK("[string1]","[string2]")Gibt vom Onyx-Test-Kursbaustein mit spezifizierter ID (string1) und spezifizierter Ausgabevariable (string2) den Wert dieser Variablen zurück. Der Rückgabewert ist eine Zeichenkette. Ein Beispiel dazu finden Sie auf der Seite Steuerung auf Basis von Ausgabevariablen eines Tests.Text
getPassed("[integer]")Gibt vom Kursbaustein mit spezifizierter ID den Boolean TRUE (=Bestanden) oder FALSE (=Nicht bestanden) zurück. Ein Beispiel dazu finden Sie auf der Seite Auswertung von Bewertungsdaten anderer Kursbausteine.Boolean
getPassedWithCourseId("[integer-1]","[integer-2]")Gibt vom Kursbaustein mit ID=[integer-2] des Kurses mit ID=[integer-1] den Boolean TRUE (=Bestanden) oder FALSE (=Nicht bestanden) zurück.Boolean
getProgress("[integer]")Gibt vom Kursbaustein mit spezifizierter ID den Fortschritt als numerischen Wert zwischen 0 und 100 (Prozent) zurück. Der Rückgabewert ist eine Zahl. Ein Beispiel dazu finden Sie auf der Seite Auswertung von Bewertungsdaten anderer Kursbausteine.Number
getRecentCourseLaunchDate(0)Gibt das Datum des letzten Kursbesuchs des betreffenden Kursteilnehmers zurück. Ein Beispiel dazu finden Sie auf der Seite Auswertung Einschreibezeitpunkt.Date
getRecentEnrollmentDate("[integer]")Gibt vom Kursbaustein Einschreibung mit spezifizierter ID das Datum des letzten Einschreibens des betreffenden Kursteilnehmers zurück. Ein Beispiel dazu finden Sie auf der Seite Auswertung Einschreibezeitpunkt.Date
getScore("[integer]")Gibt vom Kursbaustein mit spezifizierter ID die Anzahl Punkte zurück.  Ein Beispiel dazu finden Sie auf der Seite Auswertung von Bewertungsdaten anderer Kursbausteine.Number
getScoreWithCourseId("[integer-1]","[integer-2]")Gibt vom Kursbaustein mit ID=[integer-2] des Kurses mit ID=[integer-1] die Anzahl Punkte zurück.Number
getUserProperty("[string]")Liefert die angegebene Benutzer-Eigenschaft des ausführenden Nutzers zurück. Ein Beispiel dazu finden Sie auf der Seite Expertenregeln zur Prüfung auf ein Benutzerattribut.

Text

hasAttribute("[AttrName]","[string]")Gibt TRUE, wenn [string] dem Wert des AAI-Attributes [AttrName] des jeweiligen Benutzers entspricht. Ein Beispiel dazu finden Sie auf der Seite Expertenregeln zur Prüfung auf ein Benutzerattribut.Boolean
hasEvaluationCompleted("KB-ID")Gibt TRUE für alle Benutzer die den angegebenen Kursbaustein erfolgreich beendeten.

Boolean

inLearningArea("[string]")Gibt TRUE für alle Mitglieder der Gruppen im Lernbereich [string] des aktuellen Kurses zurück.

Boolean

inLearningArea("[string1]","[string2]")Gibt TRUE für alle Mitglieder der Gruppen im angegebenen Lernbereich [string1] des Kurses mit der angegebenen Kurs-ID=[string2] zurück.

Boolean

inLearningAreaWaitingList("[string1]","[string2]")Gibt TRUE für alle Mitglieder der Warteliste der Lerngruppen die zum angegebenen Lernbereich [string1] des Kurses mit der angegebenen Kurs-ID=[string2] gehören zurück.

Boolean

inLearningGroup("[string]")Gibt TRUE für alle Mitglieder der Lerngruppe mit dem Titel [string] des aktuellen Kurses zurück. Ein Beispiel dazu finden Sie auf der Seite Expertenregeln zur Prüfung von Nutzerrolle und Guppenzugehörigkeit.

Boolean

inLearningGroup("[string1]","[string2]")Gibt TRUE für alle Mitglieder der angegebenen Lerngruppe [string1] des Kurses mit der angegebenen Kurs-ID=[string2] zurück.

Boolean

inLearningGroupWaitingList("[string]")Gibt TRUE für alle Benutzer in der Warteliste der Lerngruppe [string] des aktuellen Kurses zurück.

Boolean

inLearningGroupWaitingList("[string1]","[string2]")Gibt TRUE für alle Benutzer in der Warteliste der Lerngruppe [string1] des Kurses mit der angegebenen Kurs-ID=[string2] zurück.

Boolean

inRightGroup("[string]")Gibt TRUE für alle Mitglieder der Rechtegruppe [string] zurück.

Boolean

isCourseAdministrator(0)Gibt TRUE für alle Besitzer Ihres Kurses (Lernressource) zurück.

Boolean

isCourseCoach(0)Gibt TRUE für alle Benutzer, die eine Lerngruppe betreuen zurück.

Boolean

isCourseLanguage("[string]")Gibt TRUE zurück, wenn die eingestellten Kurssprache mit dem übergebenen Wert übereinstimmt (string).

Boolean

isExternalUser(0)Gibt TRUE für alle, die OPAL als externe Benutzer verwenden zurück.

Boolean

isGlobalAuthor(0)Gibt TRUE für alle Mitglieder der OPAL-Autorengruppe zurück.

Boolean

isGuest(0)Gibt TRUE für alle Benutzer, die OPAL als Gäste besuchen zurück. Ein Beispiel dazu finden Sie auf der Seite Expertenregeln zur Prüfung von Nutzerrolle und Guppenzugehörigkeit.

Boolean

isInAttribute("[AttrName]","[substring]")Gibt TRUE, wenn [substring] einem Teil des Wertes des AAI-Attributs [AttrName] des jeweiligen Benutzers entspricht. Ein Beispiel dazu finden Sie auf der Seite Expertenregeln zur Prüfung auf ein Benutzerattribut.

Boolean

isLearningGroupFull("[string]")Gibt für die angegebene Lerngruppe im aktuellen Kurs den Boolean TRUE (=voll) oder FALSE (=nicht voll) zurück.

Boolean

isLearningGroupFull("[string1]","[string2]")Gibt für die angegebene Lerngruppe=[string1] des Kurses mit Kurs-ID=[string2] den Boolean TRUE (=voll) oder FALSE (=nicht voll) zurück.

Boolean

isPasswordConfirmed("[string]")Gibt TRUE nach Eingabe des korrekten Passwortes (string1) zurück.
Kann nur bei Kursbausteinen verwendet werden, die auch im einfachen Modus eine Passwortbeschränkung anbieten.

Boolean

isUser("[string]")Gibt TRUE für den Benutzer mit dem Benutzernamen [string] zurück.

Boolean

Typ

Syntax

Bedeutung

Funktionen

IF({condition}, {then}, {else})

Prüft eine Bedingung (condition, Rückgabewert BOOLEAN). Ist sie wahr, wird der then-Wert zurückgegeben, andernfalls der else-Wert. Ermöglicht bedingte Logik innerhalb einer Regel, z. B. IF(now < date("26.5.2020"), true, false).

Konstanten

true oder TRUE

Wahr

false oder FALSE

Falsch

Variable

now

Aktuelle Serversystemzeit zum Zeitpunkt der Regelprüfung. Da sich der Wert stets aktualisiert, besonders geeignet für relative Zeitvergleiche. Ein Beispiel dazu finden Sie auf der Seite Auswertung Einschreibezeitpunkt.

Einheiten

min

Minuten

h

h

w

Wochen

m

Monate

Operatoren

=

gleich

!=

ungleich

>

grösser als

<

kleiner als

>=

grösser gleich

<=

kleiner gleich

*

Multiplikation

/

Division

+

Addition

-

Subtraktion

%

Modulo

^

Potenz

Booleans

 

 

 

 

 

&

Binäres UND

|

Binäres ODER

xor

Binäres XOR

!

Logisches NICHT

or

Logische ODER

and

Logische UND