36 lines
2.6 KiB
Markdown
36 lines
2.6 KiB
Markdown
# Regeln für Fragen
|
||
|
||
> Stand: 29.10.2026 · gilt für alle Dateien `data/<prüfung>/questions_*.json`.
|
||
> Technische Regeln prüft `tools/build_bank.py -c` (und der Import im Simulator); inhaltliche Regeln prüfen Menschen.
|
||
|
||
## Technisch (automatisch geprüft)
|
||
| Regel | Details |
|
||
|---|---|
|
||
| Datei | `format: "lpic-sim-questions"`, `exam` = id aus `exam.json`, Schema `data/schema/questions.schema.json` |
|
||
| id | `<objective>-<NNN>`, z. B. `103.4-007`, eindeutig je Prüfung; Objective muss in `exam.json` existieren |
|
||
| `single` | genau 5 Optionen `a`–`e` in dieser Reihenfolge, genau 1 richtig |
|
||
| `multi` | genau 5 Optionen, 2–4 richtig; der Simulator zeigt „Wählen Sie ZWEI/DREI/VIER“ und begrenzt die Auswahl |
|
||
| `fill` | keine Optionen; `answers` = akzeptierte Antworten, erste = Musterlösung; Leerraum wird normalisiert; `case_sensitive` Standard `true` |
|
||
| Erläuterungen | jede Option hat `explanation`, jede Frage eine Gesamt-`explanation` |
|
||
| keine doppelten Optionstexte | |
|
||
| `review.status` | `pending` (Standard), `approved`, `rejected` |
|
||
|
||
## Inhaltlich (Prüfer)
|
||
- **Genau eine fachlich richtige Lösung** (bzw. genau die markierten bei `multi`). Distraktoren eindeutig falsch, aber plausibel – keine „auch richtig, aber nicht gemeint“-Optionen.
|
||
- Klar und kurz, auch für Nicht-Muttersprachler verständlich; keine Fangfragen über Formulierungstricks, keine doppelten Verneinungen.
|
||
- Genau einem Objective zugeordnet; Inhalt passt zu dessen Lernzielen (Objectives 5.0, [exam_format.md](exam_format.md)).
|
||
- Keine inhaltlichen Dubletten.
|
||
- Erläuterungen begründen **warum** – nicht nur „richtig/falsch“; möglichst mit `references` (Manpage).
|
||
- Erläuterungen nie auf Buchstaben beziehen („Option A“) – die Optionen werden im Simulator gemischt.
|
||
- `fill`: alle gleichwertigen Schreibweisen in `answers` aufnehmen (Lang-/Kurzoptionen, Reihenfolge der Optionen).
|
||
- Bewertung im Simulator wie vermutlich bei LPI: alles oder nichts.
|
||
|
||
## Schreibweise
|
||
- Sprache Deutsch mit korrekten Umlauten (ä ö ü ß); Befehle, Optionen, Pfade im Original.
|
||
- Inline-Code zwischen zwei Backticks; einzelne Backticks vermeiden (Befehlsersetzung als `$(…)` schreiben). `**fett**` für Betonung.
|
||
- Mehrzeilige Ausgaben/Dateien ins Feld `code`.
|
||
- Beispieladressen und -namen aus Dokumentationsbereichen: `192.0.2.0/24`, `198.51.100.0/24`, `example.org`, `host01`, `anna`.
|
||
|
||
## Datei-Header
|
||
Jede Datei trägt im Objekt `meta` (bei Code als Kommentar) `file`, `brief`, `author`, `owner`, `version` (`x.y.z (TT.MM.JJJJ)`), bei KI-Beteiligung `assist`. Bei inhaltlicher Änderung `version` erhöhen.
|