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:
<titlesMain>
<titleMain language="deu">Beispieltitel deutsch</titleMain>
<titleMain language="eng">example main title english</titleMain>
</titlesMain>
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:
<titles>
<title type="sub" language="deu" >Beispieluntertitel deutsch</title>
<title type="sub" language="eng">example subtitle english</title>
</titles>
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:
<abstracts>
<abstract language="deu">Beispielabstract deutsch</abstract>
<abstract language="eng">example abstract english</abstract>
</abstracts>
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:
<persons>
<person role="author"
firstName="John"
lastName="Doe"
academicTitle="Dr."
email="doe@example.org"
allowsEmailContact="true"
placeOfBirth="San Francisco"
dateOfBirth="1968-07-24"/>
<person role="editor"
firstName="Jane"
lastName="Doe"/>
</persons>
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:
<keywords>
<keyword type="swd" language="deu">Berlin</keyword>
<keyword type="uncontrolled" language="deu">Projektgruppe 1</keyword>
<keyword type="uncontrolled" language="eng">project group 1</keyword>
</keywords>
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:
<dnbInstitutions>
<dnbInstitution id="1" role="grantor"/>
<dnbInstitution id="4" role="publisher"/>
</dnbInstitutions>
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:
<dates>
<date type="completed" monthDay="--05-31" year="2011"/>
<date type="published" year="2009"/>
<date type="thesisAccepted" year="2010"/>
</dates>
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:
<identifiers>
<identifier type="isbn">978-3-86680-192-9</identifier>
<identifier type="doi">10.1000/182</identifier>
</identifiers>
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:
<notes>
<note visibility="private">Dokument muss noch geprüft werden.</note>
<note visibility="public">Parallel erschienen als Druckausgabe</note>
</notes>
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:
<collections>
<collection id="234"/>
</collections>
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:
<series>
<seriesItem id="2" number="2005/2006, III"/>
</series>
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:
<enrichments>
<enrichment key="validtestkey">xyz</enrichment>
</enrichments>
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:
<licences><licence id="5"/></licences>