Zum Hauptinhalt springen
Version: 7.4

Quality Assurance

Das Package qualityassurance beinhaltet Schritte, die der Qualitätsprüfung von SIPs dienen.

Quality Assurance: SIP im Workfolder extrahieren

Extrahiert ein gezipptes SIP nach actions.workbench.work. Ein optionaler zweiter Parameter kann verwendet werden, um einen anderen Zielordner anzugeben.

java ch.docuteam.actions.qualityassurance.SIPExtractor \
[path/to/]SIP [targetdir]
ParameterBeschreibung
[path/to/]SIPName des SIPs; Wenn kein Pfad gegeben ist, wird angenommen, dass der Ort durch die Einstellung in actions.workbench.inbox definiert ist
[targetdir]Zielordner; absoluter Pfad des Ordners, wo die SIPs unzippt werden sollen. Optional. Default: actions.workbench.work

Quality Assurance: Fixity-Check des SIPs

Überprüft die Dateien in einem SIP auf Konformität mit den hinterlegten Checksummen in der METS-Datei. Die Resultate der Prüfung werden in Form von PREMIS-Events in das METS-File geschrieben.

java ch.docuteam.actions.qualityassurance.SIPFixityCheck \
[path/to/]SIP
ParameterBeschreibung
[path/to/]SIPName des SIPs. Ist kein Pfad gegeben, wird angenommen, dass es sich am Ort befindet, der durch actions.workbench.work definiert ist.

Quality Assurance: Dateipfadlänge überprüfen

Prüft, ob die Länge von absoluten Pfade eines SIPs über einem anzugebenden Wert liegen.

java ch.docuteam.actions.qualityassurance.FilePathLengthCheck \
/absolute/path/to/folder maxAllowedFilePathLength
ParameterBeschreibung
/absolute/path/to/folderabsoluter Pfad des Ordners, der überprüft werden soll
maxAllowedFilePathLengthdie maximal zulässige Anzahl von Zeichen des kanonischen Dateipfads

Quality Assurance: SIP-Pfadlänge überprüfen

Prüft die Dateipfadlängen innerhalb eines SIPs gegen einen anzugebenden Grenzwert.

java ch.docuteam.actions.qualityassurance.SIPPathLengthCheck \
[path/to/]SIP maxAllowedFilePathLength
ParameterBeschreibung
[path/to/]SIPName des SIPs; wenn kein Pfad angegeben ist, wird erwartet, dass es sich an dem durch die Eigenschaft actions.workbench.work definierten Speicherort befindet
maxAllowedFilePathLengthdie maximal zulässige Anzahl von Zeichen des kanonischen Dateipfads

Quality Assurance: PID abrufen

Verbindet sich mit dem Fedora Repository und holt eine einzelne PID, um das SIP zu identifizieren. Diese PID wird später zur Grundlage für die Einlagerung ins Repository. Der Wert wird im Element <mets:OBJID/> gespeichert.

java ch.docuteam.actions.qualityassurance.SIPConfirmation \
[path/to/]SIP [PIDNamespace[:###]]
ParameterBeschreibung
[path/to/]SIPName des SIP. Wenn kein Pfad angegeben ist, wird davon ausgegangen, dass es sich an dem durch die Eigenschaft actions.workbench.work definierten Speicherort befindet
[PID namespace[:###]]Namespace für neue PID oder vollständige PID, die für das Objekt verwendet werden soll; wenn dieser Parameter weggelassen wird, wird der Standard-Namespace aus dem Submission Agreement verwendet; wenn das Submission Agreement nicht gefunden werden kann, wird der Standard-Namespace des Fedora-Repositorys verwendet.

Quality Assurance: zu sicheren Filenamen konvertieren

Benennt Dateien mit Spezialzeichen um. Sichere Dateinamen beinhalten nur Zeichen aus A-Z, a-z, 0-9, und "_.-".

java ch.docuteam.actions.qualityassurance.SIPConvertToSafeFileNames \
[path/to/]SIP
ParameterBeschreibung
[path/to/]SIPName des SIP; wenn kein Pfad angegeben ist, wird erwartet, dass es sich am von actions.workbench.work definierten Speicherort befindet.

Quality Assurance: Dateiendungen überprüfen

Vergleicht die Endungen von Dateinamen in einem SIP anhand der zuvor ermittelten PRONOM unique identifiers (PUID). Dieser Schritt benutzt vorhandene PUIDs und macht keine erneute Format-Identifikation.

  • Wenn eine Datei über keine Endung verfügt, wird diese gemäss PUID hinzugefügt.
  • Wenn eine Datei eine falsche Endung hat, wird dies entweder angezeigt und der Schritt schlägt fehl, oder die Endung wird korrigiert (mit dem Parameter --replaceExistingExtensions=true).
  • Wenn eine Datei über keinen PUID verfügt (also nicht identifiziert werden konnte), wird dies entweder als Fehler gemeldet und der Schritt schlägt fehl, oder die Datei wird ignoriert (mit dem Parameter --ignoreUnidentifiedFiles=true).
java ch.docuteam.actions.qualityassurance.SIPFileExtensionCheck \
--sip=[path/to/]SIP [--replaceExistingExtensions=true|false] [--ignoreUnidentifiedFiles=true|false]
ParameterBeschreibung
--sipName des SIP; wenn kein Pfad angegeben ist, wird erwartet, dass es sich am von actions.workbench.work definierten Speicherort befindet
--replaceExistingExtensionsoptional, true/ false(Default); gibt an, ob vorhandene (aber falsche) Erweiterungen ersetzt werden sollen
--ignoreUnidentifiedFilesoptional, true/ false(Default); gibt an, ob Dateien ignoriert werden sollen, deren Dateiformat nicht erfolgreich identifiziert werden konnte (und die daher keine PUID haben)

Quality Assurance: Backupdateien löschen

Löscht Dateien aus dem SIP, die einem bestimmten Namensmuster entsprechen.

java ch.docuteam.actions.qualityassurance.SIPDeleteBackupFiles \
[path/to/]SIP [filenamePattern filenamePattern ...]
ParameterBeschreibung
[path/to/]SIPName des SIP; wenn kein Pfad angegeben ist, wird erwartet, dass es sich am von actions.workbench.work definierten Speicherort befindet
[filenamePattern filenamePattern ...]Eine Liste von Dateinamenmustern (Gross-/Kleinschreibung wird nicht berücksichtigt, „*“ ist ein Platzhalter, darf jedoch nur am Anfang oder Ende des Musters stehen). Dateien, die einem dieser Muster entsprechen, werden gelöscht.

Quality Assurance: Leere Dateien löschen

Löscht leere Dateien (mit Dateigrösse 0 Bytes) aus dem SIP.

java ch.docuteam.actions.qualityassurance.SIPDeleteEmptyFiles \
--sip=[path/to/]SIP [--additionalDeletionInformation=<message>]
ParameterBeschreibung
--sip=[path/to/]SIPName des SIP; wenn kein Pfad angegeben ist, wird erwartet, dass es sich am von actions.workbench.work definierten Speicherort befindet
--additionalDeletionInformationoptional; Text; zusätzliche Information über das Löschen der SIP-Dateien, die zu eventDetail hinzugefügt wird

Quality Assurance: SIP anhand des Submission Agreements überprüfen

Prüft ob die Dateiformate mit den Vorgaben aus dem Submission Agreement übereinstimmen. Es gibt zwei Modi: im ersten Modus (removeBadFiles = false), wird jede Datei, welche über keine Übereinstimmung mit dem Submission Agreement hat, aufgelistet (verwendet werden hierzu die WARN log-Einträge) und zudem wird ein Fehlercode ausgegeben. Beim zweiten Modus (removeBadFiles = true), wird jede Datei, welche über keine Übereinstimmung mit dem Submission Agreement aufweist, aus dem SIP gelöscht. Das modifizierte mets.xml wird gespeichert (das originale SIP bleibt unverändert als Backup bestehen).

java ch.docuteam.actions.qualityassurance.SIPSubmissionAgreementCheck \
[path/to/]SIP [removeBadFiles] [operationSA] [operationDSS]
ParameterBeschreibung
[path/to/]SIPName des SIP; wenn kein Pfad angegeben ist, wird erwartet, dass es sich am von actions.workbench.work definierten Speicherort befindet
[removeBadFiles]optional, `true
[operationSA]optional, ID eines externen Submission Agreements, die für diese Aktion verwendet werden soll (anstelle des Agreements, die Teil des SIP ist)
[operationDSS]optional, ID eines Abschnitts für die Übermittlung externer Daten, der für diese Aktion verwendet werden soll (anstelle des Agreements, die Teil des SIP ist)

Quality Assurance: SIP virus check

Jede im SIP vorhandene Datei wird auf Viren überprüft. Für die Virenprüfung wird der Virenscanner von ClamAV verwendet.

Voraussetzung für diese Prüfung ist ein gestarteter ClamAV Dienst. Abhängig vom zweiten Argument werden infizierte Dateien verworfen oder automatisch gelöscht. Mit dem optionalen dritten Argument kann eine maximale Dateigrösse mitgegeben werden. Nur Dateien, die kleiner als dieses Limit sind, werden gescannt werden. Das Limit kann in einem der folgenden Formate angegeben werden: (1B, 1KB, 1MB, 1GB, 1TB). Erlaubt sind nur Ganzzahlen, keine Dezimalzahlen (1.5GB funktioniert nicht).

java ch.docuteam.actions.qualityassurance.SIPVirusCheck \
[path/to/]SIP deleteInfected [maxSize]
ParameterBeschreibung
[path/to/]SIPName des SIP; wenn kein Pfad angegeben ist, wird erwartet, dass es sich am von actions.workbench.work definierten Speicherort befindet
deleteInfectedwenn true, entfernt dieser Vorgang automatisch die infizierten Dateien vom SIP
[maxSize]maxSize in B, KB, MB, GB oder TB, nur Dateien kleiner als dieses Limit werden gescannt

Quality Assurance: entfernt nach Verzeichnisstufe

Entfernt bestimmte Verzeichnungsstufen aus einem SIP.

java ch.docuteam.actions.qualityassurance.RemoveByLevelOfDescription \
[/path/to/]folder levelOfDescription
ParameterBeschreibung
[path/to/]folderPfad des zu benennenden Ordners; wenn kein Pfad angegeben ist, wird davon ausgegangen, dass es sich m von actions.workbench.work definierten Speicherort befindet.
levelOfDescriptionName der Verzeichnisebene, die aus dem SIP entfernt werden soll

Quality Assurance: Dateiformatinformation hinzufügen/aktualisieren

Für alle Dateien des SIPs wird die Format-Identifikation erneut ausgeführt und im SIP hinzugefügt/aktualisiert.

Über einen Parameter kann definiert werden, ob bestehende Informationen überschrieben werden sollen (Default: false).

java ch.docuteam.actions.qualityassurance.SIPFormatIdentificationCheck \
--sip=[path/to/]SIP [--replaceExistingFormatInfo=true|false]
ParameterBeschreibung
--sipName des SIP; wenn kein Pfad angegeben ist, wird erwartet, dass es sich am von actions.workbench.work definierten Speicherort befindet
--replaceExistingFormatInfooptional, true/ false(Default); gibt an, ob eine existierende Formatinformation ersetzt werden soll

Quality Assurance: Dateien nach Format (PUID oder MIME type) entfernen

Entfernt alle Dateien eines SIPs, die einem der angegebenen Dateiformate entsprechen. Dateiformate können entweder in Form eines MIME types oder eines Pronom Unique IDentifiers (PUID) angegeben werden.

java ch.docuteam.actions.qualityassurance.SIPDeleteFilesByFormat \
--sip=[path/to/]SIP [--mimetype=...] [--puid=...]
ParameterBeschreibung
--sipName des SIP; wenn kein Pfad angegeben ist, wird erwartet, dass es sich am von actions.workbench.work definierten Speicherort befindet
--mimetypeoptional; durch Kommas getrennte Liste der MIME-Types, die aus diesem Paket gelöscht werden sollen
--puidoptional; durch Kommas getrennte Liste der PRONOM-Identifikatoren (PUID), die aus diesem Paket gelöscht werden sollen