Die Identifikation eines jeden MyCoRe-Objektes erfolgt grundsätzlich über eine eindeutige ID.
Die ID kann per Hand vergeben oder auch automatisch via API generiert werden. Diese hat für alle Objekte einen
einheitlichen Aufbau, dessen Inhalt für jedes Projekt und jeden Datentyp festzulegen ist:
ID = “project_type_number”
Project (Projektkürzel) | Dieses Element ist für ein Projekt und/oder eine Einrichtung / Datengruppe festzulegen, zum Beispiel
UBLPapyri oder mir . In MyCoRe wird es teilweise auch zur Identifikation einzelner Konfigurationsdaten mit
genutzt. Es sollen nur Buchstaben (ohne Umlaute und Sonderzeichen) oder Zahlen verwendet werden.
|
Type (Typ) | Das Element beschreibt den Datenmodelltyp, d. h. der type verweist auf die zugehörige Datenmodell-Konfiguration, zum Beispiel datamodel-author oder datamodel-document. In MyCoRe wird es oft zur Identifikation einzelner Konfigurationsdaten im Zusammenhang mit der Verarbeitung dieses Datenmodells genutzt. |
Number (Nummer) | Ist eine frei wählbare positive Integerzahl. Diese Zahl kann in Verantwortung des Projektmanagers per Hand oder automatisch vergeben werden. Bei der Projektdefinition wird die Größe des Zahlenbereiches festgelegt. Es hat sich als sinnvoll erwiesen, nicht weniger als 8 Ziffern einzuplanen. |
Tabelle: Aufbau der MCRObjectID
Im MyCoRe-Projekt sind zwei MCRObjectID-Typnamen reserviert und dürfen nicht für anderweitige Objekte genutzt
werden. Der Typ class
steht für Klassifikationen, der Typ derivate
wird für Multimediaobjekte
verwendet. Die Kombination aus Projektkürzel und Typ wird base
genannt.
Das Property für die Länge der generierten Nummer lautet:
MCR.Metadata.ObjectID.NumberPattern
und ist mit dem Wert
00000000
initialisiert.
Mit dem Property
MCR.Metadata.ObjectID.NumberDistance
kann im ID-Generator der Abstand zwischen zwei IDs
definiert werden, falls diese nicht vorlaufend vergeben werden sollen.
Es sei noch einmal ausdrücklich darauf hingewiesen, das die MCRObjectID
eine zentrale Rolle im ganzen MyCoRe-Projekt spielt. Über sie werden alle Daten identifiziert und referenziert.
Es sind daher die vorgegebenen Regeln streng einzuhalten. Da es derzeit für den Datentyp zum Anhängen digitaler
Objekte nur eine derivate
-Bezeichnung gibt,
kann es beim Design eines Projektes hilfreich sein, sich für eine Gruppe von Projektkürzeln zu entscheiden, z. B.
MIRAuthor_author_...
,
MIRDocument_document_...
usw. So kann jedem Datenmodell eine
dedizierte Derivate-Gruppe zugeordnet werden z. B.
MIRAuthor_derivate_...
oder
MIRDocument_derivate_...
. Diese Trennung ist nicht zwingend, hat sich aber bei der Verwaltung großer
Datenmengen als günstig erwiesen. Manchmal ist es sogar sinnvoll, hierzu noch mehrere Projektkürzel für ein
Datenmodell zu verwenden, je nach Umfang des Datenbestandes und der Sicherungs- und Reparatur-Strategien des
Projektes.