Skip to content

Landscape-JSON-Feldreferenz

Generated artifact. Do not edit manually.

Generated by: scripts/build_compendia.py Regenerate with: python3 scripts/build_compendia.py --compendium dev-handbook --web-and-tex Source of truth: docs/dev/source/

Sprache / Language: Deutsch (DE) · English (EN) | PDF: Deutsches PDF · English PDF

Kompendium: §1 Dokumentationsrichtlinien · §2 Landscape-JSON-Referenz · §3 Minimales Schema & Fallback · §4 Autoreneditoren · §5 Graph-Editor · §6 Flashcard-Editor · §7 Knotensortierung · §8 Liquibase · §9 Auto-Update (SSE)


2. Landscape-JSON-Feldreferenz

Dieses Kapitel dokumentiert den feldscharfen Authoring- und Laufzeitvertrag für SkillLandscape-JSON-Dateien gegen docs/landscape-runtime.schema.json und deren Abbildung auf UiGoal in goalTypes.ts (Knotensemantik in Knotentypen, Projektion in Sichtenprojektion).

2.1. Top-Level-Felder einer SkillLandscape

| Feld | Pflicht? | Zweck & Randbedingungen | | –- | –- | –- | | landscapeId | Ja | Global eindeutige, stabile Kennung der Skill-Landschaft. | | locale | Ja | Primäre Autorensprache ("de" oder "en"). | | subject | Ja | Kanonischer Fachschlüssel für Routing, Gruppierung und Asset-Pfade. | | title, description | Ja | Titel und Kurzbeschreibung (titleEn, descriptionEn optional für englische Inline-Übersetzung). | | frameworkId, filters | Optional | Institutioneller Rahmenbezeichner und auswählbare Scope-Filter (z. B. GK, LK, Bundesland). | | programUnits, goalPlacements, competencyCatalog | Optional | Additive Projektions-Arrays (3). | | goals | Ja | Geordnetes Array von LearningGoal-Einträgen der contains- und requires-DAGs. | {cols="26%,14%,60%"}

2.2. LearningGoal, dimensionTags und Provenienzfelder

| Feldgruppe | Felder & Laufzeitbedeutung | | –- | –- | | Identität & Texte | id (stabile UUID, nie für neue Bedeutung wiederverwendet), optional landschaftsweit eindeutiges shortKey, title (titleEn), description (descriptionEn). | | Graphrelationen | contains (geordnete Kind-IDs; leer [] = atomares Ziel, nichtleer = Cluster-Ziel) und requires (Voraussetzungs-IDs; Zielzustand rein atomar-zu-atomar). | | Klassifikation & Gewicht | weight (Aufwands-/Fortschrittsgewicht), optional core (boolean), courseLevel, tags (string[]), semanticKind / nodeKind / type, applicability und competencyRefs. | | Fachliche Nutzdaten | examples, extendedData (inkl. applicabilityOverrides und Sortierhinweisen), examData (taskContent, solutionContent, scoring) sowie experimentData. | | dimensionTags | Strukturiertes Metadatenobjekt: phase (E, Q1–Q4, SekI, GLOBAL, Kompatibilitäts-/Badge-Feld), demandLevel (AB1–AB3), processCompetencies, guidingIdeas, framework, area, topicCode. | | Provenienz & Medien | sourceRef (amtliche Fundstelle) und resourceLinks (type: "curriculum" oder "goal-visualization", keine neuen Drittanbieterlinks an kanonischen Zielen; siehe Quellen- & Ressourcenlinks). | {cols="26%,74%"}

Zur Laufzeit überführen Frontend-Loader LearningGoal-Objekte in UiGoal (goalTypes.ts) und werten Scope-Filter, Frontier-Verfügbarkeit, SRS-Decks und Mastery-Aggregation aus, ohne die stabilen JSON-Identitäten zu verändern.