# Regeln für Fragen > Stand: 29.10.2026 · gilt für alle Dateien `data//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 | `-`, 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.