coursebuilder/test/simple/schema.yaml
2023-11-05 20:35:44 +01:00

240 lines
4.5 KiB
YAML

# fields in curricular description
# leaning on methods in OpenAPI 3.0
#
# Modulname
#
name:
type: str
label: {
de: "Modulname",
en: "name of course"
}
#
# Kürzel / ID
#
id:
type: str
label: {
de: "Kürzel",
en: "code"
}
#
# Modulverantwortliche:r
#
instructor:
type: str
label: {
de: "Modulverantwortliche:r",
en: "module instructor"
}
#
# Qualifikationsziele
#
goal:
type: str
label: {
de: "Qualifikationsziele",
en: "educational goal"
}
#
# Modulinhalte
#
content:
type: str
label: {
de: "Modulinhalte",
en: "content"
}
form:
type: enum
#
# Voraussetzungen für die Teilnahme
#
prerequisites:
type: str
label: {
de: "Voraussetzungen für die Teilnahme",
en: "prerequisites"
}
#
# Literatur und multimediale Lehr- und Lernprogramme
#
media-of-instruction:
type: str
label: {
de: "Literatur und multimediale Lehr- und Lernprogramme",
en: "media of instruction"
}
#
# Lehrbriefautor
#
author-of-indenture:
type: str
label: {
de: "Lehrbriefautor",
en: "author of indenture"
}
#
# Verwendung in (Studienprogramm)
#
used-in:
type: str
label: {
de: "Verwendung",
en: "used in study programs"
}
workload: #tricky! { 'presence': 10, 'exersise': 10, 'exam-prep' : 0 }
#
# credits/ECTS
#
credits:
label: {
en: "credits and weight of mark",
de: "Kreditpunkte und Gewichtung der Note in der Gesamtnote"
}
type: int
template: "${value}CP (${value} / 120) "
#
# Leistungsnachweis
#
form-of-exam:
label: {
de: "Leistungsnachweis",
en: "Form of Examination"
}
type: enum
values: {
'written' : {
de: "Schriftliche Prüfung",
en: "Written Exam"
},
'oral' : {
de: "Mündliche Prüfung",
en: "Oral Exam"
},
'alternative' : {
de: "Alternative Prüfungunsleistung",
en: "Alternative Examination"
}
}
#
# term
#
term:
label: {
de: "Semester",
en: "Term"
}
type: 'enum'
values: {
'winter' : {
de: "Wintersemester",
en: "Winter Term"
},
'summer' : {
de: "Sommersemester",
en: "Summer Term"
},
'both' : {
de: "Winter- und Sommersemester",
en: "winter and summer term"
}
}
#
# Häufigkeit des Angebots
#
frequency:
label: {
de: "Häufigkeit des Angebots",
en: "Frequency of Offer"
}
type: "enum"
values: {
'once_per_term' : {
de: "jedes Semester",
en: "every term"
},
'once_per_year' : {
de: "einmal im Studienjahr",
en: "once per study year"
}
}
duration: enum
kind: enum
remarks: str
# test:
# label: { de: "Name", en: "A Test" }
# type: enum
# values: {
# 'brand' : { de: "Marke", en: "Brand" },
# 'new' : { de: "Neu", en: "New" }
# }
# # German
# de:
# name: Modulname
# id: Kürzel
# instructor: Modulverantwortlicher
# goal: Qualifikationsziele
# content: Modulinhalte
# form: Lehrformen
# prerequisites: Voraussetzungen für die Teilnahme
# media-of-instruction: Literatur/ multimediale Lehr- und Lernprogramme
# author-of-indenture: Lehrbriefautor
# used-in: Verwendbarkeit
# workload: Arbeitsaufwand/ Gesamtworkload
# credits: ECTS und Gewichtung der Note in der Gesamtnote
# form-of-exam: Leistungsnachweis
# term: Semester
# frequency: Häufigkeit des Angebots
# duration: Dauer
# kind: Art der Veranstaltung (Pflicht, Wahl, etc.)
# remarks: Bemerkungen
# # English
# en:
# name: Coursename
# id: Code
# instructor: Instructor
# goal: Goals of Qualification
# content: Content and Topics
# form: Form of Instruction
# prerequisites: Prerequisites
# media-of-instruction: Media of Instruction
# author-of-indenture: Author of Indenture
# used-in: Viable for Course
# workload: Workload
# credits: Credits and Weight of Mark
# form-of-exam: Form of Examination
# term: Term
# frequency: Frequency
# duration: Duration
# kind: Compulsory / Elective
# remarks: Remarks
# # validators for enum-fields
# enums:
# form:
# - lecture
# - seminar
# - project
# form-of-exam:
# - written
# - oral
# - alternative
# term:
# - summer
# - winter
# - both