fOERbico/Orga/oer-community-webseite-orga/wissensgrundlagen/felder.yaml

198 lines
6.8 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Feldregeln FOERBICO Blog YAML-Frontmatter
# Definiert Struktur, Pflichtfelder, Standardwerte und Ableitungslogik
# für beide Blöcke: commonMetadata (OERSI/AMB) und staticSiteGenerator (Hugo).
# ─────────────────────────────────────────────
# BLOCK 1: commonMetadata
# ─────────────────────────────────────────────
commonMetadata:
context:
feld: "'@context'"
pflicht: true
wert: https://schema.org/
# Immer dieser feste Wert. Anführungszeichen nötig wegen @ in YAML.
creativeWorkStatus:
feld: creativeWorkStatus
pflicht: true
erlaubte_werte: [Published, Draft]
standard: Published
type:
feld: type
pflicht: true
wert: LearningResource
name:
feld: name
pflicht: true
ableitung: identisch mit staticSiteGenerator.title
description:
feld: description
pflicht: true
yaml_stil: ">-" # Fließtext, kein abschließender Zeilenumbruch
ableitung: identisch mit staticSiteGenerator.summary
license:
feld: license
pflicht: true
standard: https://creativecommons.org/licenses/by/4.0/deed.de
optionen:
CC0: https://creativecommons.org/publicdomain/zero/1.0/deed.de
CC-BY: https://creativecommons.org/licenses/by/4.0/deed.de
CC-BY-SA: https://creativecommons.org/licenses/by-sa/4.0/deed.de
CC-BY-NC: https://creativecommons.org/licenses/by-nc/4.0/deed.de
CC-BY-NC-SA: https://creativecommons.org/licenses/by-nc-sa/4.0/deed.de
id:
feld: id
pflicht: true
muster: "https://oer.community/{url}"
# {url} = Wert von staticSiteGenerator.url
creator:
feld: creator
pflicht: true
quelle: data/personen.yaml
# Strukturierte Autorenangaben mit givenName, familyName, type, ggf. id (ORCID) und affiliation
inLanguage:
feld: inLanguage
pflicht: true
standard: [de]
image:
feld: image
pflicht: true
muster: "https://oer.community/{url}/{dateiname}"
# {url} = staticSiteGenerator.url
# {dateiname} = staticSiteGenerator.cover.image
learningResourceType:
feld: learningResourceType
pflicht: true
standard: [https://w3id.org/kim/hcrt/text, https://w3id.org/kim/hcrt/web_page]
optionen:
text: https://w3id.org/kim/hcrt/text
web_page: https://w3id.org/kim/hcrt/web_page
video: https://w3id.org/kim/hcrt/video
audio: https://w3id.org/kim/hcrt/audio
presentation: https://w3id.org/kim/hcrt/presentation
image: https://w3id.org/kim/hcrt/image
worksheet: https://w3id.org/kim/hcrt/worksheet
course: https://w3id.org/kim/hcrt/course
educationalLevel:
feld: educationalLevel
pflicht: true
standard: [https://w3id.org/kim/educationalLevel/level_A]
optionen:
level_A: https://w3id.org/kim/educationalLevel/level_A # Allgemein
level_B: https://w3id.org/kim/educationalLevel/level_B # Berufsbildung
level_C: https://w3id.org/kim/educationalLevel/level_C # Hochschule
datePublished:
feld: datePublished
pflicht: true
format: "'YYYY-MM-DD'" # Anführungszeichen sind Pflicht
keywords:
feld: keywords
pflicht: true
quelle: data/schlagworte.yaml
ableitung: identisch mit staticSiteGenerator.tags
about:
feld: about
pflicht: false
# KIM Hochschulfächersystematik
optionen:
Allgemeine Pädagogik: https://w3id.org/kim/hochschulfaechersystematik/n01
Erziehungswissenschaft: https://w3id.org/kim/hochschulfaechersystematik/n02
Psychologie: https://w3id.org/kim/hochschulfaechersystematik/n03
Medienpädagogik: https://w3id.org/kim/hochschulfaechersystematik/n052
Evangelische Theologie: https://w3id.org/kim/hochschulfaechersystematik/n053
Katholische Theologie: https://w3id.org/kim/hochschulfaechersystematik/n054
Informatik: https://w3id.org/kim/hochschulfaechersystematik/n069
Kommunikationswissenschaft: https://w3id.org/kim/hochschulfaechersystematik/n079
Politikwissenschaft: https://w3id.org/kim/hochschulfaechersystematik/n086
Informationswissenschaft: https://w3id.org/kim/hochschulfaechersystematik/n121
# ─────────────────────────────────────────────
# BLOCK 2: staticSiteGenerator
# ─────────────────────────────────────────────
staticSiteGenerator:
author:
feld: author
pflicht: true
format: "Vorname Nachname"
ableitung: Vor- und Nachname aus commonMetadata.creator
title:
feld: title
pflicht: true
ableitung: identisch mit commonMetadata.name
cover:
feld: cover
pflicht: true
unterfelder:
relative:
pflicht: true
wert: true
# true = Bilddatei liegt im Post-Verzeichnis
# false = externes Bild (URL), dann cover.image = volle URL
image:
pflicht: true
format: "dateiname.ext"
# Nur Dateiname, kein Pfad identisch mit letztem Segment von commonMetadata.image
alt:
pflicht: false
# Bildbeschreibung für Barrierefreiheit, empfohlen
caption:
pflicht: false
# Bildunterschrift, optional
hiddenInSingle:
pflicht: true
standard: true
summary:
feld: summary
pflicht: true
yaml_stil: ">-"
ableitung: identisch mit commonMetadata.description
url:
feld: url
pflicht: true
regeln:
- Nur Kleinbuchstaben
- "Leerzeichen → Bindestrich"
- "ä → ae, ö → oe, ü → ue, ß → ss"
- "Sonderzeichen entfernen: # ? ! : ' ( )"
- Maximal 60 Zeichen
beispiel: "OERcamp #2025 in Hamburg → oercamp-2025-in-hamburg"
tags:
feld: tags
pflicht: true
quelle: data/schlagworte.yaml
ableitung: identisch mit commonMetadata.keywords
# ─────────────────────────────────────────────
# ABLEITUNGSREGELN (Zusammenfassung)
# ─────────────────────────────────────────────
ableitungen:
- commonMetadata.name == staticSiteGenerator.title
- commonMetadata.description == staticSiteGenerator.summary
- commonMetadata.keywords == staticSiteGenerator.tags
- commonMetadata.id == "https://oer.community/" + staticSiteGenerator.url
- commonMetadata.image == "https://oer.community/" + staticSiteGenerator.url + "/" + staticSiteGenerator.cover.image
- commonMetadata.creator[].givenName + " " + familyName == staticSiteGenerator.author[]