Skip to end of banner
Go to start of banner

Extended Offering Rule Matrices

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current Restore this Version View Version History

« Previous Version 6 Next »

Introduction

This document contains proposals and descriptions for (new) offering rule predicates expressed in the offering rule matrix for registration rules and instructor rules.

Registration Rules

Additional Rows

New Registration Rule Predicates

Some additional rows were added to support new predicates:

  • MostRecentRegistrationCompletedFor

  • CompletedForSinceCurrentCompletion

  • ProfileChangedSinceLastCompletion

  • CertificateWillExpireInCourse

Note: De-Registration can’t be used for any of the above predicates, including the existing predicate CertificateWillExpire.

Rows

Course-Prerequisite (latest registration is completed) - MostRecentRegistrationCompletedFor

Define courses which are prerequisite to the course column. That is, those courses need to be completed BEFORE someone gets registered in this course.

The predicate stays ‘true’ once the prerequisite course has been completed at least once. To avoid endless re-registration combine this prerequisite with a certificate, other rule predicate or use with Registration Type OneTime.

Note: If more than one course is prerequisite, add multiple course paths separated with pipe '|'.

Course-Prerequisite (completed after current completion) - CompletedForSinceCurrentCompletion

Define courses which are prerequisite to the course column. That is, those courses need to be completed BEFORE someone gets registered in this course.

The predicate is only true if the prerequisite course was either completed AFTER the current course or the current course has not been completed yet and the prerequisite course has been completed at least once.

Examples
  1. prerequisite course not completed AND current course not completed => false

  2. prerequisite course completed 2021-10-08 AND current course not completed => true

  3. prerequisite course completed 2021-10-08 AND current course completed 2021-10-07 => true

  4. prerequisite course completed 2021-10-08 AND current course completed 2021-10-09 => false

Note: If more than one course is prerequisite, add multiple course paths separated with pipe '|'.

OrgProfileFieldChanged (since latest completion) - ProfileChangedSinceLastCompletion

Predicate ProfileChangedSinceLastCompletion is true if the specified profile field value has changed since the user's last course completion.

CertificateWillExpireInCourse (course, certId, daysBeforeExpiry)

The predicate CertificateWillExpireInCourse is true if the certificate for the specified course is expiring in x days or less or has expired already.

Users (UserNames)

List user names (separated with pipe '|') who should get registered in the current course independent of their OPF values. It is important to note that all the x for OPF values are ignored for that user - this is realized in creating one registration rule per user.
The users would still adhere to the prerequisites, Registration Type and certificate configuration for the course.

Notes:

  • This predicate is used similar to OPFs - it indicates the specific users who should get registered

  • De-Registration can be used with the User predicate!

  • The currently existing predicate IsUser can’t take multiple users - Core needs to be extended to a predicate like:

    Users(userName1|userName2|…)

    which should work similar to ProfileValueIn with multiple values but checking for users. Any user in the list should get registered.

Instructors

Additional Rows

Users (UserNames)

List user names (separated with pipe '|') who should get added as instructors for the course independent of their OPF values set further below. It is important to note that all the x for OPF values are ignored for that user - this is realized in creating one instructor rule per user.

Notes:

  • This predicate is used similar to OPFs - it indicates who should get registered and not necessarily defining under which circumstances (i.e. expiring certificate, prerequisites).

  • Remove Instructor does not have any affect on users mentioned in Users row.

  • The currently existing predicate IsUser can’t take multiple users - Core needs to be extended to a predicate like:

    Users(userName1|userName2|…)

    which should work similar to ProfileValueIn with multiple values but checking for users. Any user in the list should get registered.

0 Comments

You are not logged in. Any changes you make will be marked as anonymous. You may want to Log In if you already have an account.