Mapping für die Transformation
Die Mapping-Konfiguration ist in einem bestimmten yaml-Serialisierungsformat kodiert. Die Mapping-Konfigurationen können als eine oder mehrere Dateien hinzugefügt werden. Alle bereitgestellten Dateien werden angehängt und dann als eine einzige Konfiguration gelesen.
Auf der obersten Ebene gibt es drei Abschnitte: record
, physical
und digital
. Wenn ein Abschnitt mehr als einmal vorkommt, werden sie zu einem einzigen Abschnitt zusammengefasst. Sowohl der physische als auch der digitale Abschnitt sind optional.
Die "
können zu jedem Wert hinzugefügt werden, sind aber optional. Sie sind nur erforderlich, wenn ein spezieller Wert verwendet wird. Ansonsten haben sie keine Wirkung, da alle Textwerte als Strings interpretiert werden.
Ausnahmen sind, wenn der Wert als Zahl, true
, false
oder null
interpretiert werden kann. Diese MÜSSEN von "
umgeben sein.
Feldtypen
Field Type | Example | Remarks |
---|---|---|
ConstantField | title:
const: "Immer der gleiche Titel!" | Adds the constant to the field. Has checks in most entities if anything else is added to avoid adding entities with just this constant. |
DirectMapField | title: Titel | Maps a field to a property. |
PrefixField | title:
prefix:
value: "Titleprefix: "
field: Titel | Maps a field to a property and prefixes the result with |
LanguageField | Only For each label a list of any combination of | |
ListField | For each item any type of |
JSON Objects Support
Jedes Feld im Quell-JSON-Objekt, das in den Mapper eingespeist wird, kann entweder einen String oder ein JSON-Objekt mit allen String-Feldern enthalten. Um auf ein Teilfeld innerhalb des Quell-JSON-Objekts zuzugreifen, wird die Punkt-Notation verwendet.
Aus diesem Grund dürfen die Eigenschaftsnamen der Quelldatenstruktur keine Punkte enthalten!
Beispiel
Record
Dies ist der Hauptabschnitt und wird zwingend benötigt.
Technisch notwendige Felder
Field Name | Accepted Field Types | Target Field | Remarks |
---|---|---|---|
uri | DirectMapField |
| Is used to generate the subject URI of the record and the instantiations |
type | Any | rico:type | Values must be one of (This is not enforced at the moment):
|
Akzeptierte Felder
Die akzeptierten Felder sind optional.
Literal / Datatype Properties
Field Name | Accepted Field Types | Target Field | Remarks |
---|---|---|---|
name | Any | rico:name |
|
title | Any | rico:title |
|
scopeAndContent | Any | rico:scopeAndContent |
|
sameAs | Any | schema:sameAs |
|
abstract | Any | dct:abstract |
|
source | Any | rico:source |
|
descriptiveNote | Any | rico:descriptiveNote |
|
relation | Any | dct:relation |
|
conditionsOfUse | Any | rico:conditionsOfUse | Utility property: Use rights: usage on physical and digital object where possible |
conditionsOfAccess | Any | rico:conditionsOfAccess | Utility property: Use rights: access on physical and digital object where possible |
isSponsoredByMemoriav | - | rdau:P60451 | Only accepts true or false. False is the default if the field is omitted! Links to the memoriav corporate body. |
Object Properties
Field Name | Subfields | SubSubFields | FieldTypes (in Subfields) | Example | Target Property | Target Entity | Remarks |
---|---|---|---|---|---|---|---|
rights | holder, access |
| Any | rico:regulatedBy | rico:Rule | The value is added to the property | |
rights | usage | name, sameAs | Any |
| rico:regulatedBy | rico:Rule | No other sub-subfields are allowed. |
titles | main, series, broadcast |
| Any | rico:hasTitle | rico:Title |
| |
identifiers | original, callNumber |
| DirectMapField | rico:hasOrHadIdentifier | rico:Identifier | The identifier is written into the field | |
languages | content, caption |
| Any | rico:hasLanguage | rico:Language |
| |
subject | prefLabel, altLabel, hiddenLabel, changeNote, definition, editorialNote, example, historyNote, notation, note, scopeNote |
| Any | rico:hasSubject | skos:Concept | All the subfields are converted to skos properties. | |
genre | prefLabel, altLabel, hiddenLabel, changeNote, definition, editorialNote, example, historyNote, notation, note, scopeNote |
| Any | ebucore:hasGenre | skos:Concept | All the subfields are converted to skos properties. | |
placeOfCapture |
|
| Any | rdau:P60556 | rico:Place | Place of capture can accept a list of places as well.
| |
relatedPlaces |
|
| Any | dct:spatial | rico:Place | Related places can be used as a list as well.
| |
creationDate |
|
| DirectMapField | dct:created | rico:DateSet | The value is copied to | |
issuedDate |
|
| DirectMapField | dct:issued | rico:DateSet | The value is copied to | |
temporal |
|
| DirectMapField | dct:temporal | rico:DateSet | The value is copied to | |
creators / contributors | agent |
| Any | rico:creationRelationHasTarget | rico:Agent rico:CorporateBody rico:Person | Creates a The value mapped with The field The Additional fields which can be set to be added to the agent, corporate body or person entities:
For persons only:
Dates:
| |
producers | agent corporateBody person | name name name
| Any Any Any |
| rdau:P60441 | rico:Agent rico:CorporateBody rico:Person | Additional fields which can be set to be added to the agent, corporate body or person entities:
For persons only:
Dates:
|
relatedAgents | agent corporateBody person | name name name
| Any Any Any |
| rico:hasSubject | rico:Agent rico:CorporateBody rico:Person | Used for agents which are the subject of the record.
Additional fields which can be set to be added to the agent, corporate body or person entities:
For persons only:
Dates:
|
publishedBy | agent corporateBody person | name name name
| Any Any Any |
| rico:publishedBy | rico:Agent rico:CorporateBody rico:Person | Publishers of this record. Additional fields which can be set to be added to the agent, corporate body or person entities:
For persons only:
Dates:
|
Physische Instanz
Die physische Instanz stellt ein tatsächliches physisches Objekt dar: Das Objekt, das im Archiv vorhanden ist. Nicht alle Datensätze müssen eine physische Instanz haben.
Technisch notwendige Felder
Die physische Instanz hat keine Pflicht-Felder.
Akzeptierte Felder
Literal / Datatype Properties
Field Name | Accepted Field Types | Target Field | Remarks |
---|---|---|---|
descriptiveNote | Any | rico:descriptiveNote |
|
duration | Any | ebucore:duration |
|
physicalCharacteristics | Any | rico:physicalCharacteristics |
|
colour | Any | rdau:P60558 |
|
conditionsOfUse | Any | rico:conditionsOfUse | Utility property: Use rights: usage where possible |
conditionsOfAccess | Any | rico:conditionsOfAccess | Utility property: Use rights: access where possible |
Object Properties
Field Name | Subfields | SubSubFields | FieldTypes (in Subfields) | Example | Target Property | Target Entity | Remarks |
---|---|---|---|---|---|---|---|
rights | holder, access |
| Any | rico:regulatedBy | rico:Rule | The value is added to the property | |
rights | usage | name, sameAs | Any | rico:regulatedBy | rico:Rule | No other sub-subfields are allowed. | |
identifiers | original, callNumber |
| DirectMapField | rico:identifiedBy | rico:Identifier | The identifier is written into the field | |
carrierType |
|
| Any | rico:hasCarrierType | rico:CarrierType | The carrier type value is written into the field |
Digital Instantiation
The digital instantiation represents any digital resource. The object is only generated if there is a ebucore:locator value inside of it. Even if there are any other fields filled no instantiation will be generated.
Technically Required Fields
The digital instantiation has no required fields.
Accepted Fields
Literal / Datatype Properties
Field Name | Accepted Field Types | Target Field | Remarks |
---|---|---|---|
descriptiveNote | Any | rico:descriptiveNote |
|
locator | Any | ebucore:locator | The URL of the digital object. In case that the resource is hosted by memobase this property is added by a later step. |
duration | Any | ebucore:duration |
|
conditionsOfUse | Any | rico:conditionsOfUse | Utility property: Use rights: usage where possible |
conditionsOfAccess | Any | rico:conditionsOfAccess | Utility property: Use rights: access where possible |
proxy | DirectMapField, ConstantField | internal:proxy | Values: Determines the proxy status of the media database. Default value is always assumed |
Object Properties
Field Name | Subfields | SubSubFields | FieldTypes (in Subfields) | Example | Target Property | Target Entity | Remarks |
---|---|---|---|---|---|---|---|
identifiers | original |
| Any | rico:identifiedBy | rico:Identifier | The identifier is written into the field The identifier with type The identifier can be deleted in the media linker if necessary. | |
rights | holder, access |
| Any | rico:regulatedBy | rico:Rule | The value is added to the property | |
rights | usage | name, sameAs | Any |
| rico:regulatedBy | rico:Rule | No other sub-subfields are allowed. |
Thumbnail Instantiation
The thumbnail instantiation represents any digital resource that is used as a thumbnail and derived from a digital object. The object is only generated if there is a ebucore:locator value inside of it. Even if there are any other fields filled no instantiation will be generated.
Label: thumbnail
Akzeptierte Felder
Literal / Datatype Properties
Field Name | Accepted Field Types | Target Field | Remarks |
---|---|---|---|
locator | Any | ebucore:locator | The URL of the thumbnail object. In case that the resource is hosted by memobase add that file to the SFTP server folder and do not add this heading. |