Ingest
Das Package "ingest" beinhaltet Schritte für den Ingestprozess.
Ingest: add custom premis event to SIP
Diese Action fügt ein oder mehrere PREMIS Events zum SIP hinzu. Mit dem Parameter nodeType
kann angegeben werden, zu welchen Nodes im SIP die Events hinzugefügt werden. Folgende Werte stehen zur Auswahl: all (alle Nodes im SIP), root (Root Folder oder Root File), file (Alle File-Nodes im SIP, inkl. Root-File), folder (alle Folder-Nodes im SIP, inkl. Root-Folder). Mit den übrigen Parameter können die Details des Events definiert werden.
java ch.docuteam.actions.ingest.AddCustomPremisEvent \
--sip=[/path/to/]SIP \
--nodeType=nodeType \
--eventType=eventType \
--eventDetail=eventDetail \
--eventOutcome=eventOutcome \
[--eventOutcomeDetail=eventOutcomeDetail] \
Parameter | Beschreibung |
---|---|
--sip=[path/to/]SIP | name of the SIP; if no path is given, it will be expected to be in the location defined by the actions.workbench.work property. |
--nodeType=nodeType | defines type of node to which the events are added. |
--eventType=eventType | PREMIS event type (can be freely chosen). |
--eventDetail=eventDetail | PREMIS event detail (can be freely chosen). |
--eventOutcome=eventOutcome | PREMIS event outcome (must either be Success or Failure). |
[--eventOutcomeDetail=eventOutcomeDetail ] | PREMIS event outcome detail (optional, can be freely chosen). |
Ingest: add DNB URN to the root node of the SIP
Diese Action nutzt den URN-Vorschlagsdienst der Deutschen Nationalbibliothek (DNB), um eine URN im ausgewählten Namespace zu erzeugen und als Metadatenelement (Accessor "URN") des Root-Nodes zu speichern. Wenn bereits eine URN in den Metadaten vorhanden ist, wird keine neue URN generiert. Optional kann die URN-ID (ein Teilstring der URN ohne Präfixe) in einem zusätzlichen Element gespeichert werden, indem der Parameter urnIdAccessor ausgefüllt wird. Wenn dieses Feld bereits einen Wert enthält, wird keine URN-ID geschrieben.
java ch.docuteam.actions.ingest.AddDnbUrnToRootNode \
--sip=[/path/to/]SIP \
--urnNamespace=urnNamespace \
[--urnIdAccessor=urnIdAccessor] \
Parameter | Beschreibung |
---|---|
--sip=[path/to/]SIP | name of the SIP; if no path is given, it will be expected to be in the location defined by the actions.workbench.work property |
--urnNamespace=urnNamespace | namespace for which an URN will be generated. |
[--urnIdAccessor=urnIdAccessor ] | EAD accessor defining which EAD field of the root node is used to store the URN ID (URN without prefixes). If left empty, no URN ID is written. |
Ingest: convert BAR-SIP
Konvertiert ein SIP in ein SIP, welches dem Matterhorn Profil entspricht.
java ch.docuteam.actions.ingest.BARSIPConverter \
[path/to/]SIP [targetFolder]
Parameter | Beschreibung |
---|---|
[path/to/]SIP | name of the SIP; if no path is given, it will be expected to be in the location defined by the actions.workbench.inbox property |
[targetFolder] | directory where to move the created SIP to; if omitted, the SIP will be moved to the location defined by the actions.workbench.work property |
Ingest: create SIP from eCH-0160 SIP
Erstellt ein auf dem Matterhorn Profil basierendes SIP aus einem eCH-0160 SIP.
java ch.docuteam.actions.ingest.CreateSIPFromECH0160SIP \
--sip=[path/to/]SIP \
--levelsFilePath=/path/to/levels.xml \
--[mappingFile=[path/to/]mappingFile] \
--[output-folder=/path/to/folder]
Parameter | Beschreibung |
---|---|
--sip=[path/to/]SIP | location of the SIP to convert; default lookup folder is actions.workbench.inbox |
--levelsFilePath=/path/to/levels.xml | path to the file levels.xml |
--[mappingFile=[path/to/]mappingFile] | file from which to read the mapping; defaults to a default mapping file (defined by the mapping module) |
--[output-folder=/path/to/folder] | indicate the output folder; defaults to actions.workbench.work |
Ingest: check workbench space
Prüft, ob genügend Platz für die Verarbeitung des SIPs (d.h. für Arbeitskopien) vorhanden ist.
java ch.docuteam.actions.ingest.CheckWorkbenchSpace \
[path/to/]SIP [numberOfCopies]
Parameter | Beschreibung |
---|---|
[path/to/]SIP | name of the SIP. If no path is given, it will be expected to be in the location defined by the actions.workbench.work property |
[numberOfCopies] | optional, number of copies to calculate with; defaults to 3 |
Ingest: cleanup working copies
Löscht vorhandene SIPs in actions.workbench.work
. Optional können auch gleichnamige SIPs in actions.workbench.preparation
gelöscht werden.
java ch.docuteam.actions.ingest.Cleanup \
[path/to/]SIP [prep]
Parameter | Beschreibung |
---|---|
[path/to/]SIP | name of the SIP. If no path is given, it will be expected to be in the location defined by the actions.workbench.work property |
[prep] | if true , SIPs of the same name in actions.workbench.preparation will be removed as well; defaults to false |
Ingest: create EAD file
Erstellt aus einzelnen Knotenpunkten von einem gegebenen SIP EAD-Datenblöcke.
java ch.docuteam.actions.ingest.CreateEADFile \
[path/to/]SIP [targetFilename]
Parameter | Beschreibung |
---|---|
[path/to/]SIP | name of the SIP; if no path is given, it will be expected to be in the location defined by the actions.workbench.work property |
[targetFilename] | optional, name of the output file; defaults to EAD.xml within the SIP's subfolder in the location defined by the actions.workbench.output property |
Ingest: extent calculator
Setzt die Anzahl Dateien in das Metadatenfeld "Umfang" und die Einheit auf den Default-Wert "Datei(en)".
java ch.docuteam.actions.ingest.ExtentCalculator \
[path/to/]SIP
Parameter | Beschreibung |
---|---|
[path/to/]SIP | name of the SIP; if no path is given, it will be expected to be in the location defined by the actions.workbench.work property |
Ingest: migrate files
Vergleicht die Dateien eines SIP mit den Angaben in der Konfigurationsdatei migration-config.xml
und konvertiert die Dateien gemäss den dort angegebenen Konvertierungsrichtlinien.
java ch.docuteam.actions.ingest.SIPFileMigrator \
[path/to/]SIP keepOriginals [path/to/migration-config.xml]
Parameter | Beschreibung |
---|---|
[path/to/]SIP | name of the SIP; if no path is given, it will be expected to be in the location defined by the actions.workbench.work property |
keepOriginals | { true|false }, indicating whether to keep the original files after the migration process |
[path/to/migration-config.xml] | optional, path to a specific migration configuration file (defaults to ./config/migration-config.xml ) |
[skipAlreadyMigratedFiles] | optional, { true|false }, indicating whether to migrate files that have already been migrated before; defaults to 'true', i.e. does not migrate files that have undergone a migration before |
Ingest: remove SIP from inbox
Verschiebt ein vorhandenes SIP aus actions.workbench.inbox
in einen vorgegebenen Ordner oder löscht es, sofern kein Zielordner angegeben ist.
java ch.docuteam.actions.ingest.SIPRemoveFromInbox \
[path/to/]SIP [targetFolder]
Parameter | Beschreibung |
---|---|
[path/to/]SIP | path of the SIP; if no path is given, it will be expected to be in the location defined by the actions.workbench.inbox property |
[targetFolder] | directory where to move the SIP to; if omitted, the SIP will be deleted |
Ingest: replace file
Ersetzt eine Datei in einem SIP. Dabei werden die Metadaten beibehalten oder ergänzt. Zurzeit können mit diesem Schritt nur SIPs verarbeitet werden, die eine einzelne Datei enthalten.
java ch.docuteam.actions.ingest.ReplaceFile \
[path/to/]SIP [targetFolder]
Parameter | Beschreibung |
---|---|
[path/to/]SIP | path of the SIP; if no path is given, it will be expected to be in the location defined by the actions.workbench.work property |
[targetFolder] | path to the file to be used as replacement of the current SIP content |
Ingest: get MARC from REST and add to SIP
Für jedes Objekt (Dateien als auch Ordner) eines SIPs wird eine MARC-Beschreibung geholt und als beschreibene Metadaten hinzufgefügt.
Die URL des webservices ist in den actions.properties als "aleph.webservice.url" zu konfigurieren. Die URL sollte einen Platzhalter { documentNumber} enthalten, der durch die effektive Dokument-Nummer ersetzt wird. Letztere wird für jedes Objekt anhand des Dateinamens ermittelt:
- Für einen Dateinamen
BAU_5_000000444.wav
wird die Dokument-Nummer000000444
extrahiert - Für einen Ordnernamen
DIRECTORY_X_000000555
wird die Dokument-Nummer000000555
extrahiert
Wenn der HTTP-Request fehlschlägt oder ein Dateiname ungültig ist bricht die Aktion ab und das SIP wird nicht geändert. Bestehende MARC-Metadaten werden mit dieser Aktion überschrieben.
java ch.docuteam.actions.oai_dc.AddOAIDCFromRESTByIDFromFilename \
--sip=[path/to/]SIP
Parameter | Beschreibung |
---|---|
--sip=[path/to/]SIP | location of the SIP to convert; default lookup folder is actions.workbench.work |
Ingest: add OAIDC from REST by ID from filename
Für das Wurzel-Objekt eines SIPs wird ein webservice für die OAI_DC-Beschreibung abgefragt und als beschreibene Metadaten hinzufgefügt.
Die URL des webservices ist in den actions.properties als "oai.webservice.url" zu konfigurieren. Die URL sollte einen Platzhalter { identifier} enthalten, der anhand des Knotennamens gemäss folgendem Muster ersetzt wird:
- “Kürzel-SignaturTIFF” z.B. “bbb-0027TIFF” wird zum { identifier} "bbb/0027".
Wenn der Name ungültig ist oder der HTTP-Request fehlschlägt bricht die Aktion ab und das SIP wird nicht geändert. Bestehende OAI_DC-Metadaten werden mit dieser Aktion nicht überschrieben sondern führen ebenfalls zum Abbruch der Aktion.
Die OAI_DC-Informationen werde zusätzlich nach
java ch.docuteam.actions.oai_dc.AddOAIDCFromRESTByIDFromFilename \
--sip=[path/to/]SIP
Parameter | Beschreibung |
---|---|
--sip=[path/to/]SIP | name of the SIP; if no path is given, it will be expected to be in the location defined by the actions.workbench.work property |
Ingest: convert an EDIDOC/EDIAKT package into a Matterhorn METS SIP
Erstellt ein auf dem Matterhorn METS Profil basierendes SIP aus einem EDIDOC-/EDIAKT-Paket.
java ch.docuteam.actions.ingest.CreateSIPFromEdidocSIP \
--sip=[path/to/]SIP \
--levelsFilePath=path/to/levels.xml \
[--mappingFile=path/to/mappingFile] \
[--outputFolder=/path/to/folder] \
[--steuerXml=/path/to/file]
Parameter | Beschreibung |
---|---|
--sip=[path/to/]SIP | location of the package to convert; default lookup folder is actions.workbench.inbox |
--levelsFilePath=path/to/levels.xml | path to the level configuration file, to be found to the classpath |
[--mappingFile=path/to/mappingFile] | file from which to read the mapping; defaults to ./config/edidoc-mapping.xml, to be found to the classpath |
[--outputFolder=/path/to/folder] | indicate the output folder; defaults to actions.workbench.work |
[--steuerXml=/path/to/file] | path to the EDIDOC archives extension XML file |
Ingest: import or download MARCXML file to or from Alma
Importiert eine MARCXML-Datei nach Alma über dessen REST API. Die MARCXML-Datei muss Teil des SIPs sein. Nach erfolgreichem Import wird die MARCXML-Datei mit der Antwort von Alma aktualisiert. Wenn die Datei im SIP nicht vorhanden ist, schlägt die Aktion entweder fehl oder (wenn das optionale 'downloadIfMissing'-Flag gesetzt ist) wird die MARCXML-Datei über die Alma-API heruntergeladen (vorausgesetzt, ihre MMS-ID ist im Root-Knotenelement gespeichert, das durch den Parameter writeMmsIdRoot definiert ist). Optional kann die MMS-ID der importierten/heruntergeladenen MARCXML-Datei auch in die EAD-Metadaten des Root-Ordners (writeMmsIdRoot) und/oder des MARCXML-Dateiknotens (writeMmsId) geschrieben werden.
Die Verbindungsinformationen für die Alma REST API sind im actions.properties zu hinterlegen.
java ch.docuteam.actions.ingest.alma.ImportOrDownloadMarcXmlIntoAlma \
--sip=[/path/to/]SIP \
--marcxml=path/to/marc.xml \
[--writeMmsId] \
[--writeMmsIdRoot] \
[--downloadIfMissing=false] \
[--checkMatch=false] \
[--fromCzMmsId] \
[--fromNzMmsId] \
[--importProfile] \
[--normalization] \
[--overrideWarning=true] \
[--validate=false]
Parameter | Beschreibung |
---|---|
--sip=[path/to/]SIP | name of the SIP; if no path is given, it will be expected to be in the location defined by the actions.workbench.work property. |
--marcxml=path/to/marc.xml | MARCXML metadata file path (relative to the SIP's root node). |
[--writeMmsId=refCode] | EAD accessor defining the metadata element of the MARCXML file node into which the MMS ID is written after import. If empty, no MMS ID will be written for the file node. |
[--writeMmsIdRoot=refCode] | EAD accessor defining the metadata element of the root node into which the MMS ID is written after import. If empty, no MMS ID will be written for the root node. |
[--downloadIfMissing=false] | Indicating whether to download a MARCXML file (based on the MMS ID stored in the element defined by the writeMmsIdRoot accessor) from Alma if the MARCXML metadata file path does not point to a file. Default: false. |
[--checkMatch=false] | Indicating whether to check for a match. Default: false (record will be saved despite possible match). |
[--fromCzMmsId] | The MMS_ID of the Community-Zone record. Leave empty when creating a regular local record. |
[--fromNzMmsId] | The MMS_ID of the Network-Zone record. Leave empty when creating a regular local record. |
[--importProfile] | The ID of the import profile to use when processing the input record. Note that according to the profile configuration, the API can update an existing record in some cases. |
[--normalization] | The ID of the normalization profile to run. |
[--overrideWarning=true] | Indicating whether to ignore warnings. Default: true (record will be saved and the warnings will be added to the API output). |
[--validate=false] | Indicating whether to validate the MARC XML file. Default: false. |
Ingest: rename root node based on EAD metadata
Benennt den Datei- oder Ordnernamen des Root-Nodes im SIP um, basierend auf EAD-Metadaten des Root-Nodes. Sonderzeichen werden normalisiert. Existiert das angegebene Metadatenelement mehr als einmal, wird die erste Instanz verwendet.
java ch.docuteam.actions.ingest.RenameRootNodeFromEad \
--sip=[/path/to/]SIP \
--accessorName=accessorName \
Parameter | Beschreibung |
---|---|
--sip=[path/to/]SIP | name of the SIP; if no path is given, it will be expected to be in the location defined by the actions.workbench.work property |
--accessorName=accessorName | EAD accessor defining which EAD field of the root node is used as the source of the new file or folder name. |
Ingest: update xml file in SIP using xslt
Mit dieser Funktion kann eine XML-Datei, die sich im SIP befindet, mit einer anzugebenden XSL-Transformation aktualisiert werden. Die Funktion definiert einen xsl:parameter mit dem Namen "pathToMets", der den Pfad zur mets.xml-Datei enthält, damit diese in der xsl-Transformation ausgelesen werden kann.
java ch.docuteam.actions.ingest.ModifyFileWithXSL \
--sip=[/path/to/]SIP \
--xml=path/to/file.xml \
--xsl=path/to/transformation.xsl
Parameter | Beschreibung |
---|---|
--sip=[path/to/]SIP | name of the SIP; if no path is given, it will be expected to be in the location defined by the actions.workbench.work property |
--xml=path/to/file.xml | path to xml file within the SIP to be transformed (relative to the SIP's root node). The path accepts a wildcard (*) in place of the root folder. |
--xsl=path/to/transformation.xsl | path to the xsl script to be used in the transformation (if relative, assume xsl resides in $ACTIONS_HOME/xslt) |