3.10. Metadaten#
In diesem Kapitel wird Ihnen zuerst das Metadatenschema für QUADRIGA-OERs
vorgestellt. Anschließend wird präsentiert, wie dieses in der Datei
metadata.yml konkret umgesetzt wird. Zum Abschluss werden die tatsächlichen
Metadaten der vorliegenden OER präsentiert sowie die verschiedenen
Exportformate erläutert.
3.10.1. Das QUADRIGA Metadatenschema#
Das QUADRIGA Metadatenschema wurde speziell für Open Educational Resources (OERs) entwickelt, die im Rahmen des QUADRIGA-Projekts erstellt werden und umfasst spezifische Felder zur Beschreibung von Lernzielen, Kompetenzen und didaktischen Elementen. Dazu kombiniert es verschiedene Metadatenstandards wie Dublin Core Elements 1.1, Dublin Core Terms, schema.org, LRMI und MoDALIA (siehe auch DALIA). Hierzu werden Mappings unter Verwendung von skos:mappingRelation definiert.
3.10.2. Struktur und Felder der metadata.yml#
Für die Definition der Metadaten im Jupyter Book wurde YAML gewählt, da es durch OER-Autor:innen einfach geschrieben und gleichzeitig gut automatisch verarbeitet werden kann.
Die Metadaten können theoretisch auch in anderen YAML-Dateien als
eigenständiges YAML-Dokument eingebettet werden, jedoch setzen die Skripte zur
automatischen Generierung von Formaten wie CFF, BibTeX und anderen die
Speicherung der Metadaten in der Datei metadata.yml im Wurzelverzeichnis des
Jupyter Book voraus.
Eine Metadatenbeschreibung nach dem QUADRIGA Metadatenschema wird als valide
betrachtet, wenn sie mindestens alle Pflichtfelder beinhaltet und technisch
korrekt umgesetzt wurde. Das Metadatenschema ist in JSON-Schema implementiert und zu finden in auf
GitHub (https://github.com/quadriga-dk/quadriga-schema)
und als HTML-Darstellung. Die
.json-Dateien der Schemadefinition (bspw. schema.json der Version
1.0.0) sind ebenfalls auf der GitHub Page publiziert und können darüber
eingebunden werden.
Im Abschnitt Felder werden alle optionalen sowie verpflichtenden Felder präsentiert. Dabei wird jeweils angegeben, ob sie verpflichtend sind sowie welche Datentypen als Wert zugelassen sind.
Struktur#
Eine minimal kleine valide Metadatenbeschreibung sieht strukturell wie folgt aus:
schema-version:
version:
title:
description:
table-of-contents:
discipline:
time-required:
research-object-type:
identifier:
url:
date-modified:
date-issued:
target-group:
authors:
- given-names:
family-names:
chapters:
- title:
description:
learning-objectives:
- learning-objective:
competency:
focus:
data-flow:
blooms-category:
learning-goal:
context-of-creation:
Eine minimale Metadatendatei als Startpunkt finden Sie ebenfalls im Repositorium zum QUADRIGA-Metadaten-Schema.
Felder#
Im Folgenden werden die wichtigsten Felder des QUADRIGA-Metadatenschemas beschrieben. Pflichtfelder sind mit ⭐ gekennzeichnet. Nutzen Sie auch die interaktive Darstellung des Schemas.
schema-version⭐#
Versionsnummer des QUADRIGA-Metadatenschemas. Es gibt ein kontrolliertes Vokabular möglicher Versionen (aktuell: “1.0.0”). Wird das QUADRIGA-Metadatenschema verändert/erweitert, so wird eine neue Version definiert. Vorherige, veröffentlichte Versionen bleiben bestehen, können jedoch ggf. als “deprecated” markiert werden.
version⭐#
Version des Buchs im SemVer-Format. Eine Versionsänderung korrespondiert auch immer mit einer Änderung von date-modified⭐.
title⭐#
Titel der OER.
description⭐#
Beschreibung der OER als Freitext.
table-of-contents⭐#
Inhaltsverzeichnis der OER als Freitext.
discipline⭐#
Nennung der Disziplinen, die bei der Erstellung der OER im Fokus standen. Mögliche Disziplinen sind in einem kontrollierten Vokabular definiert.
time-required⭐#
Angedachte Bearbeitungsdauer für Lernende im ISO 8601 Duration-Format (siehe Wikipedia-Artikel zu ISO8601).
Beispiele:
PT16H15Mfür 16 Stunden und 15 MinutenP1DT10Sfür 1 Tag und 10 Sekunden
Typischerweise werden Angaben zur Bearbeitungsdauer in Stunden und Minuten angegeben.
research-object-type⭐#
Nennung des Datentyps, der vorrangig in der OER behandelt wird. Es können ein bis zwei Typen aus einem kontrollierten Vokabular ausgewählt werden.
identifier⭐#
Eindeutiger Identifier in Form einer DOI. Die DOI identifiziert das gesamte Buch.
url⭐#
URL der Website-Ansicht des Buchs.
git#
Git-Repositorium, in dem die OER-Inhalte zu finden sind.
has-predecessor#
Link zur Vorgänger-OER oder false. Verweis auf eine Vorgänger-OER, in der
z.B. vorausgesetzte Inhalte erklärt werden.
has-successor#
Link zur Nachfolger-OER oder false. Verweis auf eine Nachfolger-OER, in der
z.B. Inhalte aus der aktuellen OER weiterentwickelt werden.
date-modified⭐#
Datum der letzten (großen, inhaltlich umfangreichen) Änderung. Sollte immer mit einer Versionsänderung (version⭐) einhergehen. Verbesserungen von Grammatik und Orthographie verlangen nicht zwingend die Erstellung einer neuen Version. Dieses Datum muss jedoch aktualisiert werden, wenn eine neue Version auf Zenodo veröffentlicht wird (bspw. über die Release-Funktion auf GitHub).
date-issued⭐#
Datum der Erstveröffentlichung.
target-group⭐#
Zielgruppe des Buchs. Es können eine oder mehrere Zielgruppen aus einem kontrollierten Vokabular ausgewählt werden.
chapters⭐#
Liste der Kapitel des Buchs. Jedes Kapitel enthält einen Titel (title⭐ (in chapters)), eine Beschreibung (description⭐ (in chapters)), eine Liste von Lernzielen (learning-objectives⭐ (in chapters)) und ein Groblernziel (learning-goal⭐ (in chapters)). Optional können auch eine URL zum direkten Zugriff auf die Kapitelseite und eine Bearbeitungsdauer angegeben werden.
learning-objectives⭐ (in chapters)#
Eine Liste von Lernzielen. Jede Lernzieldefinition umfasst eine Formulierung
des Lernziels (learning-objective), die adressierte Kompetenz
(competency⭐ (in learning-objectives)), eine Einordnung im Datenfluss
(data-flow⭐ (in learning-objectives)) und eine Kategorie aus der Bloomschen Taxonomie
(blooms-category).
learning-goal⭐ (in chapters)#
Kurze Benennung des Groblernziels des Kapitels.
context-of-creation⭐#
Eine Beschreibung des Entstehungskontextes. Im konkreten Fall ein natürlichsprachlicher Verweis auf das QUADRIGA-Projekt.
keywords#
Liste von Schlag-/Stichwörtern, welche das Buch und dessen (Lern-)Inhalte beschreiben.
language#
Sprache der OER als ISO639-1 Sprachcode (zwei Buchstaben – bspw. de, en,
…).
license#
Lizenz des Buchs und des Codes jeweils als URL oder als Kombination aus
Lizenzname und URL. Mindestens die Informationen zur Lizenz des Inhalts
(content) sind erforderlich, optional können auch Angaben zur Lizenz des
Codes (code) gemacht werden.
prerequisites#
Liste von Voraussetzungen und deren jeweiliger Einordnung in der Bloomschen Taxonomie, welche Lernende für die erfolgreiche Bearbeitung des Buchs mitbringen sollten.
quality-assurance#
Eine Liste von Qualitätssicherungs-Ereignissen. Jedes Ereignis enthält eine Person, ein Datum und optional eine Beschreibung der durchgeführten Qualitätssicherungsmaßnahme.
Dieses Feld wird aktuell noch überarbeitet!
supplemented-by#
Liste von Verweisen und jeweils einer kurzen Beschreibung zu zusätzlichen,
weiterführenden Inhalten o.ä., die in einem Kapitel verwendet werden. Jeder
Eintrag enthält eine Beschreibung (description) und eine URL (url).
type-of-learning-resource#
Beschreibung der Materialart der OER. Aktuell ist nur “Jupyter Book” als Wert vorgesehen.
used-tools#
Liste von Tools, die bei der Erstellung des Buchs verwendet wurden. Diese können als einfache URI oder als strukturierte Angabe mit Namen und URL angegeben werden.
data-flow⭐ (in learning-objectives)#
Schritt im Datenfluss, dem die Kompetenz zugeordnet ist. Muss aus einem kontrollierten Vokabular ausgewählt werden: “Grundlagen”, “Planung”, “Erhebung und Aufbereitung”, “Management”, “Analyse” sowie “Publikation und Nachnutzung”.
competency⭐ (in learning-objectives)#
Im Lernziel adressierte Kompetenz nach dem QUADRIGA Datenkompetenzframework. Muss aus einem kontrollierten Vokabular ausgewählt werden.
blooms-category⭐ (in learning-objectives)#
Kategorie der Bloomschen Taxonomie, welcher das Lernziel zugeordnet ist. Aus der Kombination der Zuordnungen der Lernziele eines Kapitels lässt sich ein allgemeines Kompetenzniveau (“Basis”, “Fortgeschritten”, “Expert:in”) ableiten. Muss aus einem kontrollierten Vokabular ausgewählt werden.
semver#
Ein Bezeichner nach dem Semantic Versioning 2.0.0 Format. Wird bei der Versionierung des Schemas und der OER verwendet. Besteht aus Major-, Minor- und Patch-Version (z.B. “1.1.0”), optional gefolgt von Pre-Release-Identifikatoren und Build-Metadaten.
multilingual-text#
Natürlichsprachlicher Text wird standardmäßig auf Deutsch verfasst. Soll dies
explizit gemacht werden und/oder sollen andere Sprachen verwendet werden, so
kann hier statt einer Zeichenkette (string) ein Mapping (object) von
ISO639-1 Sprachcodes und dem Text in der entsprechenden Sprache verwendet
werden.
person#
Eine Person kann entweder als einfache Zeichenkette oder als Mapping, das
mindestens Schlüssel für Vor- und Nachname (given-names, family-names)
enthält modelliert werden.
Es wird empfohlen eine ORCID anzugeben. Zusätzlich können Rollen nach dem CRediT-System (Contributor Roles Taxonomy) für die Person angegeben werden.
title⭐ (in chapters)#
Kapitelüberschrift, die für dieses Kapitel verwendet wird. Kann als einfacher Text oder als mehrsprachiger Text angegeben werden.
description⭐ (in chapters)#
Beschreibung des Kapitelinhalts. Bietet eine Übersicht darüber, was in diesem Kapitel behandelt wird.
url (in chapters)#
URL zum direkten Zugriff auf die erste Seite der ‘Leseansicht’ (Website) des Kapitels.
time-required (in chapters)#
Angedachte Bearbeitungsdauer für Lernende, spezifisch für dieses Kapitel, im ISO 8601 Duration-Format.
3.10.3. metadata.yml der vorliegenden OER#
1# yaml-language-server: $schema=https://quadriga-dk.github.io/quadriga-schema/v1.0.0/schema.json
2title: 'QUADRIGA-OER: erstellen und gestalten mit Jupyter Book. QUADRIGA Open Educational
3 Resources: Anleitung'
4authors:
5- given-names: Hannes
6 family-names: Schnaitter
7 orcid: https://orcid.org/0000-0002-1602-6032
8 affiliation: Humboldt-Universität zu Berlin, Institut für Bibliotheks- und Informationswissenschaft
9 credit:
10 - Writing – original draft
11 - Writing – review & editing
12 - Software
13- given-names: Evgenia
14 family-names: Samoilova
15 orcid: https://orcid.org/0000-0003-3858-901X
16 affiliation: Universität Potsdam
17 credit:
18 - Writing – original draft
19 - Writing – review & editing
20- given-names: Lamia
21 family-names: Islam
22 affiliation: Universität Potsdam
23 credit:
24 - Software
25keywords:
26- Open Educational Resources
27- de: Offene Bildungsressource
28- en: Jupyter Book
29- en: Data Literacy
30 de: Datenkompetenz
31- open-educational-resources
32description: Dieses interaktive Lehrbuch führt in die Erstellung von Open Educational
33 Resources (OER) nach den Empfehlungen und Vorgaben des Datenkompetenzzentrumgs QUADRIGA
34 als <a href="https://jupyterbook.org">Jupyter Book</a> ein. Diese Empfehlungen und
35 Vorgaben sind einerseits inhaltlicher und didaktischer andererseits technischer
36 Natur. Diese OER richtet sich vorrangig an OER-Erstellende und kann zusammen mit
37 dem <a href="https://github.com/quadriga-dk/Book_Template" target="_blank">Book_Template</a>
38 für die Erstellung eigener OER genutzt werden. Einzelne (Unter-)Kapitel bieten zudem
39 Erläuterungen zu Funktionalitäten für Lernende.
40table-of-contents: '- Präambel
41
42 - Struktur und didaktisches Konzept
43
44 - Technologie
45
46 - Formatierungs- und Darstellungsmöglichkeiten
47
48 - Lernstandskontrolle (Assessment)
49
50 - Reflexion und Resümee
51
52 - Epilog'
53discipline:
54- übergreifend
55research-object-type:
56- übergreifend
57target-group:
58- Forschende (PostDoc)
59- Forschende (Projektleitung)
60- Promovierende
61- Hochschullehrende
62time-required: PT16H15M
63language: de
64contributors:
65- family-names: Seltmann
66 given-names: Melanie
67 orcid: https://orcid.org/0000-0002-7588-4395
68 affiliation: Humboldt-Universität zu Berlin, Institut für Bibliotheks- und Informationswissenschaft
69- family-names: Walter
70 given-names: Paul
71 orcid: https://orcid.org/0000-0002-9236-3268
72 affiliation: Fachhochschule Potsdam
73- family-names: Zhang
74 given-names: Yue
75 orcid: https://orcid.org/0009-0007-6432-1259
76identifier: https://doi.org/10.5281/zenodo.14970672
77git: https://github.com/quadriga-dk/QUADRIGA-OER-Manual
78url: https://quadriga-dk.github.io/QUADRIGA-OER-Manual/
79used-tools:
80- name: Jupyter Book
81 url: https://jupyterbook.org
82chapters:
83- title: Struktur und didaktisches Konzept
84 url: https://quadriga-dk.github.io/QUADRIGA-OER-Manual/struktur_didaktisches_konzept/einleitung.html
85 description: Dieses Kapitel stellt die Struktur des Templates und das zugrunde liegende
86 didaktische Konzept vor.
87 time-required: PT2H
88 learning-goal: Sie kennen und verstehen das fallstudienbasierte didaktische Konzept
89 von QUADRIGA für die Gestaltung von OER.
90 learning-objectives:
91 - learning-objective: Der forschungsgeleitete Ansatz der QUADRIGA OERs kann erläutert
92 und der Beitrag von Fallstudien zur Datenkompetenzvermittlung erklärt werden.
93 competency: Orientierungswissen
94 data-flow: übergreifend
95 blooms-category: 2 Verstehen
96 - learning-objective: Die hierarchische Struktur der Lernziele in QUADRIGA OERs
97 kann beschrieben und der Zusammenhang zwischen Fallstudienstruktur, Datenlebenszyklus
98 und Lernzielen erläutert werden.
99 competency: Orientierungswissen
100 data-flow: übergreifend
101 blooms-category: 2 Verstehen
102 - learning-objective: Die zentralen didaktischen Komponenten einer QUADRIGA OER
103 können identifiziert und deren Funktion im Lernprozess erklärt werden.
104 competency: Orientierungswissen
105 data-flow: übergreifend
106 blooms-category: 2 Verstehen
107- title: Technologie
108 url: https://quadriga-dk.github.io/QUADRIGA-OER-Manual/technologie/einleitung.html
109 description: Es werden die verschiedenen Bestandteile des Templates sowie die Technologien,
110 welche genutzt werden, vorgestellt. Besonderes Augenmerk liegt auf dem Zusammenspiel
111 der einzelnen Elemente.
112 time-required: PT5H
113 learning-goal: Sie kennen die verschiedenen technologischen Bestandteile von QUADRIGA
114 OER und ihr Zusammenspiel.
115 learning-objectives:
116 - learning-objective: Die Bestandteile der Entwicklungsumgebung (Git, Python, Jupyter
117 Book, Editor) können identifiziert und deren Funktionen im OER-Entwicklungsprozess
118 erläutert werden.
119 competency: Orientierungswissen
120 data-flow: übergreifend
121 blooms-category: 2 Verstehen
122 - learning-objective: Der Unterschied zwischen Jupyter Book und Jupyter Notebook
123 kann erklärt und deren jeweilige Rolle im Entwicklungsworkflow beschrieben werden.
124 competency: Orientierungswissen
125 data-flow: übergreifend
126 blooms-category: 2 Verstehen
127 - learning-objective: Die automatische Website-Erstellung über GitHub Actions kann
128 erklärt und der Vorteil gegenüber manueller lokaler Entwicklung bewertet werden.
129 competency: Orientierungswissen
130 data-flow: übergreifend
131 blooms-category: 2 Verstehen
132 - learning-objective: Die Installation und Einrichtung einer lokalen Entwicklungsumgebung
133 mit Python/Anaconda kann durchgeführt und Virtual Environments für projektspezifische
134 Anforderungen erstellt werden.
135 competency: Orientierungswissen
136 data-flow: übergreifend
137 blooms-category: 3 Anwenden
138 - learning-objective: Der Unterschied zwischen Texteditoren und Textprozessoren
139 für die Code-Entwicklung kann erklärt und geeignete Editoren wie VS Code für
140 die OER-Entwicklung ausgewählt werden.
141 competency: Orientierungswissen
142 data-flow: übergreifend
143 blooms-category: 2 Verstehen
144- title: Formatierungs- und Darstellungsmöglichkeiten
145 url: https://quadriga-dk.github.io/QUADRIGA-OER-Manual/formatierung/einleitung.html
146 time-required: PT5H
147 description: Spezifische Ausführungen und Anleitungen zu Markdown- und Jupyter-Noteboook-Dateien
148 und Formatierungsmöglichkeiten. Empfehlungen für deren einheitliche Nutzung in
149 QUADRIGA OERs.
150 learning-goal: Sie können Inhalte nach den Empfehlungen von QUADRIGA schreiben und
151 formatieren.
152 learning-objectives:
153 - learning-objective: Kenntnis, Auswahl und Nutzung verschiedener möglicher Dateiformate
154 und Programmiersprachen
155 competency: Orientierungswissen
156 data-flow: übergreifend
157 blooms-category: 3 Anwenden
158 - learning-objective: Kenntnis, Auswahl und Nutzung spezifischer Auszeichungs- und
159 Formatierungsoptionen
160 competency: Orientierungswissen
161 data-flow: übergreifend
162 blooms-category: 3 Anwenden
163- title: Lernstandskontrolle (Assessment)
164 url: https://quadriga-dk.github.io/QUADRIGA-OER-Manual/assessment/einleitung.html
165 description: Assessment-Konzept und dessen konkrete Ausgestaltung in Jupyter Books,
166 die den QUADRIGA-Empfehlungen folgen
167 learning-goal: Sie verstehen das Assessmentkonzept QUADRIGAs und können dieses nach
168 den Vorgaben und Empfehlungen implementieren
169 time-required: PT3H
170 learning-objectives:
171 - learning-objective: Verständnis des Assessmentkonzepts von QUADRIGA.
172 competency: Orientierungswissen
173 data-flow: übergreifend
174 blooms-category: 2 Verstehen
175 - learning-objective: Auswahl und Implementierung spezifischer Assessment-Formate
176 competency: Orientierungswissen
177 data-flow: übergreifend
178 blooms-category: 3 Anwenden
179date-issued: '2026-03-11'
180date-modified: '2026-03-11'
181version: 0.1.1
182context-of-creation: 'Die vorliegenden Open Educational Resources wurden durch das
183 Datenkompetenzzentrum QUADRIGA erstellt.
184
185
186 Förderkennzeichen: 16DKZ2034'
187quality-assurance:
188 date: '2026-11-14'
189 description: https://doi.org/10.5281/zenodo.18953896
190learning-resource-type: Jupyter Book
191schema-version: 1.0.0
192license:
193 code: https://opensource.org/licenses/AGPL-3.0
194 content:
195 url: https://creativecommons.org/licenses/by-sa/4.0/
196 name: CC BY-SA 4.0
3.10.4. JSON-Schema#
Das JSON-Schema ist definiert im Repositorium quadriga-schema. Auf Basis dieses Repositoriums
wird eine interaktive Darstellung sowie der
Einstieg für die Nutzung in anderen
Schemas oder in Verifikationstools (schema.json hier im Versionsalias
latest) generiert. Für die Verwendung in Werkzeugen sollte immer eine
bestimmte Version festgelegt werden – bspw.
https://quadriga-dk.github.io/quadriga-schema/v1.0.0/schema.json
3.10.5. Metadaten-Exportformate#
Die in metadata.yml erfassten Metadaten werden automatisch in verschiedene
standardisierte Formate exportiert, um die Auffindbarkeit, Nachnutzbarkeit und
Interoperabilität der OER zu gewährleisten. Die Transformation erfolgt durch
Python-Skripte im Verzeichnis quadriga/metadata/ und wird im Build-Prozess
automatisch ausgeführt.
Generierte Formate#
JSON-LD (metadata.jsonld)#
JSON-LD (JavaScript Object Notation for Linked Data) ist ein Format für strukturierte, verlinkte Daten im Web. Die exportierten Metadaten folgen dem Schema.org-Vokabular und werden als maschinenlesbare Linked Data bereitgestellt.
Im Publikationsprozess werden per GitHub Action die JSON-LD-Daten in die Startseite des Buchs sowie die Kapitel-Startseiten integriert.
RDF/XML (metadata.rdf)#
RDF (Resource Description Framework) in XML-Serialisierung ermöglicht die Verarbeitung der Metadaten durch Semantic-Web-Anwendungen und Triple Stores.
Ein <link>-Tag zu den RDF-Daten wird über die GitHub Action in die Startseite
des Buchs integriert.
BibTeX (references.bib)#
BibTeX-Format für die Referenzen, auf welche sich im Buch berufen wird.
CITATION.cff#
GitHub-Standard für Software- und Datensatz-Zitation im CITATION.cff-Format (Citation File Format).
Zenodo JSON (.zenodo.json)#
Metadaten im Zenodo-Format für die Archivierung und DOI-Vergabe über die Zenodo-Plattform. Diese Metadaten liefern die Grundlage für die Metadaten in Zenodo.
Das Format ist definiert in legacyrecord.json.
Metadaten-Verarbeitungspipeline#
Die Verarbeitung der Metadaten erfolgt in folgenden Schritten:
Quelldateien:
metadata.ymlmit QUADRIGA-Schema (siehe schema-version⭐) sowie_config.ymlund_toc.ymlIm ersten Schritt werden ggf. Informationen (bspw. Titel des Buchs, Inhaltsverzeichnis, …) inmetadata.ymlauf Basis der Jupyter Book Konfigurationsdateien aktualisiert.Generierung: Python-Skripte in
quadriga/metadata/transformieren die YAML-Daten:create_jsonld.py→metadata.jsonldcreate_rdfxml.py→metadata.rdfcreate_bibtex.py→references.bibupdate_citation_cff.py→CITATION.cffcreate_zenodo_json.py→.zenodo.json
Build: Jupyter Book erstellt die HTML-Ausgabe in
_build/html/Injektion:
inject_metadata.pybettet JSON-LD in HTML-Seiten ein und fügt RDF-Links hinzuBereitstellung: Relevante Metadatendateien werden in das Build-Verzeichnis kopiert
Die Skripte nutzen gemeinsame Hilfsfunktionen aus utils.py für
YAML-Verarbeitung, Keyword-Extraktion und Formatierung.