Wiki-Quellcode von Expertenregeln Beispiele

Version 54.1 von Carina Enke am 20.12.2023

Zeige letzte Bearbeiter
1
2 {{layout}}
3 {{layout-section ac:type="single"}}
4 {{layout-cell}}
5 \\
6 {{/layout-cell}}
7 {{/layout-section}}
8
9 {{layout-section ac:type="two_right_sidebar"}}
10 {{layout-cell}}
11 (% class="auto-cursor-target" %)
12 Expertenregeln bieten vielfältige Einsatzmöglichkeiten und können unterschiedliche Auswirkungen haben. Einen kleinen Einblick geben die Beispiele zur Anwendung auf dieser Seite.
13
14 \\
15 {{/layout-cell}}
16
17 {{layout-cell}}
18 {{scroll-ignore}}
19 {{panel title="Inhalt"}}
20
21
22 {{toc/}}
23 {{/panel}}
24 {{/scroll-ignore}}
25 {{/layout-cell}}
26 {{/layout-section}}
27
28 {{layout-section ac:type="single"}}
29 {{layout-cell}}
30 == Expertenregeln in Beispielbildern**
31 ** ==
32
33 In diesen Beispielen sehen Sie, wie Expertenregeln konfiguriert werden und wie sie sich in der Kursansicht auswirken.
34
35 \\
36
37 {{expand title="In einem öffentlichen Kurs einzelne Inhalte nur für registrierte Nutzer sichtbar schalten ..."}}
38 (% class="wrapped" %)
39 |(((
40 (% class="content-wrapper" %)
41 (((
42 Sie wollen Inhalte in einem öffentlichen Kurs vor Gästen verbergen?
43
44 Tragen Sie im Tab Sichtbarkeit des betreffenden Kursbausteins bei Expertenmodus in das Textfeld nachfolgenden Inhalt ein.
45
46 {{code}}
47 isGuest()=false
48 {{/code}}
49
50 (% class="auto-cursor-target" %)
51 Damit wird der Kursbaustein in einem öffentlich zugänglichen Kurs für nicht registrierte Gastnutzer angezeigt.
52 )))
53 )))|(((
54 (% class="content-wrapper" %)
55 (((
56 [[image:attach:Kurseditor - Konfiguration nur registrierte Nutzer_de.png]]
57 )))
58 )))
59
60 (% class="auto-cursor-target" %)
61 Nach dem Publizieren sehen Nutzer folgende Ansicht:
62
63 (% class="wrapped" %)
64 |=(((
65 Ansicht als registrierter Nutzer
66 )))|=(% colspan="1" %)(% colspan="1" %)
67 (((
68 Ansicht als Gastnutzer
69 )))|=(% colspan="1" %)(% colspan="1" %)
70 (((
71 Ansicht als Kursverantwortlicher
72 )))
73 |(% colspan="1" %)(% colspan="1" %)
74 (((
75 (% class="content-wrapper" %)
76 (((
77 [[image:attach:Kursrun - Ansicht registrierte Nutzer_de.png]]
78 )))
79 )))|(% colspan="1" %)(% colspan="1" %)
80 (((
81 (% class="content-wrapper" %)
82 (((
83 [[image:attach:Kurseditor - Konfiguration nicht für Gäste_de.png]]
84 )))
85 )))|(% colspan="1" %)(% colspan="1" %)
86 (((
87 (% class="content-wrapper" %)
88 (((
89 [[image:attach:Kursrun - Ansicht Kursverantwortlicher_de.png]]
90 )))
91 )))
92 {{/expand}}
93
94 {{expand title="In einem öffentlichen Kurs einzelne Inhalte nur für Gäste sichtbar schalten ..."}}
95 \\
96
97 (% class="wrapped" %)
98 |(((
99 (% class="content-wrapper" %)
100 (((
101 Sie wollen Inhalte in einem öffentlichen Kurs ausschließlich Gästen und Kursverantwortlichen anzeigen?
102
103 Tragen Sie im Tab Sichtbarkeit des betreffenden Kursbausteins bei Expertenmodus in das Textfeld nachfolgenden Inhalt ein.
104
105 {{code}}
106 isGuest() or isCourseAdministrator()
107 {{/code}}
108
109 (% class="auto-cursor-target" %)
110 Damit wird der Kursbaustein in einem öffentlich zugänglichen Kurs nur Gastnutzern und Kursverantwortlichen angezeigt.
111 )))
112 )))|(((
113 (% class="content-wrapper" %)
114 (((
115 [[image:attach:Kurseditor - Konfiguration nur Gäste und Kursverantwortliche_de.png]]
116 )))
117 )))
118
119 (% class="auto-cursor-target" %)
120 Nach dem Publizieren sehen Nutzer folgende Ansicht:
121
122 (% class="wrapped relative-table" style="width: 58.8305%;" %)
123 |=(((
124 Ansicht als registrierter Nutzer
125 )))|=(% colspan="1" %)(% colspan="1" %)
126 (((
127 Ansicht als Gastnutzer
128 )))|=(% colspan="1" %)(% colspan="1" %)
129 (((
130 Ansicht als Kursverantwortlicher
131 )))
132 |(% colspan="1" %)(% colspan="1" %)
133 (((
134 (% class="content-wrapper" %)
135 (((
136 [[image:attach:Kursansicht - nicht für registrierte Nutzer_de.png]]
137 )))
138 )))|(% colspan="1" %)(% colspan="1" %)
139 (((
140 (% class="content-wrapper" %)
141 (((
142 [[image:attach:Kursrun - Ansicht nur Gäste_de.png]]
143 )))
144 )))|(% colspan="1" %)(% colspan="1" %)
145 (((
146 (% class="content-wrapper" %)
147 (((
148 [[image:attach:Kursrun - Ansicht Kursverantwortlicher_de.png]]
149 )))
150 )))
151 {{/expand}}
152
153 {{expand title="Kursinhalte nach Testergebnis freigeben ..."}}
154 Sie wollen Inhalte in Abhängigkeit eines Tests freigeben? Die Umsetzung dieses Szenarios wird auf der Seite [[doc:Lernwegsteuerung nach Testergebnis]] erläutert.
155 {{/expand}}
156 {{/layout-cell}}
157 {{/layout-section}}
158
159 {{layout-section ac:type="single"}}
160 {{layout-cell}}
161 \\
162 {{/layout-cell}}
163 {{/layout-section}}
164
165 {{layout-section ac:type="single"}}
166 {{layout-cell}}
167 == Expertenregeln zur Prüfung von Nutzereigenschaften ==
168
169 {{info}}
170 Alle nachfolgenden Beispielregeln lassen sich für die **Sichtbarkeit** und ebenso für den **Zugang** eines Kursbausteins anlegen. Zur Vereinfachung wird in den folgenden Beispielen immer nur ein Szenario beschrieben.
171 {{/info}}
172 {{/layout-cell}}
173 {{/layout-section}}
174
175 {{layout-section ac:type="single"}}
176 {{layout-cell}}
177 \\
178 {{/layout-cell}}
179 {{/layout-section}}
180
181 {{layout-section ac:type="single"}}
182 {{layout-cell}}
183 (% class="auto-cursor-target" %)
184 === Prüfung auf eine Nutzerrolle ===
185
186 (% class="wrapped" %)
187 |(((
188 Nur Gäste sehen den Kursbaustein, alle registrierten Nutzer dagegen nicht.
189 )))|(((
190 (% class="content-wrapper" %)
191 (((
192 Tragen Sie im Tab Sichtbarkeit ein:
193
194 {{code language="text"}}
195 isGuest()
196 {{/code}}
197
198 (% class="auto-cursor-target" %)
199 Alternativ: isGuest()=true oder isGuest()=1
200 )))
201 )))
202 |(((
203 Gäste haben keinen Zugang zu diesem Kursbaustein.
204 )))|(((
205 (% class="content-wrapper" %)
206 (((
207 (% class="auto-cursor-target" %)
208 Tragen Sie im Tab Zugang ein:
209
210 {{code language="text"}}
211 isGuest()=false
212 {{/code}}
213
214 (% class="auto-cursor-target" %)
215 Alternativ: !isGuest()
216 )))
217 )))
218
219 (% class="auto-cursor-target" %)
220 === Prüfung auf eine Gruppenzugehörigkeit ===
221
222 (% class="wrapped" %)
223 |(((
224 Mit Ausnahme der (Lern)Gruppe mit dem Titel "Anfänger" sehen alle Kursteilnehmer den Kursbaustein.
225 )))|(((
226 (% class="content-wrapper" %)
227 (((
228 Tragen Sie im Tab Sichtbarkeit ein:
229
230 {{code language="text"}}
231 inLearningGroup("Anfänger")= false
232
233 {{/code}}
234
235 (% class="auto-cursor-target" %)
236 Alternativ: !inLearningGroup("Anfänger")
237 )))
238 )))
239 |(% colspan="1" %)(% colspan="1" %)
240 (((
241 Nur Mitglieder der Gruppe "Intern" sehen den Kursbaustein. Auch Kursverantwortliche und Gruppenbetreuer sehen den Kursbaustein in der Kursnavigation nicht.
242 )))|(% colspan="1" %)(% colspan="1" %)
243 (((
244 (% class="content-wrapper" %)
245 (((
246 {{code language="text"}}
247 inLearningGroup("Intern")
248 {{/code}}
249 )))
250 )))
251 |(((
252 Der Kursbaustein ist innerhalb eines Zeitraums (22.03.2020 - 23.08.2020) für alle Kursteilnehmer sichtbar, während er für Mitglieder der Lerngruppe mit dem Titel "Betreuer" jederzeit sichtbar ist.
253 )))|(((
254 (% class="content-wrapper" %)
255 (((
256 Tragen Sie im Tab Sichtbarkeit ein:
257
258 {{code language="text"}}
259 (now >= date("22.03.2020 12:00")) and (now <= date("23.08.2020 18:00")) or inLearningGroup("Betreuer")
260 {{/code}}
261 )))
262 )))
263 |(((
264 Der Kursbaustein ist innerhalb eines Zeitraums (03.09.2020 - 13.10.2020) für alle Kursteilnehmer der Rechtegruppe mit dem Titel "Assessoren" sichtbar, während er für die Person mit dem Benutzernamen "natalie" jederzeit sichtbar ist.
265 )))|(((
266 (% class="content-wrapper" %)
267 (((
268 (% class="auto-cursor-target" %)
269 Tragen Sie im Tab Sichtbarkeit ein:
270
271 {{code language="text"}}
272 (now >= date("03.09.2020 00:00")) and (now <= date("13.10.2020 00:00")) and inRightGroup("Assessoren")or isUser("natalie")
273 {{/code}}
274 )))
275 )))
276
277 (% class="auto-cursor-target" %)
278 === Prüfung von Benutzerattributen ===
279
280 {{info}}
281 Neben den allgemeinen Beispielen, die unabhängig von der Institution verwendet werden können, sind auch Einschränkungen zu Daten möglich, welche institutionsspezifisch sind und je nach Institution übermittelt werden.
282 Für OPAL Nutzer enthält die Seite [[Übersicht der OPAL-Shibboleth-Attribute>>url:https://bildungsportal.sachsen.de/help/attribute-opal_de.html||shape="rect"]] alle aktuell verwendbaren institutionsspezifischen Attribute sächsischer Institutionen.
283 {{/info}}
284
285 (% class="wrapped" %)
286 |(((
287 Der Kursbaustein ist für alle Personen, deren Attribut Studiengang die Buchstabenfolge "Chemie" enthält zugänglich.
288
289 Somit können Personen mit dem Studiengang "Chemie BA" und auch "Chemie MA" den Kursbaustein nutzen, Nutzer mt dem Studiengang "Chemische Wasseraufbereitung" jedoch nicht.
290 )))|(((
291 (% class="content-wrapper" %)
292 (((
293 (% class="auto-cursor-target" %)
294 Tragen Sie im Tab Zugang ein:
295
296 {{code language="text"}}
297 isInAttribute("studySubject","Chemie")
298 {{/code}}
299
300 {{expand title="Beispiele für weitere Attribute ..."}}
301 {{info}}
302 Je nach System sind unterschiedliche Nutzerattribute konfigurierbar. Prüfen Sie deshalb vorher welche Benutzerattribute in Ihrer Plattform verfügbar sind.
303
304 Beispiele für Nutzerattribute:
305
306 * Nutzername: username
307 * E-Mail-Adresse: email
308 * Fachsemester: termsOfStudy
309 * Institution: institutionalName
310 * Matrikelnummer: institutionalUserIdentifier
311 * Standort: standort
312 * Studiengang: studySubject
313 * Studiengruppe: studyGroup
314 * Organisationseinheit: orgUnit
315 * Vorname: firstName
316 * Nachname: lastName
317 {{/info}}
318 {{/expand}}
319 )))
320 )))
321 |(((
322 Nur Personen aus der Organisationseinheit "Marketing" sehen den Kursbaustein.
323 )))|(((
324 (% class="content-wrapper" %)
325 (((
326 (% class="auto-cursor-target" %)
327 Tragen Sie im Tab Sichtbarkeit ein:
328
329 {{code language="text"}}
330 (getUserProperty("orgUnit") = "Marketing")
331 {{/code}}
332 )))
333 )))
334 {{/layout-cell}}
335 {{/layout-section}}
336
337 {{layout-section ac:type="single"}}
338 {{layout-cell}}
339 \\
340 {{/layout-cell}}
341 {{/layout-section}}
342
343 {{layout-section ac:type="single"}}
344 {{layout-cell}}
345 === Auswertung Einschreibezeitpunkt ===
346
347 {{info}}
348 Einige der nachfolgenden Beispielregeln prüfen auf einen Kursbaustein Einschreibung. Dafür kann //getInitialEnrollmentDate// genutzt werden, wenn nur die erstmalige Einschreibung, unabhängig von einem späteren Austragen aus dem Kursbaustein, beachtet werden soll. Oder alternativ //getRecentEnrollmentDate, //wenn jede Einschreibung neu ausgewertet werden soll. Zur Vereinfachung wird in den folgenden Beispielen immer nur ein Szenario beschrieben.
349 {{/info}}
350
351 (% class="wrapped" %)
352 |(((
353 Der Zugang zu einem Kursbaustein wird abhängig von einem konkreten **Zeitpunkt einer Einschreibung** möglich.
354
355 Kursteilnehmer, die sich vor dem 26. Mai 2020, 18:00 Uhr über einen Kursbaustein Einschreibung (Kursbaustein-ID "70323786958847") eingeschrieben haben, können den Kursbaustein nutzen.
356 )))|(((
357 (% class="content-wrapper" %)
358 (((
359 (% class="auto-cursor-target" %)
360 Tragen Sie im Tab Zugang ein:
361
362 {{code language="text"}}
363 getInitialEnrollmentDate("70323786958847") <= date("26.5.2020 18:00")
364
365 {{/code}}
366 )))
367 )))
368 |(% colspan="1" %)(% colspan="1" %)
369 (((
370 (% class="content-wrapper" %)
371 (((
372 Jeder Kursteilnehmer kann **ab **einem **relativen Zeitpunkt**, z. B. erst 2 Stunden nach der Einschreibung (Kursbaustein-ID "70323786958847"), den Kursbaustein sehen.
373 )))
374 )))|(% colspan="1" %)(% colspan="1" %)
375 (((
376 (% class="content-wrapper" %)
377 (((
378 (% class="auto-cursor-target" %)
379 Tragen Sie im Tab Sichtbarkeit ein:
380
381 {{code language="text"}}
382 getInitialEnrollmentDate("70323786958847") + 2h < now
383 {{/code}}
384 )))
385 )))
386 |(% colspan="1" %)(% colspan="1" %)
387 (((
388 (% class="content-wrapper" %)
389 (((
390 Jeder Kursteilnehmer kann nur **bis** zu einem **relativen Zeitpunkt**, z. B. nur für die ersten 2 Stunden nach der Einschreibung (Kursbaustein-ID "70323786958847"), den Kursbaustein sehen.
391 )))
392
393 {{note}}
394 Stellen Sie für die Nutzung dieser Regel sicher, dass ein übergeordneter Kursbaustein bereits die Sichtbarkeit auf die Lerngruppe einschränkt. Wenn Sie dies nicht tun und nur diese Regel nutzen, haben bspw. nicht eingeschriebene Nutzer und Gäste immer Zugang zu diesem Kursbaustein.
395 {{/note}}
396 )))|(% colspan="1" %)(% colspan="1" %)
397 (((
398 (% class="content-wrapper" %)
399 (((
400 (% class="auto-cursor-target" %)
401 Tragen Sie im Tab Sichtbarkeit ein:
402
403 {{code language="text"}}
404 getInitialEnrollmentDate("70323786958847") + 2h > now
405 {{/code}}
406 )))
407 )))
408 |(((
409 (% class="content-wrapper" %)
410 (((
411 Jeder Kursteilnehmer kann den Kursbaustein nur **innerhalb **eines **relativen Zeitraumes **sehen, z. B. beginnend 2 Stunden nach der Einschreibung (Kursbaustein-ID "70323786958847") bis 5 Stunden nach der Einschreibung. Kursbetreuer sind von dieser Einschränkung ausgenommen.
412 )))
413 )))|(((
414 (% class="content-wrapper" %)
415 (((
416 (% class="auto-cursor-target" %)
417 Tragen Sie im Tab Sichtbarkeit ein:
418
419 {{code language="text"}}
420 (getInitialEnrollmentDate("101524102434663") + 2h < now and getInitialEnrollmentDate("101524102434663") + 5h > now ) or isCourseCoach() or isCourseAdministrator()
421 {{/code}}
422 )))
423 )))
424 |(((
425 Jeder Kursteilnehmer kann nur während einer bestimmten **Zeitdauer** (während der ersten zwei Stunden des ersten Kursbesuchs) den Kursbaustein sehen.
426 )))|(((
427 (% class="content-wrapper" %)
428 (((
429 (% class="auto-cursor-target" %)
430 Tragen Sie im Tab Sichtbarkeit ein:
431
432 {{code language="text"}}
433 (getInitialCourseLaunchDate() >= never) or (getInitialCourseLaunchDate() + 2h > now)
434 {{/code}}
435 )))
436 )))
437 |(((
438 Der Kursbaustein wird erst sichbar, wenn sich der Benutzer **seit mehr als 10 Minuten** im Kurs bewegt.
439 )))|(((
440 (% class="content-wrapper" %)
441 (((
442 (% class="auto-cursor-target" %)
443 Tragen Sie im Tab Sichtbarkeit ein:
444
445 {{code language="text"}}
446 (getRecentCourseLaunchDate() + 10min) > now
447 {{/code}}
448 )))
449 )))
450 {{/layout-cell}}
451 {{/layout-section}}
452
453 {{layout-section ac:type="single"}}
454 {{layout-cell}}
455 \\
456 {{/layout-cell}}
457 {{/layout-section}}
458
459 {{layout-section ac:type="single"}}
460 {{layout-cell}}
461 (% class="auto-cursor-target" %)
462 == Expertenregeln mit spezifischen Kursbausteinen ==
463
464 {{info}}
465 In allen nachfolgenden Beispielen werden spezifische Kursbausteine genutzt.
466
467 Notieren Sie sich für die Nutzung dieser Regeln vorher die Kursbaustein-IDs der betreffenden Kursbausteine für Ihr Szenario und passen Sie diese in den Expertenregeln entsprechend an.
468 {{/info}}
469 {{/layout-cell}}
470 {{/layout-section}}
471
472 {{layout-section ac:type="single"}}
473 {{layout-cell}}
474 \\
475 {{/layout-cell}}
476 {{/layout-section}}
477
478 {{layout-section ac:type="single"}}
479 {{layout-cell}}
480 === Auswertung der Versuchsanzahl ===
481
482 (% class="wrapped" %)
483 |(((
484 Der Kursbaustein wird sichtbar, sobald der betreffende Kursteilnehmer den Kursbaustein Test (Kursbaustein-ID "70323786958847") ein erstes Mal durchgeführt hat.
485 )))|(((
486 (% class="content-wrapper" %)
487 (((
488 (% class="auto-cursor-target" %)
489 Tragen Sie im Tab Sichtbarkeit ein:
490
491 {{code language="text"}}
492 getAttempts("70323786958847") > 0
493 {{/code}}
494 )))
495 )))
496 |(((
497 Nutzer sollen einen Kursbaustein nicht mehr sehen, sobald sie in einem Kursbaustein Aufgabe (Kursbaustein-ID "70323524635734") mehr als 3 Dateien in den Abgabeordner gelegt haben.
498 )))|(((
499 (% class="content-wrapper" %)
500 (((
501 (% class="auto-cursor-target" %)
502 Tragen Sie im Tab Sichtbarkeit ein:
503
504 {{code language="text"}}
505 getAttempts("70323524635734") <= 3
506 {{/code}}
507 )))
508 )))
509 {{/layout-cell}}
510 {{/layout-section}}
511
512 {{layout-section ac:type="single"}}
513 {{layout-cell}}
514 \\
515 {{/layout-cell}}
516 {{/layout-section}}
517
518 {{layout-section ac:type="single"}}
519 {{layout-cell}}
520 (% class="auto-cursor-target" %)
521 === Auswertung von Bewertungsdaten anderer Kursbausteine ===
522
523 (% class="wrapped" %)
524 |(((
525 Der Kursbaustein ist sichtbar, sobald der Benutzer mindestens 10 Punkte im Test (Kursbaustein-ID "84692289655276") erreicht hat.
526 )))|(((
527 (% class="content-wrapper" %)
528 (((
529 (% class="auto-cursor-target" %)
530 Tragen Sie im Tab Sichtbarkeit ein:
531
532 {{code language="text"}}
533 getOnyxTestOutcome("84692289655276","SCORE") >= 10
534 {{/code}}
535 )))
536 )))
537 |(((
538 Der Kursbaustein ist sichtbar, sobald der Nutzer den Test (Kursbaustein-ID "84389429397045") bestanden hat.
539 )))|(((
540 (% class="content-wrapper" %)
541 (((
542 (% class="auto-cursor-target" %)
543 Tragen Sie im Tab Sichtbarkeit ein:
544
545 {{code language="text"}}
546 getOnyxTestOutcomeZK("84389429397045","PASS") ="true"
547 {{/code}}
548 )))
549 )))
550 |(((
551 Der Kursbaustein ist sichtbar, wenn die Note des Nutzers für den angegebenen Baustein (Kursbaustein-ID "84692289655276") besser als 4 ist.
552 )))|(((
553 (% class="content-wrapper" %)
554 (((
555 Tragen Sie im Tab Sichtbarkeit ein:
556
557 {{code language="text"}}
558 getMark("84692289655276") < 4
559 {{/code}}
560 )))
561 )))
562 |(((
563 Der Kursbaustein ist sichtbar, wenn der Nutzer den angegebenen Kursbaustein (Kursbaustein-ID "69742969114730") erledigt hat (Kursfortschritt).
564 )))|(((
565 (% class="content-wrapper" %)
566 (((
567 Tragen Sie im Tab Sichtbarkeit ein:
568
569 {{code language="text"}}
570 getProgress("69742969114730")>=100
571 {{/code}}
572 )))
573 )))
574
575 {{info}}
576 Die Umsetzung eines weiteren Beispiels zur Nutzung von Expertenregeln wird auf der Seite [[doc:Lernwegsteuerung nach Testergebnis]] erläutert.
577 {{/info}}
578 {{/layout-cell}}
579 {{/layout-section}}
580
581 {{layout-section ac:type="single"}}
582 {{layout-cell}}
583 \\
584 {{/layout-cell}}
585 {{/layout-section}}
586
587 {{layout-section ac:type="single"}}
588 {{layout-cell}}
589 (% class="auto-cursor-target" %)
590 === Steuerung auf Basis von Ausgabevariablen eines Tests (ONYX) ===
591
592 Werden in einem Kursbaustein Test globale Testvariablen genutzt, können diese ebenfalls zur Sichtbarkeits- und Zugangssteuerung verwendet werden.
593
594 {{info}}
595 Die verfügbaren Testvariablen sind im entsprechenden Kursbaustein Test im Tab Test-Konfiguration über den Link **Ausgabevariablen dieser Ressource** einsehbar. Neben Sichtbarkeits- und Zugriffsregeln (Expertensyntax) können sie ebenfalls als [[Platzhalter in Zertifikatstemplates>>url:https://www.bps-system.de/help/display/LMS/Zertifikate||shape="rect"]] genutzt werden.
596
597 [[image:attach:Kurseditor - Ausgabevariablen_de.png]]
598 {{/info}}
599
600 \\
601
602 (% class="wrapped" %)
603 |(((
604 Der Kursbaustein ist sichtbar, wenn der Nutzer im angegebenen Kursbaustein Test (Kursbaustein-ID "69742969114730") für die Testvariable "S1_max" mehr als den Wert 10 erreicht hat.
605 )))|(((
606 (% class="content-wrapper" %)
607 (((
608 Tragen Sie im Tab Sichtbarkeit ein:
609
610 {{code language="text"}}
611 getOnyxTestOutcome("84692289655276","S1_max") > 10
612 {{/code}}
613 )))
614 )))
615 |(% colspan="1" %)(% colspan="1" %)
616 (((
617 Der Kursbaustein ist sichtbar, wenn der Nutzer im angegebenen Kursbaustein Test (Kursbaustein-ID "69742969114730") für die Testvariable "feedbackE" genau den Wert "Wiederholen" hat.
618 )))|(% colspan="1" %)(% colspan="1" %)
619 (((
620 (% class="content-wrapper" %)
621 (((
622 Tragen Sie im Tab Sichtbarkeit ein:
623
624 {{code language="text"}}
625 getOnyxTestOutcome("84692289655276","feedbackE")="Wiederholen"
626 {{/code}}
627 )))
628 )))
629 {{/layout-cell}}
630 {{/layout-section}}
631
632 {{layout-section ac:type="single"}}
633 {{layout-cell}}
634 \\
635 {{/layout-cell}}
636 {{/layout-section}}
637
638 {{layout-section ac:type="single"}}
639 {{layout-cell}}
640 (% class="auto-cursor-target" %)
641 === Punktevergabe oder Bestandenstatus automatisch setzen ===
642
643 {{info}}
644 Diese Regeln können in einem **Kursbaustein Struktur **im** Tab Bewertung** im jeweils passenden Eingabefeld gesetzt werden.
645
646 [[image:attach:Kurseditor - Expertenregeln zur Bewertung_de.png]]
647 {{/info}}
648
649 (% class="wrapped" %)
650 |(((
651 **Automatische Punktevergabe:**
652
653 Für einen Kursbaustein Struktur sollen automatisch 10 Punkte vergeben werden, wenn einer von drei Kursbausteinen Test (Kursbaustein-IDs "69742969114730", "69742969115733" oder "69742969118009") bestanden wurde. Ist das nicht der Fall, sollen automatisch 0 Punkte für den Strukturbaustein gesetzt werden.
654 )))|(((
655 (% class="content-wrapper" %)
656 (((
657 (% class="auto-cursor-target" %)
658 Diese Regel wird im Abschnitt **Punkte verarbeiten** gesetzt.
659
660 {{code language="text"}}
661 getPassed("69742969114730") or getPassed("69742969115733") or getPassed("69742969118009")) * 10
662 {{/code}}
663 )))
664 )))
665 |(((
666 **Automatisch Status Bestanden setzen:**
667
668 Ein Kursbaustein Struktur soll automatisch als bestanden angezeigt werden, wenn in allen Kursbausteinen Test (Kursbaustein-IDs "69742969114730", "69742969115733" oder "69742969118009") zusammen mindestens 140 Punkte erzielt wurden oder wenn für den Kursbaustein Bewertung (ID "69978845384688") manuell ein "Bestanden" gesetzt wurde.
669 )))|(((
670 (% class="content-wrapper" %)
671 (((
672 (% class="auto-cursor-target" %)
673 Diese Regel wird im Abschnitt **Bestanden wenn** gesetzt.
674
675 {{code language="text"}}
676 (getScore("69742969114730") + getScore("69742969115733") + getScore("69742969118009")) >= 140 or getPassed("69978845384688")
677 {{/code}}
678 )))
679 )))
680 {{/layout-cell}}
681 {{/layout-section}}
682 {{/layout}}
683 {{/sv-translation}}
684
685
686 {{layout}}
687 {{layout-section ac:type="two_right_sidebar"}}
688 {{layout-cell}}
689 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.
690 {{/layout-cell}}
691
692 {{layout-cell}}
693 {{scroll-ignore scroll-pdf="true" scroll-office="true" scroll-chm="true" scroll-docbook="true" scroll-eclipsehelp="true" scroll-epub="true" scroll-html="true"}}
694 {{panel title="Content"}}
695
696
697 {{toc minLevel="2"/}}
698 {{/panel}}
699 {{/scroll-ignore}}
700 {{/layout-cell}}
701 {{/layout-section}}
702
703 {{layout-section ac:type="single"}}
704 {{layout-cell}}
705 == Expert rules in example images ==
706
707 In these examples, you can see how to configure expert rules and how they affect the course view.
708
709 \\
710
711 {{expand title="Making individual content in a public course visible only to registered users ..."}}
712 (% class="wrapped" %)
713 |(((
714 (% class="content-wrapper" %)
715 (((
716 Do you wish to hide content in a public course from guests?
717
718 Enter the following content in the text field next to Expert rule in the Visibility tab of the respective course element.
719
720 {{code}}
721 isGuest()=false
722 {{/code}}
723
724 This will prevent the course element in a publicly accessible course from being displayed to guest users.
725 )))
726 )))|(((
727 (% class="content-wrapper" %)
728 (((
729 [[image:attach:Kurseditor - Konfiguration nur registrierte Nutzer_de.png]]
730 )))
731 )))
732
733 After publishing, users will see the following view:
734
735 (% class="wrapped" %)
736 |=(((
737 View as a registered user
738 )))|=(((
739 View as a guest user
740 )))|=(((
741 View as a course owner
742 )))
743 |(((
744 (% class="content-wrapper" %)
745 (((
746 [[image:attach:Kursrun - Ansicht registrierte Nutzer_de.png]]
747 )))
748 )))|(((
749 (% class="content-wrapper" %)
750 (((
751 [[image:attach:Kurseditor - Konfiguration nicht für Gäste_de.png]]
752 )))
753 )))|(((
754 (% class="content-wrapper" %)
755 (((
756 [[image:attach:Kursrun - Ansicht Kursverantwortlicher_de.png]]
757 )))
758 )))
759 {{/expand}}
760
761 {{expand title="Making individual content in a public course visible only to guests ..."}}
762 (% class="wrapped" %)
763 |(((
764 (% class="content-wrapper" %)
765 (((
766 Do you wish to display content in a public course exclusively to guests and course owners?
767
768 Enter the following content in the text field next to Expert rule in the Visibility tab of the respective course element.
769
770 {{code}}
771 isGuest() or isCourseAdministrator()
772 {{/code}}
773
774 (% class="auto-cursor-target" %)
775 This will make the course element in a publicly accessible course visible only to guest users and course owners.
776 )))
777 )))|(((
778 (% class="content-wrapper" %)
779 (((
780 [[image:attach:Kurseditor - Konfiguration nur Gäste und Kursverantwortliche_de.png]]
781 )))
782 )))
783
784 \\
785
786 After publishing, users will see the following view:
787
788 (% class="wrapped" %)
789 |=(((
790 View as a registered user
791 )))|=(((
792 View as a guest user
793 )))|=(((
794 View as a course owner
795 )))
796 |(((
797 (% class="content-wrapper" %)
798 (((
799 [[image:attach:Kursansicht - nicht für registrierte Nutzer_de.png]]
800 )))
801 )))|(((
802 (% class="content-wrapper" %)
803 (((
804 [[image:attach:Kursrun - Ansicht nur Gäste_de.png]]
805 )))
806 )))|(((
807 (% class="content-wrapper" %)
808 (((
809 [[image:attach:Kursrun - Ansicht Kursverantwortlicher_de.png]]
810 )))
811 )))
812 {{/expand}}
813
814 {{expand title="Releasing course content based on test results ..."}}
815 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"]].
816 {{/expand}}
817 {{/layout-cell}}
818 {{/layout-section}}
819
820 {{layout-section ac:type="single"}}
821 {{layout-cell}}
822 \\
823 {{/layout-cell}}
824 {{/layout-section}}
825
826 {{layout-section ac:type="single"}}
827 {{layout-cell}}
828 == Expert rules for checking user properties ==
829
830 {{info}}
831 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.
832 {{/info}}
833 {{/layout-cell}}
834 {{/layout-section}}
835
836 {{layout-section ac:type="single"}}
837 {{layout-cell}}
838 \\
839 {{/layout-cell}}
840 {{/layout-section}}
841
842 {{layout-section ac:type="single"}}
843 {{layout-cell}}
844 === Checking for a user role ===
845
846 (% class="wrapped" %)
847 |(((
848 Only guests but no registered users can see the course element.
849 )))|(((
850 (% class="content-wrapper" %)
851 (((
852 Enter the following on the Visibility tab:
853
854 {{code language="text"}}
855 isGuest()
856 {{/code}}
857
858 Alternatively enter: isGuest()=true or isGuest()=1
859 )))
860 )))
861 |(((
862 Guests do not have access to this course element.
863 )))|(((
864 (% class="content-wrapper" %)
865 (((
866 Enter the following on the Access tab:
867
868 {{code language="text"}}
869 isGuest()=false
870 {{/code}}
871
872 (% class="auto-cursor-target" %)
873 Alternatively enter: !isGuest()
874 )))
875 )))
876
877 === Checking for a group membership ===
878
879 (% class="wrapped" %)
880 |(((
881 Except of the (learning) group with the title "Anfänger", all course participants can see the course element.
882 )))|(((
883 (% class="content-wrapper" %)
884 (((
885 Enter the following on the Visibility tab:
886
887 {{code language="text"}}
888 inLearningGroup("Anfänger")= false
889 {{/code}}
890
891 (% class="auto-cursor-target" %)
892 Alternatively enter: !inLearningGroup("Anfänger")
893 )))
894 )))
895 |(((
896 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.
897 )))|(((
898 (% class="content-wrapper" %)
899 (((
900 {{code language="text"}}
901 inLearningGroup("Intern")
902 {{/code}}
903 )))
904 )))
905 |(((
906 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.
907 )))|(((
908 (% class="content-wrapper" %)
909 (((
910 Enter the following on the Visibility tab:
911
912 {{code language="text"}}
913 (now >= date("22.03.2020 12:00")) and (now <= date("23.08.2020 18:00")) or inLearningGroup("Betreuer")
914 {{/code}}
915 )))
916 )))
917 |(((
918 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".
919 )))|(((
920 (% class="content-wrapper" %)
921 (((
922 Enter the following on the Visibility tab:
923
924 {{code language="text"}}
925 (now >= date("03.09.2020 00:00")) and (now <= date("13.10.2020 00:00")) and inRightGroup("Assessoren")or isUser("natalie")
926 {{/code}}
927 )))
928 )))
929
930 === Checking of user attributes ===
931
932 {{info}}
933 In addition to these institution-independent examples, there are also institution-dependent rules that restrict and transmit data according to the user's institution.
934 For OPAL users, the help page [[Overview of OPAL Shibboleth attributes>>url:https://bildungsportal.sachsen.de/help/attribute-opal_de.html||shape="rect"]] contains all currently usable institution-specific attributes of Saxon institutions.
935 {{/info}}
936
937 (% class="wrapped" %)
938 |(((
939 This course element can be accessed by everyone whose study subject attribute contains the letter sequence "Chemie".
940
941 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.
942 )))|(((
943 (% class="content-wrapper" %)
944 (((
945 Enter the following on the Access tab:
946
947 {{code language="text"}}
948 isInAttribute("studySubject","Chemie")
949 {{/code}}
950
951 {{expand title="Examples of further attributes ..."}}
952 {{info}}
953 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.
954
955 Examples of user attributes:
956
957 * Username: username
958 * Email address: email
959 * Term: termsOfStudy
960 * Institution: institutionalName
961 * Matriculation number: institutionalUserIdentifier
962 * Location: standort
963 * Study subject: studySubject
964 * Study group: studyGroup
965 * Organisation unit: orgUnit
966 * First name: firstName
967 * Last name: lastName
968 {{/info}}
969 {{/expand}}
970 )))
971 )))
972 |(((
973 Only users from the "Marketing" organisation unit can see the course element.
974 )))|(((
975 (% class="content-wrapper" %)
976 (((
977 Enter the following on the Visibility tab:
978
979 {{code language="text"}}
980 (getUserProperty("orgUnit") = "Marketing")
981 {{/code}}
982 )))
983 )))
984 {{/layout-cell}}
985 {{/layout-section}}
986
987 {{layout-section ac:type="single"}}
988 {{layout-cell}}
989 \\
990 {{/layout-cell}}
991 {{/layout-section}}
992
993 {{layout-section ac:type="single"}}
994 {{layout-cell}}
995 === Evaluation of the enrolment date ===
996
997 {{info}}
998 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.
999 {{/info}}
1000
1001 (% class="wrapped" %)
1002 |(((
1003 Access to a course element is possible depending on a specific **enrolment date**.
1004
1005 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.
1006 )))|(((
1007 (% class="content-wrapper" %)
1008 (((
1009 Enter the following on the Access tab:
1010
1011 {{code language="text"}}
1012 getInitialEnrollmentDate("70323786958847") <= date("26.5.2020 18:00")
1013 {{/code}}
1014 )))
1015 )))
1016 |(((
1017 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").
1018 )))|(((
1019 (% class="content-wrapper" %)
1020 (((
1021 Enter the following on the Visibility tab:
1022
1023 {{code language="text"}}
1024 getInitialEnrollmentDate("70323786958847") + 2h < now
1025 {{/code}}
1026 )))
1027 )))
1028 |(((
1029 (% class="content-wrapper" %)
1030 (((
1031 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").
1032
1033 {{note}}
1034 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.
1035 {{/note}}
1036 )))
1037 )))|(((
1038 (% class="content-wrapper" %)
1039 (((
1040 Enter the following on the Visibility tab:
1041
1042 {{code language="text"}}
1043 getInitialEnrollmentDate("70323786958847") + 2h > now
1044 {{/code}}
1045 )))
1046 )))
1047 |(((
1048 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.
1049 )))|(((
1050 (% class="content-wrapper" %)
1051 (((
1052 Enter the following on the Visibility tab:
1053
1054 {{code language="text"}}
1055 (getInitialEnrollmentDate("101524102434663") + 2h < now and getInitialEnrollmentDate("101524102434663") + 5h > now ) or isCourseCoach(0) or isCourseAdministrator(0)
1056 {{/code}}
1057 )))
1058 )))
1059 |(% colspan="1" %)(% colspan="1" %)
1060 (((
1061 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).
1062 )))|(% colspan="1" %)(% colspan="1" %)
1063 (((
1064 (% class="content-wrapper" %)
1065 (((
1066 Enter the following on the Visibility tab:
1067
1068 {{code language="text"}}
1069 (getInitialCourseLaunchDate() >= never) or (getInitialCourseLaunchDate() + 2h > now)
1070 {{/code}}
1071 )))
1072 )))
1073 |(% colspan="1" %)(% colspan="1" %)
1074 (((
1075 The course element becomes only visible if the user has been active in the course **for more than 10 minutes**.
1076 )))|(% colspan="1" %)(% colspan="1" %)
1077 (((
1078 (% class="content-wrapper" %)
1079 (((
1080 Enter the following on the Visibility tab:
1081
1082 {{code language="text"}}
1083 (getRecentCourseLaunchDate() + 10min) > now
1084 {{/code}}
1085 )))
1086 )))
1087 {{/layout-cell}}
1088 {{/layout-section}}
1089
1090 {{layout-section ac:type="single"}}
1091 {{layout-cell}}
1092 \\
1093 {{/layout-cell}}
1094 {{/layout-section}}
1095
1096 {{layout-section ac:type="single"}}
1097 {{layout-cell}}
1098 == Expert rules with specific course elements ==
1099
1100 {{info}}
1101 In all of the following examples, specific course elements are used.
1102
1103 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.
1104 {{/info}}
1105 {{/layout-cell}}
1106 {{/layout-section}}
1107
1108 {{layout-section ac:type="single"}}
1109 {{layout-cell}}
1110 \\
1111 {{/layout-cell}}
1112 {{/layout-section}}
1113
1114 {{layout-section ac:type="single"}}
1115 {{layout-cell}}
1116 === Evaluation of the number of attempts ===
1117
1118 (% class="wrapped" %)
1119 |(((
1120 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.
1121 )))|(((
1122 (% class="content-wrapper" %)
1123 (((
1124 Enter the following on the Visibility tab:
1125
1126 {{code language="text"}}
1127 getAttempts("70323786958847") > 0
1128 {{/code}}
1129 )))
1130 )))
1131 |(((
1132 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").
1133 )))|(((
1134 (% class="content-wrapper" %)
1135 (((
1136 Enter the following on the Visibility tab:
1137
1138 {{code language="text"}}
1139 getAttempts("70323524635734") <= 3
1140 {{/code}}
1141 )))
1142 )))
1143 {{/layout-cell}}
1144 {{/layout-section}}
1145
1146 {{layout-section ac:type="single"}}
1147 {{layout-cell}}
1148 \\
1149 {{/layout-cell}}
1150 {{/layout-section}}
1151
1152 {{layout-section ac:type="single"}}
1153 {{layout-cell}}
1154 === Evaluation of other course elements' assessment data ===
1155
1156 (% class="wrapped" %)
1157 |(((
1158 The course element is visible as soon as the user has reached at least 10 points in the test (course element ID "84692289655276").
1159 )))|(((
1160 (% class="content-wrapper" %)
1161 (((
1162 Enter the following on the Visibility tab:
1163
1164 {{code language="text"}}
1165 getOnyxTestOutcome("84692289655276","SCORE") >= 10
1166 {{/code}}
1167 )))
1168 )))
1169 |(((
1170 The course element is visible as soon as the user has passed the test (course element ID "84389429397045").
1171 )))|(((
1172 (% class="content-wrapper" %)
1173 (((
1174 Enter the following on the Visibility tab:
1175
1176 {{code language="text"}}
1177 getOnyxTestOutcomeZK("84389429397045","PASS") ="true"
1178 {{/code}}
1179 )))
1180 )))
1181 |(((
1182 The course element is visible if the user's grade for the indicated element (course element ID "84692289655276") is better than 4.
1183 )))|(((
1184 (% class="content-wrapper" %)
1185 (((
1186 Enter the following on the Visibility tab:
1187
1188 {{code language="text"}}
1189 getMark("84692289655276") < 4
1190 {{/code}}
1191 )))
1192 )))
1193 |(((
1194 The course element is visible when the user has completed the indicated course element (course element ID "69742969114730") (course progress).
1195 )))|(((
1196 (% class="content-wrapper" %)
1197 (((
1198 Enter the following on the Visibility tab:
1199
1200 {{code language="text"}}
1201 getProgress("69742969114730")>=100
1202 {{/code}}
1203 )))
1204 )))
1205
1206 {{info}}
1207 The implementation of another example of the use of expert rules 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"]].
1208 {{/info}}
1209 {{/layout-cell}}
1210 {{/layout-section}}
1211
1212 {{layout-section ac:type="single"}}
1213 {{layout-cell}}
1214 \\
1215 {{/layout-cell}}
1216 {{/layout-section}}
1217
1218 {{layout-section ac:type="single"}}
1219 {{layout-cell}}
1220 === Controlling visibility and access based on test output variables (ONYX) ===
1221
1222 If global test variables are used in a test course element, they can also be used to control visibility and access.
1223
1224 {{info}}
1225 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>>url:https://www.bps-system.de/help/display/LMS/Zertifikate||shape="rect"]].
1226
1227 [[image:attach:Kurseditor - Ausgabevariablen_de.png]]
1228 {{/info}}
1229
1230 (% class="wrapped" %)
1231 |(((
1232 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").
1233 )))|(((
1234 (% class="content-wrapper" %)
1235 (((
1236 Enter the following on the Visibility tab:
1237
1238 {{code language="text"}}
1239 getOnyxTestOutcome("84692289655276","S1_max") > 10
1240 {{/code}}
1241 )))
1242 )))
1243 |(((
1244 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").
1245 )))|(((
1246 (% class="content-wrapper" %)
1247 (((
1248 Enter the following on the Visibility tab:
1249
1250 {{code language="text"}}
1251 getOnyxTestOutcome("84692289655276","feedbackE")="Wiederholen"
1252 {{/code}}
1253 )))
1254 )))
1255 {{/layout-cell}}
1256 {{/layout-section}}
1257
1258 {{layout-section ac:type="single"}}
1259 {{layout-cell}}
1260 \\
1261 {{/layout-cell}}
1262 {{/layout-section}}
1263
1264 {{layout-section ac:type="single"}}
1265 {{layout-cell}}
1266 === Set scoring or passing status automatically ===
1267
1268 {{info}}
1269 These rules can be set in a **structure course element **in the** Assessment tab** in the respective input field.
1270
1271 [[image:attach:Kurseditor - Expertenregeln zur Bewertung_de.png]]
1272 {{/info}}
1273
1274 (% class="wrapped" %)
1275 |(((
1276 **Automatic scoring:**
1277
1278 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.
1279 )))|(((
1280 (% class="content-wrapper" %)
1281 (((
1282 This rule is set in the **Process points** section.
1283
1284 {{code language="text"}}
1285 getPassed("69742969114730") or getPassed("69742969115733") or getPassed("69742969118009")) * 10
1286 {{/code}}
1287 )))
1288 )))
1289 |(((
1290 **Set passing status automatically:**
1291
1292 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").
1293 )))|(((
1294 (% class="content-wrapper" %)
1295 (((
1296 This rule is set in the **Passed if** section.
1297
1298 {{code language="text"}}
1299 (getScore("69742969114730") + getScore("69742969115733") + getScore("69742969118009")) >= 140 or getPassed("69978845384688")
1300 {{/code}}
1301 )))
1302 )))
1303 {{/layout-cell}}
1304 {{/layout-section}}
1305 {{/layout}}
1306 {{/sv-translation}}