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
2schema-version: 1.0.0
3title: 'QUADRIGA OERs: erstellen und gestalten mit Jupyter Book. QUADRIGA Open Educational
4 Resources: Template'
5identifier: https://doi.org/10.5281/zenodo.14970672
6version: 0.61.0
7date-issued: 2024-05-06
8date-modified: '2025-11-14'
9authors:
10- given-names: Hannes
11 family-names: Schnaitter
12 orcid: https://orcid.org/0000-0002-1602-6032
13 affiliation: Humboldt-Universität zu Berlin, Institut für Bibliotheks- und Informationswissenschaft
14 credit:
15 - Writing
16 - Software
17- given-names: Evgenia
18 family-names: Samoilova
19 orcid: https://orcid.org/0000-0003-3858-901X
20 affiliation: Universität Potsdam
21 credit:
22 - Writing
23- given-names: Lamia
24 family-names: Islam
25 affiliation: Universität Potsdam
26 credit:
27 - Software
28contributors:
29- family-names: Seltmann
30 given-names: Melanie
31 orcid: https://orcid.org/0000-0002-7588-4395
32- family-names: Walter
33 given-names: Paul
34 orcid: https://orcid.org/0000-0002-9236-3268
35- family-names: Zhang
36 given-names: Yue
37 orcid: https://orcid.org/0009-0007-6432-1259
38table-of-contents: '- Präambel
39
40 - Struktur und didaktisches Konzept
41
42 - Technologie
43
44 - Formatierungs- und Darstellungsmöglichkeiten
45
46 - Lernstandskontrolle (Assessment)
47
48 - Reflexion und Resümee
49
50 - Epilog'
51description: Diese OER führt in die Erstellung von QUADRIGA-OERs ein, bietet Inhalte
52 für Nutzer:innen der OERs und dient gleichzeitig als Template für die Erstellung
53 eigener OERs auf Basis der QUADRIGA-Empfehlungen.
54keywords:
55- Open Educational Resources
56- de: Offene Bildungsressource
57- en: Jupyter Book
58- en: Data Literacy
59 de: Datenkompetenz
60language: de
61discipline:
62- übergreifend
63research-object-type:
64- übergreifend
65target-group:
66- Forschende (PostDoc)
67- Forschende (Projektleitung)
68- Promovierende
69- Hochschullehrende
70time-required: PT16H15M
71context-of-creation: 'Die vorliegenden Open Educational Resources wurden durch das
72 Datenkompetenzzentrum QUADRIGA erstellt.
73
74
75 Förderkennzeichen: 16DKZ2034'
76url: https://quadriga-dk.github.io/Book_Template/
77git: https://github.com/quadriga-dk/Book_Template
78license:
79 code: https://opensource.org/licenses/AGPL-3.0
80 content:
81 url: https://creativecommons.org/licenses/by-sa/4.0/
82 name: CC BY-SA 4.0
83chapters:
84- title: Präambel
85 url: https://quadriga-dk.github.io/Book_Template/präambel/toc.html
86 description: Präambel des Templates. Gibt grundlegende Informationen zu Lernzielen,
87 Voraussetzungen und Vorkenntnissen.
88 learning-goal: Überblick über Template
89 time-required: PT15M
90 learning-objectives:
91 - learning-objective: Das Template und seine Bestandteile werden verstanden und
92 die jeweils relevanten Inhalte sind der Nutzer:in klar.
93 competency: Orientierungswissen
94 data-flow: übergreifend
95 blooms-category: 2 Verstehen
96 - learning-objective: Die technischen Voraussetzungen für die verschiedenen möglichen
97 Nutzungsformen werden verstanden.
98 competency: Orientierungswissen
99 data-flow: übergreifend
100 blooms-category: 2 Verstehen
101- title: Struktur und didaktisches Konzept
102 url: https://quadriga-dk.github.io/Book_Template/struktur_didaktisches_konzept/einleitung.html
103 description: Dieses Kapitel stellt die Struktur des Templates und das zugrunde liegende
104 didaktische Konzept vor.
105 time-required: PT2H
106 learning-goal: Fallstudienbasiertes didaktisches Konzept von QUADRIGA
107 learning-objectives:
108 - learning-objective: Der forschungsgeleitete Ansatz der QUADRIGA OERs kann erläutert
109 und der Beitrag von Fallstudien zur Datenkompetenzvermittlung erklärt werden.
110 competency: Orientierungswissen
111 data-flow: übergreifend
112 blooms-category: 2 Verstehen
113 - learning-objective: Die hierarchische Struktur der Lernziele in QUADRIGA OERs
114 kann beschrieben und der Zusammenhang zwischen Fallstudienstruktur, Datenlebenszyklus
115 und Lernzielen erläutert werden.
116 competency: Orientierungswissen
117 data-flow: übergreifend
118 blooms-category: 2 Verstehen
119 - learning-objective: Die zentralen didaktischen Komponenten einer QUADRIGA OER
120 können identifiziert und deren Funktion im Lernprozess erklärt werden.
121 competency: Orientierungswissen
122 data-flow: übergreifend
123 blooms-category: 2 Verstehen
124- title: Technologie
125 url: https://quadriga-dk.github.io/Book_Template/technologie/einleitung.html
126 description: Es werden die verschiedenen Bestandteile des Templates sowie die Technologien,
127 welche genutzt werden, vorgestellt. Besonderes Augenmerk liegt auf dem Zusammenspiel
128 der einzelnen Elemente.
129 time-required: PT5H
130 learning-goal: Technische Umsetzung der QUADRIGA OERs
131 learning-objectives:
132 - learning-objective: Die Bestandteile der Entwicklungsumgebung (Git, Python, Jupyter
133 Book, Editor) können identifiziert und deren Funktionen im OER-Entwicklungsprozess
134 erläutert werden.
135 competency: Orientierungswissen
136 data-flow: übergreifend
137 blooms-category: 2 Verstehen
138 - learning-objective: Der Unterschied zwischen Jupyter Book und Jupyter Notebook
139 kann erklärt und deren jeweilige Rolle im Entwicklungsworkflow beschrieben werden.
140 competency: Orientierungswissen
141 data-flow: übergreifend
142 blooms-category: 2 Verstehen
143 - learning-objective: Die automatische Website-Erstellung über GitHub Actions kann
144 erklärt und der Vorteil gegenüber manueller lokaler Entwicklung bewertet werden.
145 competency: Orientierungswissen
146 data-flow: übergreifend
147 blooms-category: 2 Verstehen
148 - learning-objective: Die Installation und Einrichtung einer lokalen Entwicklungsumgebung
149 mit Python/Anaconda kann durchgeführt und Virtual Environments für projektspezifische
150 Anforderungen erstellt werden.
151 competency: Orientierungswissen
152 data-flow: übergreifend
153 blooms-category: 3 Anwenden
154 - learning-objective: Der Unterschied zwischen Texteditoren und Textprozessoren
155 für die Code-Entwicklung kann erklärt und geeignete Editoren wie VS Code für
156 die OER-Entwicklung ausgewählt werden.
157 competency: Orientierungswissen
158 data-flow: übergreifend
159 blooms-category: 2 Verstehen
160- title: Formatierungs- und Darstellungsmöglichkeiten
161 url: https://quadriga-dk.github.io/Book_Template/formatierung/einleitung.html
162 time-required: PT5H
163 description: Spezifische Ausführungen und Anleitungen zu Markdown- und Jupyter-Noteboook-Dateien
164 und Formatierungsmöglichkeiten. Empfehlungen für deren einheitliche Nutzung in
165 QUADRIGA OERs.
166 learning-goal: Schreiben und Formatieren von Inhalten nach den Empfehlungen von
167 QUADRIGA
168 learning-objectives:
169 - learning-objective: Kenntnis, Auswahl und Nutzung verschiedener möglicher Dateiformate
170 und Programmiersprachen
171 competency: Orientierungswissen
172 data-flow: übergreifend
173 blooms-category: 3 Anwenden
174 - learning-objective: Kenntnis, Auswahl und Nutzung spezifischer Auszeichungs- und
175 Formatierungsoptionen
176 competency: Orientierungswissen
177 data-flow: übergreifend
178 blooms-category: 3 Anwenden
179- title: Lernstandskontrolle (Assessment)
180 url: https://quadriga-dk.github.io/Book_Template/assessment/einleitung.html
181 description: Assessment-Konzept und dessen konkrete Ausgestaltung in Jupyter Books,
182 die den QUADRIGA-Empfehlungen folgen
183 learning-goal: Gestaltung und Implementierung von Assessments
184 time-required: PT3H
185 learning-objectives:
186 - learning-objective: Verständnis des Assessmentkonzepts von QUADRIGA
187 competency: Orientierungswissen
188 data-flow: übergreifend
189 blooms-category: 2 Verstehen
190 - learning-objective: Auswahl und Implementierung spezifischer Assessment-Formate
191 competency: Orientierungswissen
192 data-flow: übergreifend
193 blooms-category: 3 Anwenden
194- title: Reflexion und Resümee
195 url: https://quadriga-dk.github.io/Book_Template/reflexion_und_resümee/toc.html
196 description: Zusammenfassung und Wiederholung der wichtigsten Inhalte des Buchs.
197 Hinweise auf weiterführende Inhalte.
198 learning-goal: Festigung der erlernten Inhalte
199 time-required: PT1H
200 learning-objectives:
201 - learning-objective: Kenntnis der wichtigsten Inhalte des Templates und dessen
202 Nutzung
203 competency: nicht anwendbar
204 data-flow: nicht anwendbar
205 blooms-category: 2 Verstehen
206 - learning-objective: Auswahl geeigneter Formate, Formatierungskonzepte, Übungs-
207 und Assessmentformate und deren Anwendung.
208 competency: nicht anwendbar
209 data-flow: nicht anwendbar
210 blooms-category: 3 Anwenden
211quality-assurance:
212- date: 2025-11-10
213 person: TODO
214 description: TODO
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.