xepicur - XML-Datentransferformat zur Verwaltung von Persistent Identifiers



A Vorbemerkung

Das folgende Papier beschreibt das auf XML basierende Format "xepicur" für eine umfassende Verwaltung von URNs. Die Datensätze werden beim zuständigen URN-Namensraumverwalter erstellt und können

Dies umfasst folgende Geschäftsgänge:

Die Datensätze werden beim zuständigen URN-Namensraumverwalter erstellt und können als

umgesetzt und

Die verschiedenen Übermittlungsformen können in der Beschreibung der Transferschnittstellen nachgelesen werden.

"xepicur" wurde im Rahmen des EPICUR-Projektes entwickelt und ist mit Toolherstellern und Content-Providern abgestimmt.

B Datentransferformat

1. Generelle Hinweise

2. Hinweise zu Datenstruktur und Syntax

Für den Datensatz ist als Dokumentformat XML verbindlich.

3. Beschreibung des Datenformates, Reihenfolge und Struktur der Elemente

Generelle Struktur

Ein XML-Datensatz besteht aus einem Wurzelelement

und zwei hierarchisch untergeordneten Elementen

Wurzelelement

Bezeichnung epicur
Attribute keine
Unterelemente
  • "administrative_data"
  • "record"
Wiederholbar nein
Obligatorisch ja
Beschreibung Das Wurzelelement bildet die äußere Einheit eines XML-Dokumentes.
Syntax <epicur>
 <administrative_data>
  [...]
 </administrative_data>
 <record>
  [...]
 </record>
</epicur>

Elementgruppe "administrative_data"

Bezeichnung administrative_data
Attribute keine
Unterelemente
  • "delivery"
Wiederholbar nein
Obligatorisch ja
Beschreibung Das Element dient der Kapselung von Legitimationsdaten, der Spezifizierung des URN-Meldeprozesses, der verwendeten Transferschnittstelle sowie der Art der Rückmeldung.
Syntax <administrativ_data>
 <delivery>
  [...]
 </delivery>
</administrative_data>

Bezeichnung authorization
Attribute keine
Unterelemente
  • "person_id"
    Legitimations_ID einer Person.
  • "system_id"
    Alternative zu "person_id". Es kann eine ID sein, die nur in Zusammenhang mit maschinengesteuerter URN-Meldung erfolgt.
  • "urn_snid"
    Das Element beinhaltet den NBN-Unternamensraum wie z. B. urn:nbn:de:gbv:089. Das Ziel ist das Ermitteln von Berechtigungen zur Administration des URN-Unternamensraumes.
  • "urn_snid"
    Das Element beinhaltet den URN-Unternamensraum wie z. B. "urn:std".
Wiederholbar nein
Obligatorisch nein
Beschreibung Die Informationen dienen der Spezifizierung des URN-Meldeprozesses wie z.B. URN-Erstmeldung oder URL-Aktualisierung, der verwendeten Transferschnittstelle oder der Art der Rückmeldung.
Syntax <administrative_data>
 <delivery>
  <authorization>
   <person_id>F6000123</person_id>
   <urn_snid>urn:nbn:de:089</urn_snid>
  </authorization>
 </delivery>
</administrative_data>

Bezeichnung update_status
Attribute "type" mit folgenden Inhalten:
  • "urn_new"
    Kennzeichnung der Meldung als "URN-Erstregistrierung". Bei Einbindung in OAI muss bei Neuerstellung von Records "urn_new" angegeben werden.
  • "urn_new_version"
    URN-Erstregistrierung für eine neue Dokumentversion.
  • "urn_alternative"
    Persistent-Identifier, der zusätzlich zu einer bereits registrierten URN existiert wie z. B. DOI.
  • "url_update"
    Bei Aktualisierung von URLs wird dieses Attribut angegeben, wenn explizit eine von mehreren URLs geändert werden soll.
  • "url_update_general"
    Aktualisierung von URLs. Dieses Attribut muss angegeben, wenn der Record nur "neue" URLs beinhaltet. Es werden alle registrierten URLs gelöscht und mit den "neuen" URLs ersetzt.
  • "url_delete"
    Dieses Attribut wird gesetzt, wenn eine URL gelöscht werden soll.
  • "url_insert"
    Dieses Attribut wird gesetzt, wenn eine neue URL hinzugefügt (im Sinne eines URL-Nachmeldeprozesses) werden soll.
Unterelemente keine
Wiederholbar nein
Obligatorisch ja
Beschreibung Das Element dient der Spezifizierung der Art des Meldeprozesses.
Syntax <update_status type="urn_new"/>

Bezeichnung transfer
Attribute "type" mit folgenden Inhalten:
  • "email"
  • "http"
  • "ftp"
Unterelemente keine
Wiederholbar nein
Obligatorisch nein
Beschreibung Angabe der Transferschnittstelle oder des Protokolles.
Syntax <transfer type="email"/>

Bezeichnung resupply
Attribute "type" mit folgenden Inhalten:
  • "email"
  • "ftp"
Unterelemente keine
Wiederholbar nein
Obligatorisch nein
Beschreibung Zieladresse zur Information über eine erfolgreiche oder fehlerhafte Bearbeitung.
Syntax <resupply type="email"/>

Beispiel "administrative_data"

<epicur>
<administrative_data>
<delivery>
<authorization>
<person_id>F6000123</person_id>
oder
<system_id>034jf0249r843</system_id>
<urn_snid>urn:nbn:de:gbv:089</urn_snid>
oder
<urn_nid>urn:issn</urn_nid>
<authorization>
<update_status type="urn_new"/>
<transfer type="http"/>
<resupply type="email"/>
</delivery>
</administrative_data>
[...]
<epicur>

Elementgruppe "record"

Bezeichnung record
Attribute keine
Unterelemente
  • "identifier"
    Mit dem Element "identifier" werden URN und URL mit unterschiedlichen Attributen erfasst.
  • "isVersionOf"
    Mit dem Element "isVersionOf" kann eine URN der neuen Dokumentversion erfasst werden.
  • "hasVersion"
    Das Element "hasVersion" beinhaltet einen Persistent Identifier wie z. B. DOI, der zusätzlich zu einer URN existiert und an die Deutsche Nationalbibliothek gemeldet werden soll.
  • "resource"
    Das Element "resource" mit den Unterelementen "identifier" und "format" dient der Abbildung der Zusammenhänge von URN und URL.
  • "isPartOf"
    Das Element "isPartOf" dient der Erfassung von Informationen über URNs und URLs für Teildokumente.
Wiederholbar ja
Obligatorisch ja
Beschreibung Das Element "record" kapselt URN-URL-Beziehungen der Objekte.
Syntax <record>
  [...]
</record>

Bezeichnung identifier
Attribute
    Das Element "identifier" hat folgende Attribute:
  • "scheme"
    Mit dem Attribut "scheme" wird URN bzw. URL des Objektes erfasst.

    Das Attribut zur Spezifizierung der URN kann folgende Werte annehmen:
      "urn"
      "urn:nbn"
      "urn:nbn:de"
      "urn:nbn:at"
      "urn:nbn:ch"

    Das Attribut zur Spezifizierung der URL hat folgenden obligatorischen Wert:
      "url"

    und zusätzlich folgende optionale Attribute:
  • "type"
    Das optionale Attribut dient zur Kennzeichnung einer URL als Frontpage-URL und hat den Wert "frontpage".
  • "status"
    Das Attribut ist optional und wird bei einem Updateprozess zur Kennzeichnung der URL als "alte" bzw. "neue" URL verwendet. Es kann folgende Werte alternativ annehmen:
      "new"
      "old"
  • "role"
    Das optionale Attribut kennzeichnet eine URL als "Master-URL", die beim Resolving zuerst ausgewiesen werden soll. Dieser Fall tritt ein, wenn mehr als eine URL zu einer URN registriert ist.
    Das Attribut hat folgenden Wert:
      "primary"
  • "origin"
    Das optionale Attribut spezifiziert die Herkunft des Objektes.
    Das Attribut kann folgende Werte alternativ annehmen:
      "original"
      "extern"
      "archive"
  • "target"
    Die Angabe target="transfer"" ist optional und dient der Kennzeichnung einer URL als Transfer-URL zur Übertragung eines Objektes in ein Depotsystem der Deutschen Nationalbibliothek.
Unterelemente keine
Wiederholbar ja
Obligatorisch ja
Beschreibung Das Element "identifier" enthält Informationen über eine URN und URL. Es wird durch obligatorische sowie mehrere optionale Attribute näher spezifiziert.
Syntax (Auswahl) <identifier scheme="urn:nbn:de">
  [...]
</identifier>
oder
<identifier scheme="url">
  [...]
</identifier>
oder
<identifier scheme="url" type="frontpage" role="primary" origin="archive">
  [...]
</identifier>

Bezeichnung isVersionOf
Attribute Mit dem Attribut "scheme" wird der Namensraum des Persistent Identifiers bestimmt. Das Attribut kann folgende Werte annehmen:
  • "urn"
  • "urn:nbn"
  • "urn:nbn:de"
  • "urn:nbn:at "
  • "urn:nbn:ch"
Unterelemente keine
Wiederholbar nein
Obligatorisch nein
Beschreibung Das optionale Element "isVersionOf" beinhaltet den Persistent Identifier der neuen Dokumentversion.
Syntax <isVersionOf scheme="urn:nbn:de">
  [...]
</isVersionOf>

Bezeichnung hasVersion
Attribute Mit dem Attribut "scheme" wird der Namensraum des Persistent Identifiers bestimmt. Das Attribut kann folgende Werte annehmen:
  • "urn"
  • "urn:nbn"
  • "urn:nbn:de"
  • "urn:nbn:at"
  • "urn:nbn:ch"
  • "doi"
  • "handle"
  • "urn:issn"
  • "urn:isbn"
Unterelemente keine
Wiederholbar nein
Obligatorisch nein
Beschreibung Das Element "hasVersion" ist optional und dient der Angabe, ob zusätzlich zu einem bereits registrierten Persistent Identifier wie z. B. "urn:nbn:de:..." ein weiterer Persistent Identifier wie z. B. DOI existiert. Dieser sog. "externe" Persistent Identifier muss mittels "scheme" spezifiziert werden.
Syntax <hasVersion scheme="doi">
  [...]
</hasVersion>

Bezeichnung resource
Attribute keine
Unterelemente
  • "identifier"
    Mit dem Element "identifier" wird die URL des Objektes erfasst. Aus diesem Grund muss das Attribut scheme="url" verwendet werden. (s. Element "identifier")
  • "format"
    Das Element "format" dient der Erfassung des MimeTypes des Objektes.
Wiederholbar ja
Obligatorisch nein
Beschreibung Das Element "resource" kapselt die Unterelemente "identifier" mit dem Attribut scheme="url" und "format" dient der Erfassung der URL und des MimeTypes (Dateiformat) des Objektes.
Syntax <resource>
  <identifier scheme="url">
   [URL des Objektes]
  </identifier>
  <format scheme="imt">
   [MimeType des Objektes]
  </format>
</resource>

Bezeichnung format
Attribute Das Element "format" hat folgendes Attribut:
  "imt", das als Wert den MimeType des Objektes enthält.
Unterelemente keine
Wiederholbar nein
Obligatorisch nein
Beschreibung Das Element "format" dient der Erfassung des MimeTypes (Dateiformates) eines Objektes.
Syntax <format scheme="imt">
  [MimeType des Objektes]
</format>

Bezeichnung isPartOf
Attribute keine
Unterelemente
  • "identifier"
  • "resource"
Wiederholbar ja
Obligatorisch nein
Beschreibung Das Element "isPartOf" kapselt Informationen zu URNs und URLs von Teilobjekten.
Syntax <isPartOf>
  [...]
</isPartOf>

Beispiel "record"

<epicur>
<administrative_data>
[...]
<update_status type="urn_new"/>
[...]
</administrative_data>
<record>
<identifier scheme="urn:nbn:de">urn:nbn:de:gbv:089-3321752945</identifier>
<resource>
<identifier scheme="url" type="frontpage">http://edok01.tib.uni-hannover.de/edoks/e01dh01/</identifier>
<format scheme="imt">text/html</format>
</resource>
<isPartOf>
<identifier scheme="urn:nbn:de">urn:nbn:de:gbv:089-332175-teil1</identifier>
<resource>
<identifier scheme="url">http://edok01.tib.uni- hannover.de/edoks/e01dh01/teil1.pdf</identifier>
<format scheme="imt">application/pdf</format>
</resource>
</isPartOf>
<isPartOf>
<identifier scheme="urn:nbn:de">urn:nbn:de:gbv:089-332175-teil2</identifier>
<resource>
<identifier scheme="url">http://edok01.tib.uni-hannover.de/edoks/e01dh01/teil2.ps</identifier>
<format scheme="imt">application/postscript</format>
</resource>
</isPartOf>
</record>
</epicur>


02.01.2008