canon

Datenmodell

Der gemeinsame Kern, die Schemata der Produkte und die Regel, was in den Kern gehört.

Alle Tabellen liegen in einer PostgreSQL-Datenbank (ab Version 16), aufgeteilt in Schemata:

Schema Inhalt schreibt
kern Schulen, Personen, Mitgliedschaften, Schuljahr und Zeiträume, Klassen, Fächer, Kurse, Lehraufträge, Belegungen, Stundentafel, Hoheit, Protokoll je Datenart das Produkt mit Hoheit
roster Schülerakte: Stammblatt, Anschriften, Beziehungen, Sperrvermerke, Laufbahn, Schulwechsel, Förderplanung, Aufbewahrung roster
score Leistungen, Noten, Zeugnisse, Abschlüsse, Fristen, Regelpflege score
timbra Räume, Zeitraster, Kursplanung, freigegebene Pläne, Vertretungen timbra über die Kern-API

Was in den Kern gehört

In kern steht nur, was mindestens zwei Produkte brauchen. Alles andere liegt im Schema des Produkts und verweist auf die Kernzeile. Ein Zeitraum im Kern hat zum Beispiel nur Namen und Datum; den Notenschluss eines Halbjahres führt score in seinem eigenen Schema.

Personen und Teilnahme

Jeder Mensch ist genau eine kern.person, ohne Bindung an eine Schule. Woran er teilnimmt, steht in eigenen Tabellen mit Gültigkeit:

  • Mitgliedschaft an einer Schule mit einer Rolle (Schüler, Sorgeberechtigte, Lehrkraft, Klassenleitung, Sekretariat, Schulleitung …),
  • Klassenzugehörigkeit je Schuljahr,
  • Lehrauftrag und Belegung in einem Kurs,
  • Kürzel einer Lehrkraft je Schule.

Fachtabellen der Produkte haben keine Spalten für Namen oder Stammdaten; sie verweisen auf die Person. Personen aus fremden Systemen werden über deren Kennung zugeordnet, nie über den Namen.

Unterricht

schuljahr → zeitraum (Halbjahre), klasse je Schuljahr, fach, kurs je Schuljahr. Ein Kurs kann mehreren Klassen gehören (kurs_klasse), weil Stundenpläne Kurse über Klassen hinweg kennen. Die stundentafel hält Wochenstunden je Fach und Jahrgang oder Gesamtstunden je Beruf.

Verweise zwischen Tabellen tragen die Schule mit, damit nichts über Schulgrenzen zeigt.

Migrationen

Alle Migrationen liegen in canon, je Schema eine eigene Folge. Ein Produkt migriert den Kern und die Schemata, die es braucht. Migrationen sind nur abwärtskompatibel, weil bestehende Installationen je Schule oder Land einzeln migriert werden.

Weiter: Rechte und Protokoll.