OPUS Import-XML
Um Metadaten in OPUS4 zu importieren, ist es notwendig, diese auf OPUS-Import-XML zu mappen. Dieses Format wird im Folgenden dokumentiert.
Hinweise zu Datenstruktur und -syntax
Im OPUS4-Import-Format entspricht opusDocument
einem Metadatensatz und wird durch Elemente, Unterelemente und
Attribute strukturiert.
Das Format wird im OPUS 4 Framework in der Datei
opus_import.xsd definiert. Bei
einer mit Git und Composer installierten OPUS 4 Instanz ist die Datei unter folgendem Pfad zu finden:
$BASEDIR/vendor/opus4-repo/framework/library/Opus/Util/opus_import.xsd
Die Reihenfolge der Elemente innerhalb
von opusDocument
ist bindend. Attribute spezifizieren die Eigenschaften von Dokumenten und sind immer einem
bestimmten Element
zugeordnet. Die Reihenfolge der Attribute innerhalb eines Elements ist nicht bindend. Eckige Klammern dienen
lediglich der Verständlichkeit und sind nicht Teil des Formats.
Kardinalität
Es wird bei den Elementen und Unterelementen zwischen obligatorisch und optional unterschieden. Darüber hinaus sind einige (Unter)Elemente (unbegrenzt) wiederholbar.
Obligatorisch, nicht wiederholbar .....: 1
Obligatorisch, wiederholbar ...........: 1..n
Optional, nicht wiederholbar ..........: 0..1
Optional, wiederholbar ................: 0..n
Referenzbeschreibung von OPUS-Import-XML
1 OPUS-Dokument
- Bezeichner:
opusDocument
- Attribut: obligatorisch:
oldId
(beliebiger Inhalt)- Dient aussschließlich beim Import für die Referenzierung des Ausgangsdatensatzes.
- Attribut: optional:
docId
(nur Zahlen)- Dient ausschließlich beim Import zur Instanziierung eines bestehenden OPUS4-Dokuments.
- Attribut: obligatorisch:
language="[dreistelliger Sprachcode]"
- Es gilt der Standard ISO 639-2.
- Attribut: obligatorisch:
type="[ein OPUS4-Dokumenttyp]"
- Attribut: optional:
pageFirst
(beliebiger Inhalt) - Attribut: optional:
pageLast
(beliebiger Inhalt) - Attribut: optional:
pageNumber
(beliebiger Inhalt) - Attribut: optional:
edition
(beliebiger Inhalt) - Attribut: optional:
volume
(beliebiger Inhalt) - Attribut: optional:
issue
(beliebiger Inhalt) - Attribut: optional:
publisherName
(beliebiger Inhalt) - Attribut: optional:
publisherPlace
(beliebiger Inhalt) - Attribut: optional:
creatingCorporation
(beliebiger Inhalt) - Attribut: optional:
contributingCorporation
(beliebiger Inhalt) - Attribut: optional:
belongsToBibliography
(true, false) - Attribut: obligatorisch:
serverState
(audited, published, restricted, inprogress, unpublished) -
Kardinalität: 1
- Beschreibung des Inhalts: Das Element OPUS-Document beinhaltet den Metadatensatz
zu einem gesamten Dokument. Die Attribute
language
,type
,oldId
undserverState
sind obligatorisch. Mit dem AttributserverState
wird festgelegt, welchen Dokumentstatus das Dokument nach dem Import in OPUS4 hat. Das AttributdocId
bezieht sich auf eine OPUS4-Dokument-ID. Es kann genutzt werden, um einen bereits bestehendes Dokument in OPUS4 zu aktualisieren. Die AttributeoldId
unddocId
werden nicht als Werte importiert und an das neu aufgebaute OPUS4-Dokument gehängt, sondern dienen lediglich der Referenzierung (z.B. im Import-Logfile).
1.1 (Haupt)Titel
- Bezeichnung:
titlesMain
-
Kardinalität: 1
- Beschreibung des Inhalts: Der Titel ist der Name des Dokuments. (Hauptsachtitel).
1.1.1 (Haupt)Titel
- Bezeichnung:
titleMain
- Attribut: obligatorisch:
language="[dreistelliger Sprachcode]"
- Es gilt der Standard ISO 639-2.
-
Kardinalität: 1..n
- Beschreibung des Inhalts: Es ist möglich, mehrere Titel in verschiedenen Sprachen anzugeben, allerdings nur genau einen Titel pro Sprache.
- Beispiel:
1.2 Weitere Titel
- Bezeichnung:
titles
-
Kardinalität: 0..1
- Beschreibung des Inhalts: In diesem Element können Untertitel, übergeordnete Titel und übersetzte Titel des Dokuments angegeben werden.
1.2.1 Weiterer Titel
- Bezeichnung:
title
- Attribut: obligatorisch:
type
(sub, parent, additional) - Attribut: obligatorisch:
language="[dreistelliger Sprachcode]"
- Es gilt der Standard ISO 639-2.
-
Kardinalität: 1..n
- Beschreibung des Inhalts: Es ist möglich, weitere Titel in verschiedenen Sprachen anzugeben, allerdings nur genau einen Titel pro Typ und Sprache.
- Beispiel:
1.3 Abstracts
- Bezeichnung:
abstracts
-
Kardinalität: 0..1
- Beschreibung des Inhalts: In diesem Element können Abstracts zum Dokument angegeben werden.
1.3.1 Abstract
- Bezeichnung:
abstract
- Attribut: obligatorisch:
language="[dreistelliger Sprachcode]"
- Es gilt der Standard ISO 639-2.
-
Kardinalität: 1..n
- Beschreibung des Inhalts: Es ist möglich, mehrere Abstracts in verschiedenen Sprachen anzugeben, allerdings nur genau einen Abstract pro Sprache.
- Beispiel:
1.4 Personen
- Bezeichnung:
persons
-
Kardinalität: 0..1
- Beschreibung des Inhalts: Es ist möglich, mehrere Personen anzugeben. Die Rollen sind wiederholbar (z.B. “author”).
1.4.1 Person
- Bezeichnung:
person
- Attribut: obligatorisch:
role
(advisor, author, contributor, editor, referee, translator, submitter) - Attribut: obligatorisch:
firstName
(beliebiger Inhalt) - Attribut: obligatorisch:
lastName
(beliebiger Inhalt) - Attribut: optional:
academicTitle
(beliebiger Inhalt) - Attribut: optional:
email
(beliebiger Inhalt) - Attribut: optional:
allowEmailContact
(true, false) - Attribut: optional:
placeOfBirth
(beliebiger Inhalt) -
Attribut: optional:
dateOfBirth
(ISO 8601) -
Kardinalität: 1..n
- Beispiel:
1.5 Schlagwörter
- Bezeichnung:
keywords
-
Kardinalität: 0..1
- Beschreibung des Inhalts: In diesem Element können Schlagwörter zum Dokument angegeben werden.
1.5.1 Schlagwort
- Bezeichnung:
keyword
- Attribut: obligatorisch:
type
(swd, uncontrolled) - Attribut: obligatorisch:
language="[dreistelliger Sprachcode]"
- Es gilt der Standard ISO 639-2.
-
Kardinalität: 1..n
- Beschreibung des Inhalts: Es ist möglich, mehrere Schlagwörter anzugeben.
- Beispiel:
1.6 DNB-Institutionen (Verbreitende Stelle(n))
- Bezeichnung:
dnbInstitutions
-
Kardinalität: 0..1
- Beschreibung des Inhalts: Verbreitende Stelle der Hochschulschrift (muss im Administrationsbereich von OPUS4 angelegt werden)
1.6.1 DNB-Institution
- Bezeichnung:
dnbInstitution
- Attribut: obligatorisch:
id
(nur Zahlen) - Attribut: obligatorisch:
role
(publisher, grantor) -
Kardinalität: 1..n
- Beschreibung des Inhalts: Voraussetzung ist, dass die verbreitende(n) Stelle(n) bereits in OPUS4 angelegt wurden (siehe oben).
- Beispiel:
Es muss darauf geachtet werden, dass in diesem Element nur IDs mit Rollen eingetragen
werden, über die die entsprechende verbreitende Stelle in OPUS4 verfügt. Wenn z.B.
eine DNB-Institution referenziert wird, für die nur is_grantor
(und nicht is_publisher
)
gesetzt ist, und im Import-XML im Attribut role
der Wert “publisher” eingetragen wird,
dann wirft der Import eine Fehlermeldung aus und der betreffende Datensatz wird nicht
importiert.
1.7 Datumsangaben
- Bezeichnung:
dates
-
Kardinalität: 1
- Beschreibung des Inhalts: Es ist möglich, verschiedene Datumsangaben einzutragen, jedoch mindestens ein Datum des Typs “completed” oder “published” .
1.7.1 Datum
- Bezeichnung:
date
- Attribut: obligatorisch:
type
(completed, published, thesisAccepted) - Attribut: optional:
monthDay
(ISO 8601) - Attribut: obligatorisch:
year
(ISO 8601) -
Kardinalität: 1..n
- Beschreibung des Inhalts: Es kann maximal ein Datum pro Typ eingetragen werden.
Sollte das Element
date
dennoch mehrfach mit dem gleichen Typ eingetragen werden, dann wird nur das erste importiert und die anderen werden ignoriert. - Beispiel:
1.8 Identifikatoren
- Bezeichnung:
identifiers
-
Kardinalität: 0..1
- Beschreibung des Inhalts: Es ist möglich, verschiedene Identifikatoren für das Dokument einzutragen (z.B. ISBN oder ISSN).
1.8.1 Identifikator
- Bezeichnung:
identifier
- Attribut: obligatorisch:
type
(doi, handle, urn, std-doi, url, cris-link, splash-url, isbn, issn, opus3-id, opac-id, uuid, serial, pmid, arxiv) -
Kardinalität: 1..n
- Beschreibung des Inhalts: Es ist prinzipiell möglich, mehrere Identifikatoren eines Typs anzugeben.
- Beispiel:
1.9 Bemerkungen
- Bezeichnung:
notes
-
Kardinalität: 0..1
- Beschreibung des Inhalts: An dieser Stelle können Bemerkungen bzw. Notizen angegeben werden.
1.9.1 Bemerkung
- Bezeichnung:
note
- Attribut: obligatorisch:
visibility
(private, public) -
Kardinalität: 1..n
- Beschreibung des Inhalts: Es können mehrere Bemerkungen bzw. Notizen angegeben werden und zwar mit der Sichtbarkeit intern (“private”) oder öffentlich (“public”).
- Beispiel:
1.10 Sammlungen (Collections)
- Bezeichnung:
collections
-
Kardinalität: 0..1
- Beschreibung des Inhalts: An dieser Stelle können Sammlungen angegeben werden.
1.10.1 Sammlung
- Bezeichnung:
collection
- Attribut: obligatorisch:
id
(nur Zahlen) -
Kardinalität: 1..n
- Beschreibung des Inhalts: Voraussetzung ist, dass die Sammlung(en) bereits in OPUS4 angelegt wurden. An dieser Stelle wird daher nur die ID eingetragen.
- Beispiel:
1.11 Schriftenreihen
- Bezeichnung:
series
-
Kardinalität: 0..1
- Beschreibung des Inhalts: An dieser Stelle können Schriftenreihen angegeben werden.
1.11.1 Schriftenreihe
- Bezeichnung:
seriesItem
- Attribut: obligatorisch:
id
(nur Zahlen) - Attribut: obligatorisch:
number
(beliebiger Inhalt) -
Kardinalität: 1..n
- Beschreibung des Inhalts: Voraussetzung ist, dass die Schriftenreihe(n) bereits
in OPUS4 angelegt wurde(n). Das Attribut
number
bezieht sich auf die Bandnummer. - Beispiel:
1.12 Benutzerdefinierte Felder (Enrichments)
- Bezeichnung:
enrichments
-
Kardinalität: 0..1
- Beschreibung des Inhalts: An dieser Stelle können benutzerdefinierte Felder angegeben werden.
1.12.1 Benutzerdefiniertes Feld
- Bezeichnung:
enrichment
- Attribut: obligatorisch:
key
(die Bezeichnung) -
Kardinalität: 1..n
- Beschreibung des Inhalts: Voraussetzung ist, dass die benutzerdefinierten Felder
bereits in OPUS4 angelegt wurden. An dieser Stelle wird daher der
key
und der Inhalt bzw. Wert des benutzerdefinierten Feldes eingetragen. - Beispiel:
1.13 Lizenzen
- Bezeichnung:
licences
-
Kardinalität: 0..1
- Beschreibung des Inhalts: An dieser Stelle können Lizenzen angegeben werden.
1.13.1 Lizenz
- Bezeichnung:
licence
- Attribut: obligatorisch:
id
(nur Zahlen) -
Kardinalität: 1..n
- Beschreibung des Inhalts: Voraussetzung ist, dass die Lizenz bereits in OPUS4 angelegt wurde. An dieser Stelle wird daher nur die ID der gewünschten Lizenz eingetragen.
- Beispiel: