Langzeitverfügbarkeit sichern: PDF-Validierung durch JHOVE?

PDF Association staff // December 17, 2014

Article


JHOVEJHOVE ist ein Open Source Tool, das der Identifizierung, Charakterisierung und Validierung gängiger Formate wie z. B. pdf, tiff, jpeg, aiff, wave dient.  Für zwölf verschiedene Dateiformate gibt es in JHOVE Validierungsmodule, unter anderem für PDF.

Das PDF-Format ist in Gedächtnisorganisationen weit verbreitet und eines jener Formate, das am häufigsten zur digitalen Langzeitarchivierung übergeben wird. Aufgrund der Heterogenität der möglichen Ursprungsformate, der Konvertierungstools und der Flexibilität der PDF-Reader entspricht ein sehr hoher Prozentsatz der PDF-Dateien allerdings nicht dem PDF-Standard.

Das PDF-Modul von JHOVE wird in der digitalen Langzeitarchivierung in vielen Gedächtnisinstitutionen wie selbstverständlich täglich eingesetzt. Ich möchte beleuchten, inwiefern JHOVE bei der PDF-Validierung für das Risikomanagement und die Qualitätssicherung in der Langzeitverfügbarkeit nützlich sein kann. Ein valides PDF meint hier, dass das PDF in jeder Hinsicht der Spezifikation entspricht, also korrekt ist. Invalide hingegen meint, dass es mindestens in einem Punkt der Spezifikation nicht entspricht und somit kein korrektes PDF ist.

Fälschlicherweise als invalide klassifiziert: Page Tree

Während des PDF Hackathon der OPF (Open Preservation Foundation) gemeinsam mit der ZBW (Deutsche Zentralbibliothek für Wirtschaftswissenschaften)  und Goportis (Leibniz-Bibliotheksverbund Forschungsinformation) in Hamburg wies Olaf Drümmer von der PDF Association  auf eine Fehlermeldung von JHOVE hin, die der PDF Spezifikation gar nicht widerspricht, aber dennoch von JHOVE als Verstoß klassifiziert wird.

Die Seiten einer PDF-Datei sind in der Regel in einem Page Tree gespeichert, um möglichst rasch auf eine bestimmte Seite gelangen zu können. Dieser wird häufig als balancierter Page Tree gebildet. Obgleich der PDF-Standard auf diese Möglichkeit hinweist, schreibt er sie in keiner Weise vor.

Es entspricht ebenfalls dem PDF-Standard, wenn der Page Tree nicht ausbalanciert ist, also beispielweise nur ein einziger „page tree node“ (Knoten) existiert, der die PDF Seiten des gesamten Dokuments direkt referenziert . Es ist lediglich weniger effizient beim Seitenzugriff (langsamere Navigation im Dokument), vor allem wenn es sich um eine PDF-Datei mit besonders vielen Seiten handelt. JHOVE hingegen gibt es als Fehler aus, wenn die Seiten nicht in balancierten Page Tree gespeichert sind. Da dies kein Fehler ist und für die digitale Langzeitarchivierung nicht risikobehaftet, kann diese Meldung ignoriert werden.

Exkurs PDF/A-Validierung durch JHOVE?

Wenn es um die digitale Langzeitarchivierung geht, heißt es oft, man solle das PDF/A-Format als bevorzugtes Format verwenden. Dies passt dann allerdings nicht mehr zur Alltagswirklichkeit vieler Workflows, in denen JHOVE zur Validitätsprüfung eingesetzt wird.

Das PDF-Modul innerhalb von JHOVE beinhaltet zwar eine PDF/A-Validierung, diese wurde jedoch laut Aussagen der JHOVE-Entwickler erst nachträglich implementiert, ist nicht stabil und funktioniert nicht gut.  Außerdem analysiert es nicht die Inhalte der Datenströme (Streams) und kann daher die PDF/A-Konformität nicht ISO-konform prüfen.

Das PDF/A-Format unterscheidet sich insofern vom Standard-PDF-Format, als dass es einige Möglichkeiten explizit verbietet oder als verpflichtend voraussetzt, die für die digitale Langzeitarchivierung als besonders wichtig erachtet werden. Folgendes ist in einem PDF/A-1b nicht erlaubt:

  • Einbettung von Audio- oder Video-Dateien (Abhängigkeit von externen Playern)
  • LZW-Kompression (patentrechtliche Gründe, gilt nur für PDF/A-1, das Patent ist mittlerweile abgelaufen, seit PDF/A-2 ist die LZW-Kompression in PDF/A-Dateien möglich)
  • Verschlüsselung
  • Transparenz, JavaScript, ausführbare Dateien, Funktionen (ausführbare Aufrufe) und Verlinkungen nach außen

Folgendes wird in einer PDF/A-Datei als zwingend vorausgesetzt:

  • Vollständigkeit der Daten. Dies beinhaltet die Einbettung aller im Dokument verwendeter Schriften und Bilder, und Metadaten, die im XMP-Format gespeichert werden.
  • Eindeutige Interpretierbarkeit (z. B. bzgl. Schriftarten und Farbdarstellung. Aus diesem Grund sind auch mehrere Ebenen nicht erlaubt)

Außerdem basiert PDF/A-1 auf PDF 1.4. Alle ab PDF 1.5 eingeführten Funktionen wie zum Beispiel die JPEG2000-Kompression und die Verwendung mehrerer Ebenen, gehen bei einer Umwandlung in das PDF/A-1 Format verloren. Im Gegensatz hierzu basiert PDF/A-2 auf PDF 1.7.

Die von der PDF Association bereitgestellte Isartor Testsuite besteht aus 204 invaliden PDF/A-Dateien, doch JHOVE hat nur eine davon als invalide erkannt. 51 hiervon wurden von JHOVE gar nicht als PDF/A erkannt. Daher hat JHOVE für diese Dateien nur geprüft, ob diese dem PDF 1.4-Standard entsprechen.

Diese Testergebnisse reichen aus, um zu begründen, dass JHOVE kein geeigneter PDF/A-Validator ist. Da JHOVE Bestandteil einiger out-of-the-box-Langzeitarchivierungslösungen ist, ist es dennoch interessant zu wissen, was JHOVE denn überhaupt bezüglich des PDF/A-Formats leistet, um gut informierte Entscheidungen treffen zu können.

Das PDF-Modul von JHOVE prüft, ob es sich um ein PDF/A handelt und wendet dann als Subkategorie das PDF/A-Profil an.  In diesem Fall prüft JHOVE, ob

  • Annotation Types : Movie, Sound und File-Attachment
  • Action Types: wie JavaScript und Links
  • LZW-Codierung
  • Encryption

in einer als PDF/A erkannten Datei vorhanden sind und falls ja, wird diese als nicht valide erkannt. Darüber hinaus wird geprüft, ob

  • • Metadaten in einem verarbeitbaren Format
  • • Ausreichend Informationen zu Schriften im PDF Dictionary

vorhanden sind, falls nicht, wird die PDF/A-Validität ebenfalls auf false gesetzt.

Ein Schnelltest von 670 laut PDF Box invalider PDF/A-Dateien zeigt, dass lediglich fünf Dateien von JHOVE als nicht wohlgeformt (4) bzw. invalide (1) erkannt werden. Hierbei handelt es sich aber stets um Verstöße gegen die Standard-PDF-Spezifikation, in denen JHOVE das PDF/A nicht als PDF/A erkannt hat und daher lediglich die PDF-Validität überprüft.

Mit den gängigen Konvertierungstools ist es schwierig, Komponenten in eine PDF/A-Datei einzubauen, die das PDF Modul von JHOVE testet und die somit als Fehler auffallen würden. Die mir bekannten und zur Verfügung stehenden PDF/A-Konvertierungstools lassen das gar nicht erst zu. Beispielsweise können verschlüsselte PDF-Dateien aufgrund des Schutzes entweder gar nicht erst nach PDF/A konvertiert werden oder die Verschlüsselung wird bei der Konvertierung entfernt, da das Konvertierungstool dies bei der Umwandlung berücksichtigt. Das gleiche gilt für die anderen von in PDF/A nicht erlaubten Komponenten, die JHOVE abprüft.

Die PDF/A-Prüfung von JHOVE ist also so rudimentär, dass ich mir nicht einmal sicher bin, ob es überhaupt PDF/A-Dateien gibt, die diese Regeln brechen und somit von JHOVE als invalide entlarvt werden würden.

Fazit

Für die PDF/A-Validierung ist JHOVE nicht geeignet. Für die Standard-PDF-Validierung ist mir keine Alternative zu JHOVE bekannt. Da in vielen Gedächtnisorganisationen hauptsächlich das PDF-Format verwendet wird und die Qualität der Dateien nicht immer dafür spricht, sie in PDF/A zu konvertieren, sehe ich nach wie vor die Notwendigkeit für einen Standard-PDF-Validator. JHOVE wird hierfür in der Regel trotz seiner Grenzen genutzt und die Entscheidung über die Archivtauglichkeit wird vom JHOVE-Ergebnis abhängig gemacht.

Die Nutzung von JHOVE kann durchaus sinnvoll sein, sofern man die Fehlermeldungen versteht und auch Möglichkeiten kennt, diese zu beheben. Das ist zurzeit noch nicht gut dokumentiert. Sowohl nestor (AG Formaterkennung) als auch die Open Preservation Foundation möchten hier zeitnah einen Beitrag leisten, dies zu verbessern.

Einige JHOVE-Fehler wie z. B. „Invalid PDF trailer“ haben sich im Alltag als sehr nützlich herausgestellt. PDF-Dateien, die diesen Fehler erzeugen, lassen sich in der Regel nicht öffnen. Die Ursache ist, dass die Datei nicht vollständig (hoch- bzw. herunter-)geladen wurde und die Datei daher unvollständig ist. Bei einem hohen Archivvolumen ist es sehr nützlich, solche schwerwiegenden Fehler automatisiert erkennen zu können und diese auch dem Datenlieferanten melden zu können, so dass sie dort behoben werden können. Auch andere Fehler, die PDF-Struktur betreffend, können mithilfe von JHOVE erkannt und mit einfachen Reparaturen behoben werden.

Auch wenn noch längst nicht der Sinn und die Auswirkungen, geschweige denn die Behebungsmöglichkeiten einer jeden JHOVE-Fehlermeldung bekannt sind, eignet sich JHOVE zur ersten Orientierung durchaus. Da sogar der JHOVE-Entwickler Gary McGath davor warnt, JHOVE als der Weisheit letzten Schluss zu behandeln, werden wir unsere Entscheidungen und Workflows aber keinesfalls nur noch JHOVE abhängig machen.


ABOUT THE AUTHORS

PDF Association logo
PDF Association staff

The PDF Association is the meeting-place of the PDF industry. The staff of the PDF Association are dedicated to delivering the information, services and value the members have come to expect. Staff members of the PDF Association include: Duff Johnson (Executive Director) Thomas Zellmann (Managing Director) Matthias Wagner (Operations Director) Alexandra Oettler (Editor) Nicole Gauger (Editor)

ABOUT THE AUTHORS

PDF Association logo

PDF Association staff

The PDF Association is the meeting-place of the PDF industry. The staff of the PDF Association are dedicated to delivering …

© 2019 Assosiation for Digital Document Standards e.V. | Privacy Policy | Imprint