Wiki source code of Expertenregeln Beispiele
Last modified by Carina Enke on 15.01.2024
Show last authors
| author | version | line-number | content |
|---|---|---|---|
| 1 | |||
| 2 | |||
| 3 | {{layout}} | ||
| 4 | {{layout-section ac:type="two_right_sidebar"}} | ||
| 5 | {{layout-cell}} | ||
| 6 | Expert rules offer a wide range of applications and can have different effects. The examples on this page give a brief insight into possible application scenarios. | ||
| 7 | {{/layout-cell}} | ||
| 8 | |||
| 9 | {{layout-cell}} | ||
| 10 | {{panel title="Content"}} | ||
| 11 | {{toc minLevel="2"/}} | ||
| 12 | {{/panel}} | ||
| 13 | {{/layout-cell}} | ||
| 14 | {{/layout-section}} | ||
| 15 | |||
| 16 | {{layout-section ac:type="single"}} | ||
| 17 | {{layout-cell}} | ||
| 18 | == Expert rules in example images == | ||
| 19 | |||
| 20 | In these examples, you can see how to configure expert rules and how they affect the course view. | ||
| 21 | |||
| 22 | {{expand title="Making individual content in a public course visible only to registered users ..."}} | ||
| 23 | (% class="wrapped" %) | ||
| 24 | |((( | ||
| 25 | (% class="content-wrapper" %) | ||
| 26 | ((( | ||
| 27 | Do you wish to hide content in a public course from guests? | ||
| 28 | |||
| 29 | Enter the following content in the text field next to Expert rule in the Visibility tab of the respective course element. | ||
| 30 | |||
| 31 | {{code}} | ||
| 32 | isGuest()=false | ||
| 33 | {{/code}} | ||
| 34 | |||
| 35 | This will prevent the course element in a publicly accessible course from being displayed to guest users. | ||
| 36 | ))) | ||
| 37 | )))|((( | ||
| 38 | (% class="content-wrapper" %) | ||
| 39 | ((( | ||
| 40 | [[image:attach:Kurseditor - Konfiguration nur registrierte Nutzer_de.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] | ||
| 41 | ))) | ||
| 42 | ))) | ||
| 43 | |||
| 44 | After publishing, users will see the following view: | ||
| 45 | |||
| 46 | (% class="wrapped" %) | ||
| 47 | |=((( | ||
| 48 | View as a registered user | ||
| 49 | )))|=((( | ||
| 50 | View as a guest user | ||
| 51 | )))|=((( | ||
| 52 | View as a course owner | ||
| 53 | ))) | ||
| 54 | |((( | ||
| 55 | (% class="content-wrapper" %) | ||
| 56 | ((( | ||
| 57 | [[image:attach:Kursrun - Ansicht registrierte Nutzer_de.png]] | ||
| 58 | ))) | ||
| 59 | )))|((( | ||
| 60 | (% class="content-wrapper" %) | ||
| 61 | ((( | ||
| 62 | [[image:attach:Kurseditor - Konfiguration nicht für Gäste_de.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] | ||
| 63 | ))) | ||
| 64 | )))|((( | ||
| 65 | (% class="content-wrapper" %) | ||
| 66 | ((( | ||
| 67 | [[image:attach:Kursrun - Ansicht Kursverantwortlicher_de.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] | ||
| 68 | ))) | ||
| 69 | ))) | ||
| 70 | {{/expand}} | ||
| 71 | |||
| 72 | {{expand title="Making individual content in a public course visible only to guests ..."}} | ||
| 73 | (% class="wrapped" %) | ||
| 74 | |((( | ||
| 75 | (% class="content-wrapper" %) | ||
| 76 | ((( | ||
| 77 | Do you wish to display content in a public course exclusively to guests and course owners? | ||
| 78 | |||
| 79 | Enter the following content in the text field next to Expert rule in the Visibility tab of the respective course element. | ||
| 80 | |||
| 81 | {{code}} | ||
| 82 | isGuest() or isCourseAdministrator() | ||
| 83 | {{/code}} | ||
| 84 | |||
| 85 | (% class="auto-cursor-target" %) | ||
| 86 | This will make the course element in a publicly accessible course visible only to guest users and course owners. | ||
| 87 | ))) | ||
| 88 | )))|((( | ||
| 89 | (% class="content-wrapper" %) | ||
| 90 | ((( | ||
| 91 | [[image:attach:Kurseditor - Konfiguration nur Gäste und Kursverantwortliche_de.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] | ||
| 92 | ))) | ||
| 93 | ))) | ||
| 94 | |||
| 95 | After publishing, users will see the following view: | ||
| 96 | |||
| 97 | (% class="wrapped" %) | ||
| 98 | |=((( | ||
| 99 | View as a registered user | ||
| 100 | )))|=((( | ||
| 101 | View as a guest user | ||
| 102 | )))|=((( | ||
| 103 | View as a course owner | ||
| 104 | ))) | ||
| 105 | |((( | ||
| 106 | (% class="content-wrapper" %) | ||
| 107 | ((( | ||
| 108 | [[image:attach:Kursansicht - nicht für registrierte Nutzer_de.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] | ||
| 109 | ))) | ||
| 110 | )))|((( | ||
| 111 | (% class="content-wrapper" %) | ||
| 112 | ((( | ||
| 113 | [[image:attach:Kursrun - Ansicht nur Gäste_de.png]] | ||
| 114 | ))) | ||
| 115 | )))|((( | ||
| 116 | (% class="content-wrapper" %) | ||
| 117 | ((( | ||
| 118 | [[image:attach:Kursrun - Ansicht Kursverantwortlicher_de.png]] | ||
| 119 | ))) | ||
| 120 | ))) | ||
| 121 | {{/expand}} | ||
| 122 | |||
| 123 | {{expand title="Releasing course content based on test results ..."}} | ||
| 124 | Do you wish to release content depending on a test? The implementation of this scenario is explained on the help page [[Learning path control by test result>>url:https://www.bps-system.de/help/display/LMSintern/.Lernwegsteuerung+nach+Testergebnis+v12.4||shape="rect"]]. | ||
| 125 | {{/expand}} | ||
| 126 | {{/layout-cell}} | ||
| 127 | {{/layout-section}} | ||
| 128 | |||
| 129 | {{layout-section ac:type="single"}} | ||
| 130 | {{layout-cell}} | ||
| 131 | |||
| 132 | {{/layout-cell}} | ||
| 133 | {{/layout-section}} | ||
| 134 | |||
| 135 | {{layout-section ac:type="single"}} | ||
| 136 | {{layout-cell}} | ||
| 137 | == Expert rules for checking user properties == | ||
| 138 | |||
| 139 | {{info}} | ||
| 140 | All of the following example rules can be created for both the **visibility** and **access** of a course element. For simplicity, the following examples only describe one scenario at a time. | ||
| 141 | {{/info}} | ||
| 142 | {{/layout-cell}} | ||
| 143 | {{/layout-section}} | ||
| 144 | |||
| 145 | {{layout-section ac:type="single"}} | ||
| 146 | {{layout-cell}} | ||
| 147 | |||
| 148 | {{/layout-cell}} | ||
| 149 | {{/layout-section}} | ||
| 150 | |||
| 151 | {{layout-section ac:type="single"}} | ||
| 152 | {{layout-cell}} | ||
| 153 | === Checking for a user role === | ||
| 154 | |||
| 155 | (% class="wrapped" %) | ||
| 156 | |((( | ||
| 157 | Only guests but no registered users can see the course element. | ||
| 158 | )))|((( | ||
| 159 | (% class="content-wrapper" %) | ||
| 160 | ((( | ||
| 161 | Enter the following on the Visibility tab: | ||
| 162 | |||
| 163 | {{code language="text"}} | ||
| 164 | isGuest() | ||
| 165 | {{/code}} | ||
| 166 | |||
| 167 | Alternatively enter: isGuest()=true or isGuest()=1 | ||
| 168 | ))) | ||
| 169 | ))) | ||
| 170 | |((( | ||
| 171 | Guests do not have access to this course element. | ||
| 172 | )))|((( | ||
| 173 | (% class="content-wrapper" %) | ||
| 174 | ((( | ||
| 175 | Enter the following on the Access tab: | ||
| 176 | |||
| 177 | {{code language="text"}} | ||
| 178 | isGuest()=false | ||
| 179 | {{/code}} | ||
| 180 | |||
| 181 | (% class="auto-cursor-target" %) | ||
| 182 | Alternatively enter: !isGuest() | ||
| 183 | ))) | ||
| 184 | ))) | ||
| 185 | |||
| 186 | === Checking for a group membership === | ||
| 187 | |||
| 188 | (% class="wrapped" %) | ||
| 189 | |((( | ||
| 190 | Except of the (learning) group with the title "Anfänger", all course participants can see the course element. | ||
| 191 | )))|((( | ||
| 192 | (% class="content-wrapper" %) | ||
| 193 | ((( | ||
| 194 | Enter the following on the Visibility tab: | ||
| 195 | |||
| 196 | {{code language="text"}} | ||
| 197 | inLearningGroup("Anfänger")= false | ||
| 198 | {{/code}} | ||
| 199 | |||
| 200 | (% class="auto-cursor-target" %) | ||
| 201 | Alternatively enter: !inLearningGroup("Anfänger") | ||
| 202 | ))) | ||
| 203 | ))) | ||
| 204 | |((( | ||
| 205 | Only members of the "Intern" group can see the course element. Course owners and group tutors also cannot see the course element in the course navigation. | ||
| 206 | )))|((( | ||
| 207 | (% class="content-wrapper" %) | ||
| 208 | ((( | ||
| 209 | {{code language="text"}} | ||
| 210 | inLearningGroup("Intern") | ||
| 211 | {{/code}} | ||
| 212 | ))) | ||
| 213 | ))) | ||
| 214 | |((( | ||
| 215 | The course element is visible to all course participants within a certain time frame (22.03.2020 - 23.08.2020), while being visible to members of the learning group with the title "Betreuer" at any time. | ||
| 216 | )))|((( | ||
| 217 | (% class="content-wrapper" %) | ||
| 218 | ((( | ||
| 219 | Enter the following on the Visibility tab: | ||
| 220 | |||
| 221 | {{code language="text"}} | ||
| 222 | (now >= date("22.03.2020 12:00")) and (now <= date("23.08.2020 18:00")) or inLearningGroup("Betreuer") | ||
| 223 | {{/code}} | ||
| 224 | ))) | ||
| 225 | ))) | ||
| 226 | |((( | ||
| 227 | The course element is visible to all course participants in the right group with the title “Assessoren" within a certain time frame (03.09.2020 - 13.10.2020), while being always visible to the person with the username "natalie". | ||
| 228 | )))|((( | ||
| 229 | (% class="content-wrapper" %) | ||
| 230 | ((( | ||
| 231 | Enter the following on the Visibility tab: | ||
| 232 | |||
| 233 | {{code language="text"}} | ||
| 234 | (now >= date("03.09.2020 00:00")) and (now <= date("13.10.2020 00:00")) and inRightGroup("Assessoren")or isUser("natalie") | ||
| 235 | {{/code}} | ||
| 236 | ))) | ||
| 237 | ))) | ||
| 238 | |||
| 239 | === Checking of user attributes === | ||
| 240 | |||
| 241 | {{info}} | ||
| 242 | In addition to these institution-independent examples, there are also institution-dependent rules that restrict and transmit data according to the user's institution. | ||
| 243 | For OPAL users, the help page [[Overview of OPAL Shibboleth attributes>>doc:LMS.Benutzerhandbuch OPAL.Administration.OPAL Shibboleth Attribute.WebHome]] contains all currently usable institution-specific attributes of Saxon institutions. | ||
| 244 | {{/info}} | ||
| 245 | |||
| 246 | (% class="wrapped" %) | ||
| 247 | |((( | ||
| 248 | This course element can be accessed by everyone whose study subject attribute contains the letter sequence "Chemie". | ||
| 249 | |||
| 250 | This means that users with the study subject "Chemie BA" or "Chemie MA" can use the course element, but users with the study subject "Chemische Wasseraufbereitung" cannot. | ||
| 251 | )))|((( | ||
| 252 | (% class="content-wrapper" %) | ||
| 253 | ((( | ||
| 254 | Enter the following on the Access tab: | ||
| 255 | |||
| 256 | {{code language="text"}} | ||
| 257 | isInAttribute("studySubject","Chemie") | ||
| 258 | {{/code}} | ||
| 259 | |||
| 260 | {{expand title="Examples of further attributes ..."}} | ||
| 261 | {{info}} | ||
| 262 | Different user attributes can be configured depending on the system. Therefore, it is advisable to check beforehand which user attributes are available on your platform. | ||
| 263 | |||
| 264 | Examples of user attributes: | ||
| 265 | |||
| 266 | * Username: username | ||
| 267 | * Email address: email | ||
| 268 | * Term: termsOfStudy | ||
| 269 | * Institution: institutionalName | ||
| 270 | * Matriculation number: institutionalUserIdentifier | ||
| 271 | * Location: standort | ||
| 272 | * Study subject: studySubject | ||
| 273 | * Study group: studyGroup | ||
| 274 | * Organisation unit: orgUnit | ||
| 275 | * First name: firstName | ||
| 276 | * Last name: lastName | ||
| 277 | {{/info}} | ||
| 278 | {{/expand}} | ||
| 279 | ))) | ||
| 280 | ))) | ||
| 281 | |((( | ||
| 282 | Only users from the "Marketing" organisation unit can see the course element. | ||
| 283 | )))|((( | ||
| 284 | (% class="content-wrapper" %) | ||
| 285 | ((( | ||
| 286 | Enter the following on the Visibility tab: | ||
| 287 | |||
| 288 | {{code language="text"}} | ||
| 289 | (getUserProperty("orgUnit") = "Marketing") | ||
| 290 | {{/code}} | ||
| 291 | ))) | ||
| 292 | ))) | ||
| 293 | {{/layout-cell}} | ||
| 294 | {{/layout-section}} | ||
| 295 | |||
| 296 | {{layout-section ac:type="single"}} | ||
| 297 | {{layout-cell}} | ||
| 298 | |||
| 299 | {{/layout-cell}} | ||
| 300 | {{/layout-section}} | ||
| 301 | |||
| 302 | {{layout-section ac:type="single"}} | ||
| 303 | {{layout-cell}} | ||
| 304 | === Evaluation of the enrolment date === | ||
| 305 | |||
| 306 | {{info}} | ||
| 307 | Some of the following example rules check for an enrolment course element. For example, you can use //getInitialEnrollmentDate// if only the initial enrolment is to be considered, independent of a later deregistration from the course element. Alternatively, you can also use //getRecentEnrollmentDate// if each enrolment is to be re-evaluated. For simplicity, the following examples only describe one scenario at a time. | ||
| 308 | {{/info}} | ||
| 309 | |||
| 310 | (% class="wrapped" %) | ||
| 311 | |((( | ||
| 312 | Access to a course element is possible depending on a specific **enrolment date**. | ||
| 313 | |||
| 314 | Course participants who got enrolled via an enrolment course element (course element ID "70323786958847") before May 26, 2020, 6 pm can use the course element. | ||
| 315 | )))|((( | ||
| 316 | (% class="content-wrapper" %) | ||
| 317 | ((( | ||
| 318 | Enter the following on the Access tab: | ||
| 319 | |||
| 320 | {{code language="text"}} | ||
| 321 | getInitialEnrollmentDate("70323786958847") <= date("26.5.2020 18:00") | ||
| 322 | {{/code}} | ||
| 323 | ))) | ||
| 324 | ))) | ||
| 325 | |((( | ||
| 326 | Each course participant can see the course element **from** a **relative point in time**, e. g. only 2 hours after the enrolment (course element ID "70323786958847"). | ||
| 327 | )))|((( | ||
| 328 | (% class="content-wrapper" %) | ||
| 329 | ((( | ||
| 330 | Enter the following on the Visibility tab: | ||
| 331 | |||
| 332 | {{code language="text"}} | ||
| 333 | getInitialEnrollmentDate("70323786958847") + 2h < now | ||
| 334 | {{/code}} | ||
| 335 | ))) | ||
| 336 | ))) | ||
| 337 | |((( | ||
| 338 | (% class="content-wrapper" %) | ||
| 339 | ((( | ||
| 340 | Each course participant can only see the course element **up to** a **relative point in time**, e. g. only for the first 2 hours after the enrolment (course element ID "70323786958847"). | ||
| 341 | |||
| 342 | {{note}} | ||
| 343 | When using this rule, make sure that the visibility of the learning group is already limited by a higher level course element. Otherwise, if you only use this rule, non-enrolled users and guests will always have access to this course element. | ||
| 344 | {{/note}} | ||
| 345 | ))) | ||
| 346 | )))|((( | ||
| 347 | (% class="content-wrapper" %) | ||
| 348 | ((( | ||
| 349 | Enter the following on the Visibility tab: | ||
| 350 | |||
| 351 | {{code language="text"}} | ||
| 352 | getInitialEnrollmentDate("70323786958847") + 2h > now | ||
| 353 | {{/code}} | ||
| 354 | ))) | ||
| 355 | ))) | ||
| 356 | |((( | ||
| 357 | Each course participant can only see the course element **within** a **relative time period**, e. g. starting 2 hours prior to the enrolment (course element ID "70323786958847") until 5 hours after the enrolment. Course tutors are exempt from this restriction. | ||
| 358 | )))|((( | ||
| 359 | (% class="content-wrapper" %) | ||
| 360 | ((( | ||
| 361 | Enter the following on the Visibility tab: | ||
| 362 | |||
| 363 | {{code language="text"}} | ||
| 364 | (getInitialEnrollmentDate("101524102434663") + 2h < now and getInitialEnrollmentDate("101524102434663") + 5h > now ) or isCourseCoach(0) or isCourseAdministrator(0) | ||
| 365 | {{/code}} | ||
| 366 | ))) | ||
| 367 | ))) | ||
| 368 | |(% colspan="1" %)(% colspan="1" %) | ||
| 369 | ((( | ||
| 370 | Each course participant can only see the course element for a certain **period of time** (during the first two hours of the first course visit). | ||
| 371 | )))|(% colspan="1" %)(% colspan="1" %) | ||
| 372 | ((( | ||
| 373 | (% class="content-wrapper" %) | ||
| 374 | ((( | ||
| 375 | Enter the following on the Visibility tab: | ||
| 376 | |||
| 377 | {{code language="text"}} | ||
| 378 | (getInitialCourseLaunchDate() >= never) or (getInitialCourseLaunchDate() + 2h > now) | ||
| 379 | {{/code}} | ||
| 380 | ))) | ||
| 381 | ))) | ||
| 382 | |(% colspan="1" %)(% colspan="1" %) | ||
| 383 | ((( | ||
| 384 | The course element becomes only visible if the user has been active in the course **for more than 10 minutes**. | ||
| 385 | )))|(% colspan="1" %)(% colspan="1" %) | ||
| 386 | ((( | ||
| 387 | (% class="content-wrapper" %) | ||
| 388 | ((( | ||
| 389 | Enter the following on the Visibility tab: | ||
| 390 | |||
| 391 | {{code language="text"}} | ||
| 392 | (getRecentCourseLaunchDate() + 10min) > now | ||
| 393 | {{/code}} | ||
| 394 | ))) | ||
| 395 | ))) | ||
| 396 | {{/layout-cell}} | ||
| 397 | {{/layout-section}} | ||
| 398 | |||
| 399 | {{layout-section ac:type="single"}} | ||
| 400 | {{layout-cell}} | ||
| 401 | |||
| 402 | {{/layout-cell}} | ||
| 403 | {{/layout-section}} | ||
| 404 | |||
| 405 | {{layout-section ac:type="single"}} | ||
| 406 | {{layout-cell}} | ||
| 407 | == Expert rules with specific course elements == | ||
| 408 | |||
| 409 | {{info}} | ||
| 410 | In all of the following examples, specific course elements are used. | ||
| 411 | |||
| 412 | Before using these rules, note down the course element IDs of the relevant course elements for your scenario and adjust them accordingly in the expert rules. | ||
| 413 | {{/info}} | ||
| 414 | {{/layout-cell}} | ||
| 415 | {{/layout-section}} | ||
| 416 | |||
| 417 | {{layout-section ac:type="single"}} | ||
| 418 | {{layout-cell}} | ||
| 419 | |||
| 420 | {{/layout-cell}} | ||
| 421 | {{/layout-section}} | ||
| 422 | |||
| 423 | {{layout-section ac:type="single"}} | ||
| 424 | {{layout-cell}} | ||
| 425 | === Evaluation of the number of attempts === | ||
| 426 | |||
| 427 | (% class="wrapped" %) | ||
| 428 | |((( | ||
| 429 | The course element becomes visible as soon as the respective course participant has performed the test course element (course element ID "70323786958847") for the first time. | ||
| 430 | )))|((( | ||
| 431 | (% class="content-wrapper" %) | ||
| 432 | ((( | ||
| 433 | Enter the following on the Visibility tab: | ||
| 434 | |||
| 435 | {{code language="text"}} | ||
| 436 | getAttempts("70323786958847") > 0 | ||
| 437 | {{/code}} | ||
| 438 | ))) | ||
| 439 | ))) | ||
| 440 | |((( | ||
| 441 | Users should no longer be able to see a course element as soon as they have placed more than 3 files in the drop box of a task course element (course element ID "70323524635734"). | ||
| 442 | )))|((( | ||
| 443 | (% class="content-wrapper" %) | ||
| 444 | ((( | ||
| 445 | Enter the following on the Visibility tab: | ||
| 446 | |||
| 447 | {{code language="text"}} | ||
| 448 | getAttempts("70323524635734") <= 3 | ||
| 449 | {{/code}} | ||
| 450 | ))) | ||
| 451 | ))) | ||
| 452 | {{/layout-cell}} | ||
| 453 | {{/layout-section}} | ||
| 454 | |||
| 455 | {{layout-section ac:type="single"}} | ||
| 456 | {{layout-cell}} | ||
| 457 | |||
| 458 | {{/layout-cell}} | ||
| 459 | {{/layout-section}} | ||
| 460 | |||
| 461 | {{layout-section ac:type="single"}} | ||
| 462 | {{layout-cell}} | ||
| 463 | === Evaluation of other course elements' assessment data === | ||
| 464 | |||
| 465 | (% class="wrapped" %) | ||
| 466 | |((( | ||
| 467 | The course element is visible as soon as the user has reached at least 10 points in the test (course element ID "84692289655276"). | ||
| 468 | )))|((( | ||
| 469 | (% class="content-wrapper" %) | ||
| 470 | ((( | ||
| 471 | Enter the following on the Visibility tab: | ||
| 472 | |||
| 473 | {{code language="text"}} | ||
| 474 | getOnyxTestOutcome("84692289655276","SCORE") >= 10 | ||
| 475 | {{/code}} | ||
| 476 | ))) | ||
| 477 | ))) | ||
| 478 | |((( | ||
| 479 | The course element is visible as soon as the user has passed the test (course element ID "84389429397045"). | ||
| 480 | )))|((( | ||
| 481 | (% class="content-wrapper" %) | ||
| 482 | ((( | ||
| 483 | Enter the following on the Visibility tab: | ||
| 484 | |||
| 485 | {{code language="text"}} | ||
| 486 | getOnyxTestOutcomeZK("84389429397045","PASS") ="true" | ||
| 487 | {{/code}} | ||
| 488 | ))) | ||
| 489 | ))) | ||
| 490 | |((( | ||
| 491 | The course element is visible if the user's grade for the indicated element (course element ID "84692289655276") is better than 4. | ||
| 492 | )))|((( | ||
| 493 | (% class="content-wrapper" %) | ||
| 494 | ((( | ||
| 495 | Enter the following on the Visibility tab: | ||
| 496 | |||
| 497 | {{code language="text"}} | ||
| 498 | getMark("84692289655276") < 4 | ||
| 499 | {{/code}} | ||
| 500 | ))) | ||
| 501 | ))) | ||
| 502 | |((( | ||
| 503 | The course element is visible when the user has completed the indicated course element (course element ID "69742969114730") (course progress). | ||
| 504 | )))|((( | ||
| 505 | (% class="content-wrapper" %) | ||
| 506 | ((( | ||
| 507 | Enter the following on the Visibility tab: | ||
| 508 | |||
| 509 | {{code language="text"}} | ||
| 510 | getProgress("69742969114730")>=100 | ||
| 511 | {{/code}} | ||
| 512 | ))) | ||
| 513 | ))) | ||
| 514 | |||
| 515 | {{info}} | ||
| 516 | The implementation of another example of the use of expert rules is explained on the help page [[Learning path control by test result>>doc:LMS.Benutzerhandbuch OPAL.Lehren.Leitfäden.Lernwegsteuerung nach Testergebnis.WebHome]]. | ||
| 517 | {{/info}} | ||
| 518 | {{/layout-cell}} | ||
| 519 | {{/layout-section}} | ||
| 520 | |||
| 521 | {{layout-section ac:type="single"}} | ||
| 522 | {{layout-cell}} | ||
| 523 | |||
| 524 | {{/layout-cell}} | ||
| 525 | {{/layout-section}} | ||
| 526 | |||
| 527 | {{layout-section ac:type="single"}} | ||
| 528 | {{layout-cell}} | ||
| 529 | === Controlling visibility and access based on test output variables (ONYX) === | ||
| 530 | |||
| 531 | If global test variables are used in a test course element, they can also be used to control visibility and access. | ||
| 532 | |||
| 533 | {{info}} | ||
| 534 | The available test variables can be viewed in the corresponding test course element in the Test configuration tab via the **Output variables of this resource** link. In addition to visibility and access rules (expert syntax), they can also be used as [[placeholders in certificate templates>>doc:LMS.Benutzerhandbuch OPAL.Lehren.Bewertung.Zertifikate.WebHome]]. | ||
| 535 | |||
| 536 | [[image:attach:Kurseditor - Ausgabevariablen_de.png]] | ||
| 537 | {{/info}} | ||
| 538 | |||
| 539 | (% class="wrapped" %) | ||
| 540 | |((( | ||
| 541 | The course element is visible if the user has reached a value greater than 10 for the test variable "S1_max" in the indicated test course element (course element ID "69742969114730"). | ||
| 542 | )))|((( | ||
| 543 | (% class="content-wrapper" %) | ||
| 544 | ((( | ||
| 545 | Enter the following on the Visibility tab: | ||
| 546 | |||
| 547 | {{code language="text"}} | ||
| 548 | getOnyxTestOutcome("84692289655276","S1_max") > 10 | ||
| 549 | {{/code}} | ||
| 550 | ))) | ||
| 551 | ))) | ||
| 552 | |((( | ||
| 553 | The course element is visible if the user has exactly the value "Wiederholen" for the test variable “feedbackE" in the indicated test course element (course element ID "69742969114730"). | ||
| 554 | )))|((( | ||
| 555 | (% class="content-wrapper" %) | ||
| 556 | ((( | ||
| 557 | Enter the following on the Visibility tab: | ||
| 558 | |||
| 559 | {{code language="text"}} | ||
| 560 | getOnyxTestOutcome("84692289655276","feedbackE")="Wiederholen" | ||
| 561 | {{/code}} | ||
| 562 | ))) | ||
| 563 | ))) | ||
| 564 | {{/layout-cell}} | ||
| 565 | {{/layout-section}} | ||
| 566 | |||
| 567 | {{layout-section ac:type="single"}} | ||
| 568 | {{layout-cell}} | ||
| 569 | |||
| 570 | {{/layout-cell}} | ||
| 571 | {{/layout-section}} | ||
| 572 | |||
| 573 | {{layout-section ac:type="single"}} | ||
| 574 | {{layout-cell}} | ||
| 575 | === Set scoring or passing status automatically === | ||
| 576 | |||
| 577 | {{info}} | ||
| 578 | These rules can be set in a **structure course element **in the** Assessment tab** in the respective input field. | ||
| 579 | |||
| 580 | [[image:attach:Kurseditor - Expertenregeln zur Bewertung_de.png]] | ||
| 581 | {{/info}} | ||
| 582 | |||
| 583 | (% class="wrapped" %) | ||
| 584 | |((( | ||
| 585 | **Automatic scoring:** | ||
| 586 | |||
| 587 | 10 points should automatically be awarded for a structure course element if one of three test course elements (course element IDs "69742969114730", "69742969115733" or "69742969118009") has been passed. If this is not the case, 0 points should automatically be set for the structure course element. | ||
| 588 | )))|((( | ||
| 589 | (% class="content-wrapper" %) | ||
| 590 | ((( | ||
| 591 | This rule is set in the **Process points** section. | ||
| 592 | |||
| 593 | {{code language="text"}} | ||
| 594 | getPassed("69742969114730") or getPassed("69742969115733") or getPassed("69742969118009")) * 10 | ||
| 595 | {{/code}} | ||
| 596 | ))) | ||
| 597 | ))) | ||
| 598 | |((( | ||
| 599 | **Set passing status automatically:** | ||
| 600 | |||
| 601 | A structure course element should automatically be displayed as passed if a total of at least 140 points has been reached in all test course elements (course element IDs "69742969114730", "69742969115733" or "69742969118009") together or if a "passed" was manually set for the assessment course element (ID "69978845384688"). | ||
| 602 | )))|((( | ||
| 603 | (% class="content-wrapper" %) | ||
| 604 | ((( | ||
| 605 | This rule is set in the **Passed if** section. | ||
| 606 | |||
| 607 | {{code language="text"}} | ||
| 608 | (getScore("69742969114730") + getScore("69742969115733") + getScore("69742969118009")) >= 140 or getPassed("69978845384688") | ||
| 609 | {{/code}} | ||
| 610 | ))) | ||
| 611 | ))) | ||
| 612 | {{/layout-cell}} | ||
| 613 | {{/layout-section}} | ||
| 614 | {{/layout}} |