Expert syntax

Last modified by Carina Enke on 16.01.2024

 

If you want to compile your own rules, you can use the syntax in addition to the described Application examples and expert rules.

Type

Syntax

Description

Constants

true or TRUE

True

false or FALSE

False

Variable

now

Current server system time

Functions





























 

date("[date]")

Query date

inLearningGroup("[string]")

Returns TRUE for all members of the learning group with the title [string] of the current course. You can find an example on Expertenregeln zur Prüfung von Nutzerrolle und Guppenzugehörigkeit.

inLearningGroup("[string1]","[string2]")

Returns TRUE for all members of the specified learning group [string1] of the course with the specified course ID=[string2].

inLearningGroupWaitingList("[string]")

Returns TRUE for all users on the waiting list of the learning group [string] of the current course.

inLearningGroupWaitingList("[string1]","[string2]" )

Returns TRUE for all users on the waiting list of the learning group [string1] of the course with the specified course ID=[string2].

inRightGroup("[string]")

Returns TRUE for all members of the right group [string].

isLearningGroupFull("[string]")

Returns the Boolean TRUE (=full) or FALSE (=not full) for the specified learning group in the current course.

isLearningGroupFull("[string1]","[string2]")

Returns the Boolean TRUE (=full) or FALSE (=not full) for the specified learning group=[string1] of the course with the course ID=[string2].

isUser("[string]")

Returns TRUE for the user with the user name [string].

inLearningArea("[string]")

Returns TRUE for all members of the groups in the learning area [string] of the current course.

inLearningArea("[string1]","[string2]")

Returns TRUE for all members of the groups in the specified learning area [string1] of the course with the specified course ID=[string2].

inLearningAreaWaitingList("[string1]","[string2]")

Returns TRUE for all members on the waiting list of the learning group in the learning area [string1] of the course with the specified course ID=[string2].

getNumberOfEnrollments("[string1]*")

Returns TRUE, when the configured number of learning group members is reached in the learning area (string1).

isGlobalAuthor(0)

Returns TRUE for all members of the OPAL author group.

isCourseAdministrator(0)

Returns TRUE for all owners of your course (learning resource).

isCourseCoach(0)

Returns TRUE for all users who supervise a learning group.

isGuest(0)

Returns TRUE for all users who visit OPAL as guests.

isExternalUser(0)

Returns TRUE for everyone who uses OPAL as an external user.

hasAttribute("[AttrName]","[string]")

Returns TRUE if [string] matches the value of the AAI attribute [AttrName] of the respective user.

isInAttribute("[AttrName]","[substring]")

Returns TRUE if [substring] matches a portion of the value of the AAI attribute [AttrName] of the respective user.

getUserProperty("[string]")

Returns the specified user property of the executing user.

getPassed("[integer]")

Returns the Boolean TRUE (=passed) or FALSE (=not passed) from the course element with the specified ID.

getScore("[integer]")

Returns the number of points from the course element with the specified ID.

getAttempts("[integer]")

Returns the number of completed attempts from the course element with the specified ID. The Course elements Test, Self-test, and Survey (possible return values 0 or 1) show the number of started attempts. Course elements of the type Task show the return value of the number of submitted files; Portfolio Tasks the number of submitted Portfolio Tasks. You can find an example here Evaluation of the number of attempts.

getInitialEnrollmentDate("[integer]")

Returns the date of the respective course participant's first-time enrolment from the course element Enrolment with the specified ID.

getRecentEnrollmentDate("[integer]")

Returns the date of the respective course participant's last enrolment from the course element Enrolment with the specified ID.

getInitialCourseLaunchDate(0)

Returns the date of the first course visit of the respective course participant.

getRecentCourseLaunchDate(0)

Returns the date of the last course visit of the respective course participant.

getRecentCourseLaunchDate(0)

Returns the date of the last course visit of the respective course participant.

getPassedWithCourseId("[integer-1]","[integer- 2]")

Returns the Boolean TRUE (=passed) or FALSE (=not passed) from the course element with the ID=[integer-2] of the course with the ID=[integer-1].

getScoreWithCourseId("[integer-1]","[integer-2]")

Returns the number of points from the course element with the ID=[integer-2] of the course with the ID=[integer-1].

getMarkWithCourseId(" [integer-1]","[integer-2]")

Returns the grade from the course element with the with the ID=[integer-1].

hasEvaluationCompleted("KB-ID")

Returns TRUE for all users who have successfully completed the specified course element.

getNumberOfEnrollments("[string1]*")

Returns TRUE, when the configured number of learning group members is reached in the learning area (string1).

getOnyxTestOutcome("[string1]","[string2]")

Returns the value of the output variable from the ONYX test course element with the specified ID (string1) and the specified output variable (string2). The return value is a number.

getOnyxTestOutcomeZK("[string1]","[string2]")

Returns the value of the output variable from the ONYX test course element with the specified ID (string1) and the specified output variable (string2). The return value is a string.

getProgress("[integer]")

Returns the progress from the course element with the specified ID as a numerical value between 0 and 100 (percent).

isPasswordConfirmed("[string]")

Returns TRUE after entering the correct password (string1).

Can only be used with course elements which offer a password restriction even in simple mode.

comesFrom("[string]")

Returns TRUE if the user has a linked account to OLAT with the specified system ID.

Units

 

min

Minutes

h

h

w

Weeks

m

Months

Operators



 

=

equal to

!=

not equal

>

greater than

<

less than

>=

greater than or equal to

<=

less than or equal to

*

Multiplication

/

Division

+

Addition

-

Subtraction

%

Modulo

^

Power

Booleans

&

Binary AND

|

Binary OR

xor

Binary XOR

!

Logical NOT

or

Logical OR

and

Logical AND