Wiki-Quellcode von Expertenregeln Beispiele

Version 56.4 von Carina Enke am 09.01.2024

Zeige letzte Bearbeiter
1 {{layout}}
2 {{layout-section ac:type="single"}}
3 {{layout-cell}}
4
5 {{/layout-cell}}
6 {{/layout-section}}
7
8 {{layout-section ac:type="two_right_sidebar"}}
9 {{layout-cell}}
10 (% class="auto-cursor-target" %)
11 Expertenregeln bieten vielfältige Einsatzmöglichkeiten und können unterschiedliche Auswirkungen haben. Einen kleinen Einblick geben die Beispiele zur Anwendung auf dieser Seite.
12
13
14 {{/layout-cell}}
15
16 {{layout-cell}}
17
18 {{panel title="Inhalt"}}
19
20
21 {{toc/}}
22 {{/panel}}
23
24
25 {{/layout-cell}}
26 {{/layout-section}}
27
28 {{layout-section ac:type="single"}}
29 {{layout-cell}}
30 == Expertenregeln in Beispielbildern ==
31
32 *
33 ** ==
34
35 In diesen Beispielen sehen Sie, wie Expertenregeln konfiguriert werden und wie sie sich in der Kursansicht auswirken.
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="relative-table wrapped" 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:LMS._Include Library.Course Pages.Expert Mode.Expertenregeln Beispiele.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 (% id="HPrFCfungaufeineNutzerrolle" 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 (% id="HPrFCfungaufeineGruppenzugehF6rigkeit" 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 (% id="HPrFCfungvonBenutzerattributen" 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 (% id="HExpertenregelnmitspezifischenKursbausteinen" 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 (% id="HAuswertungvonBewertungsdatenandererKursbausteine" 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:LMS._Include Library.Course Pages.Expert Mode.Expertenregeln Beispiele.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 (% id="HSteuerungaufBasisvonAusgabevariableneinesTests28ONYX29" 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 (% class="wrapped" %)
602 |(((
603 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.
604 )))|(((
605 (% class="content-wrapper" %)
606 (((
607 Tragen Sie im Tab Sichtbarkeit ein:
608
609 {{code language="text"}}
610 getOnyxTestOutcome("84692289655276","S1_max") > 10
611 {{/code}}
612 )))
613 )))
614 |(% colspan="1" %)(% colspan="1" %)
615 (((
616 Der Kursbaustein ist sichtbar, wenn der Nutzer im angegebenen Kursbaustein Test (Kursbaustein-ID "69742969114730") für die Testvariable "feedbackE" genau den Wert "Wiederholen" hat.
617 )))|(% colspan="1" %)(% colspan="1" %)
618 (((
619 (% class="content-wrapper" %)
620 (((
621 Tragen Sie im Tab Sichtbarkeit ein:
622
623 {{code language="text"}}
624 getOnyxTestOutcome("84692289655276","feedbackE")="Wiederholen"
625 {{/code}}
626 )))
627 )))
628 {{/layout-cell}}
629 {{/layout-section}}
630
631 {{layout-section ac:type="single"}}
632 {{layout-cell}}
633
634 {{/layout-cell}}
635 {{/layout-section}}
636
637 {{layout-section ac:type="single"}}
638 {{layout-cell}}
639 (% id="HPunktevergabeoderBestandenstatusautomatischsetzen" class="auto-cursor-target" %)
640 === Punktevergabe oder Bestandenstatus automatisch setzen ===
641
642 {{info}}
643 Diese Regeln können in einem **Kursbaustein Struktur **im** Tab Bewertung** im jeweils passenden Eingabefeld gesetzt werden.
644
645 [[image:attach:Kurseditor - Expertenregeln zur Bewertung_de.png]]
646 {{/info}}
647
648 (% class="wrapped" %)
649 |(((
650 **Automatische Punktevergabe:**
651
652 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.
653 )))|(((
654 (% class="content-wrapper" %)
655 (((
656 (% class="auto-cursor-target" %)
657 Diese Regel wird im Abschnitt **Punkte verarbeiten** gesetzt.
658
659 {{code language="text"}}
660 getPassed("69742969114730") or getPassed("69742969115733") or getPassed("69742969118009")) * 10
661 {{/code}}
662 )))
663 )))
664 |(((
665 **Automatisch Status Bestanden setzen:**
666
667 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.
668 )))|(((
669 (% class="content-wrapper" %)
670 (((
671 (% class="auto-cursor-target" %)
672 Diese Regel wird im Abschnitt **Bestanden wenn** gesetzt.
673
674 {{code language="text"}}
675 (getScore("69742969114730") + getScore("69742969115733") + getScore("69742969118009")) >= 140 or getPassed("69978845384688")
676 {{/code}}
677 )))
678 )))
679 {{/layout-cell}}
680 {{/layout-section}}
681 {{/layout}}
682
683 {{layout}}
684 {{layout-section ac:type="two_right_sidebar"}}
685 {{layout-cell}}
686 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.
687 {{/layout-cell}}
688
689 {{layout-cell}}
690
691 {{panel title="Content"}}
692
693
694 {{toc minLevel="2"/}}
695 {{/panel}}
696
697 {{/layout-cell}}
698 {{/layout-section}}
699
700 {{layout-section ac:type="single"}}
701 {{layout-cell}}
702 == Expert rules in example images ==
703
704 In these examples, you can see how to configure expert rules and how they affect the course view.
705
706 {{expand title="Making individual content in a public course visible only to registered users ..."}}
707 (% class="wrapped" %)
708 |(((
709 (% class="content-wrapper" %)
710 (((
711 Do you wish to hide content in a public course from guests?
712
713 Enter the following content in the text field next to Expert rule in the Visibility tab of the respective course element.
714
715 {{code}}
716 isGuest()=false
717 {{/code}}
718
719 This will prevent the course element in a publicly accessible course from being displayed to guest users.
720 )))
721 )))|(((
722 (% class="content-wrapper" %)
723 (((
724 [[image:attach:Kurseditor - Konfiguration nur registrierte Nutzer_de.png]]
725 )))
726 )))
727
728 After publishing, users will see the following view:
729
730 (% class="wrapped" %)
731 |=(((
732 View as a registered user
733 )))|=(((
734 View as a guest user
735 )))|=(((
736 View as a course owner
737 )))
738 |(((
739 (% class="content-wrapper" %)
740 (((
741 [[image:attach:Kursrun - Ansicht registrierte Nutzer_de.png]]
742 )))
743 )))|(((
744 (% class="content-wrapper" %)
745 (((
746 [[image:attach:Kurseditor - Konfiguration nicht für Gäste_de.png]]
747 )))
748 )))|(((
749 (% class="content-wrapper" %)
750 (((
751 [[image:attach:Kursrun - Ansicht Kursverantwortlicher_de.png]]
752 )))
753 )))
754 {{/expand}}
755
756 {{expand title="Making individual content in a public course visible only to guests ..."}}
757 (% class="wrapped" %)
758 |(((
759 (% class="content-wrapper" %)
760 (((
761 Do you wish to display content in a public course exclusively to guests and course owners?
762
763 Enter the following content in the text field next to Expert rule in the Visibility tab of the respective course element.
764
765 {{code}}
766 isGuest() or isCourseAdministrator()
767 {{/code}}
768
769 (% class="auto-cursor-target" %)
770 This will make the course element in a publicly accessible course visible only to guest users and course owners.
771 )))
772 )))|(((
773 (% class="content-wrapper" %)
774 (((
775 [[image:attach:Kurseditor - Konfiguration nur Gäste und Kursverantwortliche_de.png]]
776 )))
777 )))
778
779
780 After publishing, users will see the following view:
781
782 (% class="wrapped" %)
783 |=(((
784 View as a registered user
785 )))|=(((
786 View as a guest user
787 )))|=(((
788 View as a course owner
789 )))
790 |(((
791 (% class="content-wrapper" %)
792 (((
793 [[image:attach:Kursansicht - nicht für registrierte Nutzer_de.png]]
794 )))
795 )))|(((
796 (% class="content-wrapper" %)
797 (((
798 [[image:attach:Kursrun - Ansicht nur Gäste_de.png]]
799 )))
800 )))|(((
801 (% class="content-wrapper" %)
802 (((
803 [[image:attach:Kursrun - Ansicht Kursverantwortlicher_de.png]]
804 )))
805 )))
806 {{/expand}}
807
808 {{expand title="Releasing course content based on test results ..."}}
809 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"]].
810 {{/expand}}
811 {{/layout-cell}}
812 {{/layout-section}}
813
814 {{layout-section ac:type="single"}}
815 {{layout-cell}}
816
817 {{/layout-cell}}
818 {{/layout-section}}
819
820 {{layout-section ac:type="single"}}
821 {{layout-cell}}
822 == Expert rules for checking user properties ==
823
824 {{info}}
825 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.
826 {{/info}}
827 {{/layout-cell}}
828 {{/layout-section}}
829
830 {{layout-section ac:type="single"}}
831 {{layout-cell}}
832
833 {{/layout-cell}}
834 {{/layout-section}}
835
836 {{layout-section ac:type="single"}}
837 {{layout-cell}}
838 === Checking for a user role ===
839
840 (% class="wrapped" %)
841 |(((
842 Only guests but no registered users can see the course element.
843 )))|(((
844 (% class="content-wrapper" %)
845 (((
846 Enter the following on the Visibility tab:
847
848 {{code language="text"}}
849 isGuest()
850 {{/code}}
851
852 Alternatively enter: isGuest()=true or isGuest()=1
853 )))
854 )))
855 |(((
856 Guests do not have access to this course element.
857 )))|(((
858 (% class="content-wrapper" %)
859 (((
860 Enter the following on the Access tab:
861
862 {{code language="text"}}
863 isGuest()=false
864 {{/code}}
865
866 (% class="auto-cursor-target" %)
867 Alternatively enter: !isGuest()
868 )))
869 )))
870
871 === Checking for a group membership ===
872
873 (% class="wrapped" %)
874 |(((
875 Except of the (learning) group with the title "Anfänger", all course participants can see the course element.
876 )))|(((
877 (% class="content-wrapper" %)
878 (((
879 Enter the following on the Visibility tab:
880
881 {{code language="text"}}
882 inLearningGroup("Anfänger")= false
883 {{/code}}
884
885 (% class="auto-cursor-target" %)
886 Alternatively enter: !inLearningGroup("Anfänger")
887 )))
888 )))
889 |(((
890 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.
891 )))|(((
892 (% class="content-wrapper" %)
893 (((
894 {{code language="text"}}
895 inLearningGroup("Intern")
896 {{/code}}
897 )))
898 )))
899 |(((
900 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.
901 )))|(((
902 (% class="content-wrapper" %)
903 (((
904 Enter the following on the Visibility tab:
905
906 {{code language="text"}}
907 (now >= date("22.03.2020 12:00")) and (now <= date("23.08.2020 18:00")) or inLearningGroup("Betreuer")
908 {{/code}}
909 )))
910 )))
911 |(((
912 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".
913 )))|(((
914 (% class="content-wrapper" %)
915 (((
916 Enter the following on the Visibility tab:
917
918 {{code language="text"}}
919 (now >= date("03.09.2020 00:00")) and (now <= date("13.10.2020 00:00")) and inRightGroup("Assessoren")or isUser("natalie")
920 {{/code}}
921 )))
922 )))
923
924 === Checking of user attributes ===
925
926 {{info}}
927 In addition to these institution-independent examples, there are also institution-dependent rules that restrict and transmit data according to the user's institution.
928 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.
929 {{/info}}
930
931 (% class="wrapped" %)
932 |(((
933 This course element can be accessed by everyone whose study subject attribute contains the letter sequence "Chemie".
934
935 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.
936 )))|(((
937 (% class="content-wrapper" %)
938 (((
939 Enter the following on the Access tab:
940
941 {{code language="text"}}
942 isInAttribute("studySubject","Chemie")
943 {{/code}}
944
945 {{expand title="Examples of further attributes ..."}}
946 {{info}}
947 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.
948
949 Examples of user attributes:
950
951 * Username: username
952 * Email address: email
953 * Term: termsOfStudy
954 * Institution: institutionalName
955 * Matriculation number: institutionalUserIdentifier
956 * Location: standort
957 * Study subject: studySubject
958 * Study group: studyGroup
959 * Organisation unit: orgUnit
960 * First name: firstName
961 * Last name: lastName
962 {{/info}}
963 {{/expand}}
964 )))
965 )))
966 |(((
967 Only users from the "Marketing" organisation unit can see the course element.
968 )))|(((
969 (% class="content-wrapper" %)
970 (((
971 Enter the following on the Visibility tab:
972
973 {{code language="text"}}
974 (getUserProperty("orgUnit") = "Marketing")
975 {{/code}}
976 )))
977 )))
978 {{/layout-cell}}
979 {{/layout-section}}
980
981 {{layout-section ac:type="single"}}
982 {{layout-cell}}
983
984 {{/layout-cell}}
985 {{/layout-section}}
986
987 {{layout-section ac:type="single"}}
988 {{layout-cell}}
989 === Evaluation of the enrolment date ===
990
991 {{info}}
992 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.
993 {{/info}}
994
995 (% class="wrapped" %)
996 |(((
997 Access to a course element is possible depending on a specific **enrolment date**.
998
999 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.
1000 )))|(((
1001 (% class="content-wrapper" %)
1002 (((
1003 Enter the following on the Access tab:
1004
1005 {{code language="text"}}
1006 getInitialEnrollmentDate("70323786958847") <= date("26.5.2020 18:00")
1007 {{/code}}
1008 )))
1009 )))
1010 |(((
1011 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").
1012 )))|(((
1013 (% class="content-wrapper" %)
1014 (((
1015 Enter the following on the Visibility tab:
1016
1017 {{code language="text"}}
1018 getInitialEnrollmentDate("70323786958847") + 2h < now
1019 {{/code}}
1020 )))
1021 )))
1022 |(((
1023 (% class="content-wrapper" %)
1024 (((
1025 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").
1026
1027 {{note}}
1028 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.
1029 {{/note}}
1030 )))
1031 )))|(((
1032 (% class="content-wrapper" %)
1033 (((
1034 Enter the following on the Visibility tab:
1035
1036 {{code language="text"}}
1037 getInitialEnrollmentDate("70323786958847") + 2h > now
1038 {{/code}}
1039 )))
1040 )))
1041 |(((
1042 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.
1043 )))|(((
1044 (% class="content-wrapper" %)
1045 (((
1046 Enter the following on the Visibility tab:
1047
1048 {{code language="text"}}
1049 (getInitialEnrollmentDate("101524102434663") + 2h < now and getInitialEnrollmentDate("101524102434663") + 5h > now ) or isCourseCoach(0) or isCourseAdministrator(0)
1050 {{/code}}
1051 )))
1052 )))
1053 |(% colspan="1" %)(% colspan="1" %)
1054 (((
1055 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).
1056 )))|(% colspan="1" %)(% colspan="1" %)
1057 (((
1058 (% class="content-wrapper" %)
1059 (((
1060 Enter the following on the Visibility tab:
1061
1062 {{code language="text"}}
1063 (getInitialCourseLaunchDate() >= never) or (getInitialCourseLaunchDate() + 2h > now)
1064 {{/code}}
1065 )))
1066 )))
1067 |(% colspan="1" %)(% colspan="1" %)
1068 (((
1069 The course element becomes only visible if the user has been active in the course **for more than 10 minutes**.
1070 )))|(% colspan="1" %)(% colspan="1" %)
1071 (((
1072 (% class="content-wrapper" %)
1073 (((
1074 Enter the following on the Visibility tab:
1075
1076 {{code language="text"}}
1077 (getRecentCourseLaunchDate() + 10min) > now
1078 {{/code}}
1079 )))
1080 )))
1081 {{/layout-cell}}
1082 {{/layout-section}}
1083
1084 {{layout-section ac:type="single"}}
1085 {{layout-cell}}
1086
1087 {{/layout-cell}}
1088 {{/layout-section}}
1089
1090 {{layout-section ac:type="single"}}
1091 {{layout-cell}}
1092 == Expert rules with specific course elements ==
1093
1094 {{info}}
1095 In all of the following examples, specific course elements are used.
1096
1097 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.
1098 {{/info}}
1099 {{/layout-cell}}
1100 {{/layout-section}}
1101
1102 {{layout-section ac:type="single"}}
1103 {{layout-cell}}
1104
1105 {{/layout-cell}}
1106 {{/layout-section}}
1107
1108 {{layout-section ac:type="single"}}
1109 {{layout-cell}}
1110 === Evaluation of the number of attempts ===
1111
1112 (% class="wrapped" %)
1113 |(((
1114 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.
1115 )))|(((
1116 (% class="content-wrapper" %)
1117 (((
1118 Enter the following on the Visibility tab:
1119
1120 {{code language="text"}}
1121 getAttempts("70323786958847") > 0
1122 {{/code}}
1123 )))
1124 )))
1125 |(((
1126 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").
1127 )))|(((
1128 (% class="content-wrapper" %)
1129 (((
1130 Enter the following on the Visibility tab:
1131
1132 {{code language="text"}}
1133 getAttempts("70323524635734") <= 3
1134 {{/code}}
1135 )))
1136 )))
1137 {{/layout-cell}}
1138 {{/layout-section}}
1139
1140 {{layout-section ac:type="single"}}
1141 {{layout-cell}}
1142
1143 {{/layout-cell}}
1144 {{/layout-section}}
1145
1146 {{layout-section ac:type="single"}}
1147 {{layout-cell}}
1148 === Evaluation of other course elements' assessment data ===
1149
1150 (% class="wrapped" %)
1151 |(((
1152 The course element is visible as soon as the user has reached at least 10 points in the test (course element ID "84692289655276").
1153 )))|(((
1154 (% class="content-wrapper" %)
1155 (((
1156 Enter the following on the Visibility tab:
1157
1158 {{code language="text"}}
1159 getOnyxTestOutcome("84692289655276","SCORE") >= 10
1160 {{/code}}
1161 )))
1162 )))
1163 |(((
1164 The course element is visible as soon as the user has passed the test (course element ID "84389429397045").
1165 )))|(((
1166 (% class="content-wrapper" %)
1167 (((
1168 Enter the following on the Visibility tab:
1169
1170 {{code language="text"}}
1171 getOnyxTestOutcomeZK("84389429397045","PASS") ="true"
1172 {{/code}}
1173 )))
1174 )))
1175 |(((
1176 The course element is visible if the user's grade for the indicated element (course element ID "84692289655276") is better than 4.
1177 )))|(((
1178 (% class="content-wrapper" %)
1179 (((
1180 Enter the following on the Visibility tab:
1181
1182 {{code language="text"}}
1183 getMark("84692289655276") < 4
1184 {{/code}}
1185 )))
1186 )))
1187 |(((
1188 The course element is visible when the user has completed the indicated course element (course element ID "69742969114730") (course progress).
1189 )))|(((
1190 (% class="content-wrapper" %)
1191 (((
1192 Enter the following on the Visibility tab:
1193
1194 {{code language="text"}}
1195 getProgress("69742969114730")>=100
1196 {{/code}}
1197 )))
1198 )))
1199
1200 {{info}}
1201 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"]].
1202 {{/info}}
1203 {{/layout-cell}}
1204 {{/layout-section}}
1205
1206 {{layout-section ac:type="single"}}
1207 {{layout-cell}}
1208
1209 {{/layout-cell}}
1210 {{/layout-section}}
1211
1212 {{layout-section ac:type="single"}}
1213 {{layout-cell}}
1214 === Controlling visibility and access based on test output variables (ONYX) ===
1215
1216 If global test variables are used in a test course element, they can also be used to control visibility and access.
1217
1218 {{info}}
1219 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"]].
1220
1221 [[image:attach:Kurseditor - Ausgabevariablen_de.png]]
1222 {{/info}}
1223
1224 (% class="wrapped" %)
1225 |(((
1226 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").
1227 )))|(((
1228 (% class="content-wrapper" %)
1229 (((
1230 Enter the following on the Visibility tab:
1231
1232 {{code language="text"}}
1233 getOnyxTestOutcome("84692289655276","S1_max") > 10
1234 {{/code}}
1235 )))
1236 )))
1237 |(((
1238 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").
1239 )))|(((
1240 (% class="content-wrapper" %)
1241 (((
1242 Enter the following on the Visibility tab:
1243
1244 {{code language="text"}}
1245 getOnyxTestOutcome("84692289655276","feedbackE")="Wiederholen"
1246 {{/code}}
1247 )))
1248 )))
1249 {{/layout-cell}}
1250 {{/layout-section}}
1251
1252 {{layout-section ac:type="single"}}
1253 {{layout-cell}}
1254
1255 {{/layout-cell}}
1256 {{/layout-section}}
1257
1258 {{layout-section ac:type="single"}}
1259 {{layout-cell}}
1260 === Set scoring or passing status automatically ===
1261
1262 {{info}}
1263 These rules can be set in a **structure course element **in the** Assessment tab** in the respective input field.
1264
1265 [[image:attach:Kurseditor - Expertenregeln zur Bewertung_de.png]]
1266 {{/info}}
1267
1268 (% class="wrapped" %)
1269 |(((
1270 **Automatic scoring:**
1271
1272 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.
1273 )))|(((
1274 (% class="content-wrapper" %)
1275 (((
1276 This rule is set in the **Process points** section.
1277
1278 {{code language="text"}}
1279 getPassed("69742969114730") or getPassed("69742969115733") or getPassed("69742969118009")) * 10
1280 {{/code}}
1281 )))
1282 )))
1283 |(((
1284 **Set passing status automatically:**
1285
1286 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").
1287 )))|(((
1288 (% class="content-wrapper" %)
1289 (((
1290 This rule is set in the **Passed if** section.
1291
1292 {{code language="text"}}
1293 (getScore("69742969114730") + getScore("69742969115733") + getScore("69742969118009")) >= 140 or getPassed("69978845384688")
1294 {{/code}}
1295 )))
1296 )))
1297 {{/layout-cell}}
1298 {{/layout-section}}
1299 {{/layout}}