In diesem Abschnitt wird die Struktur einer Klassifikation und ihre Repräsentation im XML-Format beschrieben.
Für das Importieren und Exportieren von Klassifikationen wird in MyCoRe ein XML-Format verwendet.
Eine Klassifikation besteht aus:
Das Rootelement (<mycoreclass>
) enthält die ID der Klassifikation, ein oder mehrere Bezeichner
label
in verschiedenen Sprachen und einen Container categories
,
der die Einträge der Klassifikation speichert.
Die ID
kann maximal 32 Zeichen lang sein und darf die Zeichen
:, $, {, } nicht enhalten.
Als Kategorien (<category>
) bezeichnen man die Einträge der Klassifikation.
Kategorien können hierarchisch geschachtelt werden. Sie enthalten eine ID,
einen oderer mehrere Bezeichner label
für verschiedene Sprachen
und optional eine URL url
. Diese kann verwendet werden, um auf eine Webseite
mit weiteren Informationen oder der Beschreibung des Klassifikationseintrages zu verlinken.
Die ID
kann maximal 128 Zeichen lang sein und darf die Zeichen
:, $, {, } nicht enhalten.
Bezeichner (<label>
) werden verwendet, um die Klassifikation und ihre Einträge zu bennennen.
Label sind wiederholbar, um auch Übersetzungen des Begriffes speichern zu können.
Sie bestehen aus einem Sprachattribut xml:lang
und einem Textfeld text
.
Optional können zusätzliche Angaben zur Verwendung des Eintrages in einem Beschreibungsfeld description
abgelegt werden.
Die Länge von Text und Beschreibung kann jeweils maximal 4096 Zeichen betragen. Das Sprachattribut kann maximal 255 Zeichen lang sein und muss gemäß den Regeln des RFC 4646 aufgebaut sein.
Folgende Grafik soll die Beziehung zwischen den Klassifikationselementen verdeutlichen:
In MyCoRe wird das Label zur Speicherung zusätzlicher Informationen für die Weiterverabeitung der
Klassifikationen verwendet. Dazu werden zusätzliche Label mit privaten Sprachcodes (gemäß den Regeln des RFC4646) definiert.
Die Sprachcodes bestehen aus dem Prefix x-
und weiteren Blöcken aus jeweils max. 8 Zeichen (Zahlen oder Buchstaben),
die durch - getrennt werden.
Folgende Sprachcodes werden verwendet:
x-uri
für Bezeichner in Form einer URI.x-auth
als Marker für Klassifikationen, die im MODS-Metadatenmodell
mit dem Attribut authority gekennzeichnet wurden.x-mapping
für das Klassifikationsmapping.In hierarchischen Klassifikationen kann es sinnvoll sein, die Hierarchiestufen beispielsweise durch einen Punkt (.) oder Numerierung in den IDs abzubilden:
Unis
→ Unis.Rostock
→ Unis.Rostock.UB
5
→ 56
→ 567
Für das Funktionieren des Klassifikationssystems ist das jedoch keine Voraussetzung.
Das folgende XML-Grundgerüst kann für das Schreiben eigener Klassifikationen verwendet werden:
|
|
Für die Validierung kann die XML-Schema Datei MCRClassification.xsd aus dem SVN verwendet werden.
Intern erfolgt die Speicherung der Klassifikationen in mehreren verknüpften Datenbanktabellen: