Juli 2020
Entwicklungen und Neuerungen an Goobi workflow im Juli 2020

Coming soon

In den kommenden Wochen werden wir uns voraussichtlich auf folgende Punkte konzentrieren:
  • Abschluß der WCAG-Kompatibilität
  • Überarbeitung der Anlegeseite von Vorgängen zur Nutzung der Daten des jeweiligen Regelsatzes
  • Erweiterung der Warteschlangenfunktionalitäten mittel Active MQ
  • Implementierung verschiedener generischer Plugins für unterschiedliche Workflows

Umfangreiche Vokabulare mit blätterbarer Auflistung der Datensätze

Nachdem wir vor einigen Monaten den Vokabularmanager in den Kern von Goobi workflow überführt hatten, wurde dieser schnell bereits für mehrere Projekte verwendet, um kontrollierte Vokabulare innerhalb des METS-Editors als Drop-Down-Liste zu haben oder auch um spezielle Plugins und Exporte durchzuführen, die verschiedene Schreibweisen homogenisieren. Was dabei auffiel war, dass die Bedienung noch nicht optimal war, insbesondere wenn es sich um umfangreiche Vokabulare handelte, wie sie über einen Excel-Import eingespielt werden können.
Vokabularmanager mit blätterbaren Datensätzen
Die Vokabulareinträge werden von nun an mit einem Paginator anzeigt. Dies erlaubt nicht nur eine deutlich kürzere Ladezeit als bisher sondern verhindert darüber hinaus auch ein unnötiges Scrollen der Webseite, wenn zwischen verschiedenen Datensätzen gewechselt wird.

Flexible Ordner-Namen innerhalb des FileUpload-Plugins

Im letzten Monat hatten wir bereits über eine Erweiterung von Goobi workflow berichtet, die es den Nutzern nun ermöglicht, dass Goobi verschiedene Ordner verwaltet mit eigenem Benennungsschema. Um diese Funktionalität nun auch an anderen Stellen nutzen zu können, haben wir das File Upload Plugin nun ebenfalls erweitert. Es kann nun nicht nur mit diesen neuen konfigurierbaren Ordnern umgehen. Es erlaubt darüber hinaus neuerdings ebenfalls, dass für einzelne Aufgaben erlaubt werden kann, dass ein Nutzer seine Dateien in mehr als ein Verzeichnis hochladen kann.
Ein Upload von Dateien kann für einen Nutzer auch in verschiedene Verzeichnisse erlaubt werden
Die Konfiguration für einen solchen Use Case würde innerhalb der Datei plugin_intranda_step_fileUpload.xml beispielhaft folgendermaßen aussehen:
1
<config_plugin>
2
3
<config>
4
<!-- which projects to use for (can be more than one, otherwise use *) -->
5
<project>*</project>
6
<step>*</step>
7
<!-- which file types to allow -->
8
<regex>/(\.|\/)(gif|jpe?g|png|tiff?|jp2|pdf)$/</regex>
9
<!-- which folder to use (master or media) -->
10
<folder>master</folder>
11
<folder>media</folder>
12
</config>
13
14
</config_plugin>
Copied!

Flexible Ordner-Namen innerhalb des ImageQA-Plugins

Nachdem eine Erweiterung des FileUpload Plugins bereits erfolgte, haben wir in ähnlicher Form auch das Image QA Plugin für die Nutzung verschiedener Ordner erweitert. Damit ist es nun möglich, dass ein Anwender eine Qualitätskontrolle von Bildern innerhalb verschiedener Verzeichnisse eines Vorgangs vornimmt. Der Nutzer kann hierbei, je nachdem, welche Verzeichnisse in seiner Aufgabe erlaubt wurden, zwischen den verschiedenen Ordnern wechseln und die darin enthaltenen Objekte betrachten.
Auch die Qualitätskontrolle erlaubt nun die Nutzung verschiedener Verzeichnisse
Für die Festlegung, welche Verzeichnisse in welcher Aufgabe für einen Nutzer zugänglich sein sollen, erfolgt eine Konfiguration beispielsweise so innerhalb der Datei plugin_intranda_step_imageQA.xml:
1
...
2
<config>
3
<project>*</project>
4
<step>ImageQA</step>
5
<foldername>master</foldername>
6
<foldername>media</foldername>
7
<!-- how to display the thumbnails -->
8
<numberOfImagesPerPage>12</numberOfImagesPerPage>
9
<thumbnailsize>200</thumbnailsize>
10
<!-- which image sizes to use for the big image -->
11
<imagesize>800</imagesize>
12
<imagesize>3000</imagesize>
13
<!-- show OCR text beside image -->
14
<displayocr>true</displayocr>
15
</config>
16
...
Copied!

Flexible Ordner-Namen innerhalb des JHove-Validation-Plugins

Um für ein Projekt eine unterschiedliche Validierung verschiedener Bildordner zu erlauben, musste auch das Plugin zur Validierung von Bildern auf Basis von JHove überarbeitet werden. Somit ist auch in diesem Plugin nun steuerbar, welcher Ordner genau wie validiert werden soll, was auch für die flexiblen individuell konfigurierten Verzeichnisse gilt. Die Konfiguration dafür sieht innerhalb der Konfigurationsdatei plugin_intranda_step_tif_validation.xml beispielhaft wie folgt aus:
1
<config_plugin>
2
<config>
3
<project>*</project>
4
<step>Validate Scans</step>
5
<!-- folders to validate, can be multiple one (e.g. master, main etc. -->
6
<folder>scans</folder>
7
<openStepOnError>Scanning</openStepOnError>
8
<lockAllStepsBetween>true</lockAllStepsBetween>
9
<jhoveConfiguration>/opt/digiverso/goobi/config/jhove/jhove.conf</jhoveConfiguration>
10
<namespace uri="http://www.loc.gov/mix/v20" name="mix" />
11
<namespace uri="http://hul.harvard.edu/ois/xml/ns/jhove" name="jhove" />
12
<!--Check color depth -->
13
<check>
14
<xpath>string(//mix:bitsPerSampleValue[1])</xpath>
15
<wanted>8</wanted>
16
<error_message> Check color depth for "${image}": Expected value "${wanted}", but found value "${found}".</error_message>
17
</check>
18
</config>
19
<config>
20
<project>*</project>
21
<step>Validate Photographs</step>
22
<!-- folders to validate, can be multiple one (e.g. master, main etc. -->
23
<folder>photographs</folder>
24
<openStepOnError>Scanning</openStepOnError>
25
<lockAllStepsBetween>true</lockAllStepsBetween>
26
<jhoveConfiguration>/opt/digiverso/goobi/config/jhove/jhove.conf</jhoveConfiguration>
27
<namespace uri="http://www.loc.gov/mix/v20" name="mix" />
28
<namespace uri="http://hul.harvard.edu/ois/xml/ns/jhove" name="jhove" />
29
<!--Check color depth -->
30
<check>
31
<xpath>string(//mix:bitsPerSampleValue[1])</xpath>
32
<wanted>16</wanted>
33
<error_message> Check color depth for "${image}": Expected value "${wanted}", but found value "${found}".</error_message>
34
</check>
35
</config>
36
</config_plugin>
Copied!

Barrierefreiheit gemaß WCAG 2.1

Die Web Content Accessibility Guidelines (WCAG) als internationaler Standard zur barrierefreien Gestaltung von Internetangeboten sind innerhalb der Europäischen Union für öffentliche Stellen ab dem 23. September 2019 für neue und ab 23. September 2020 auch für bestehende Websites gemäß WCAG 2.1 Stufe AA verbindlich. Um diese Vorgaben einzuhalten, überarbeiten wir die Nutzeroberfläche von Goobi workflow gründlich. Die meisten Bereiche haben wir im Juli bereits abschließen können. Die sehr kleinteilige Arbeit wird noch etwas in Anspruch nehmen, insbesondere für den METS-Editor und die zahlreichen zu berücksichtigenden Plugins. Wir freuen uns aber darüber, dass wir die ersten Accessiblity-Validatoren nun bereits erfüllen können.
Einhaltung der Barrierefreiheit gemäß WCAG 2.1 AA

LayoutWizzard Workflow Plugin

Innerhalb eines Projektes ergab sich die Anforderung, dass das automatische Croppen mittels LayoutWizzard nicht nur für gesamte Vorgänge möglich sein. Speziell ging es darum, dass in einem Vorgang durchaus auch einmal jeweils nur ein oder zwei Bilder vorhanden sind und daher eine Vorgangsübergreifende Bearbeitung der Bilder möglich sein soll. Aus diesem Grund haben wir eine Erweiterung für den LayoutWizzard implementiert, die als Workflow-Plugin arbeitet. Dort ist es möglich, über mehrere Vorgänge hinweg Bilder aufgelistet zu bekommen, um diese zu croppen. In der Liste der dort aufgeführten Bilder werden dabei nur diejenigen aufgeführt, die bereits einen konfigurierten Arbeitsschritt (z.B. eine abgeschlossene Bildanalyse) durchlaufen haben.
Croppen von Bildern über mehrere Vorgänge hinweg mit dem LayoutWizzard
Eine Dokumentation für dieses neue Plugin findet sich unter der folgenden URL:
Page not found
Goobi workflow - Plugins (Deutsch)
https://docs.goobi.io/goobi-workflow-plugins-de/workflow/plugin-workflow-crop

Weitere Anpassungen

Neben den größeren Entwicklungen gab es auch wieder einige weitere Anpassungen:

Update sehr vieler Dependencies in Goobi workflow

Wie jede größere Software bedient sich auch Goobi workflow zahlreicher externer Programmbibliotheken, die andere Entwickler unter einer Open-Source-Lizenz bereitstellen. Hier haben wir einmal gründlich aufgeräumt und zahlreiche solcher Bibliotheken aktualisiert, um auf dem neuesten Stand zu sein. Eine solche Änderung hat im ersten Moment zwar kaum einen Effekt auf die Nutzeroberfläche. Mittelfristig erlaubt dies aber natürlich viele zusätzliche Erweiterungen des Funktionsumfangs.

Goobi workflow auf S3: Fix für die Übertragung von Dateien größer als 5GB

Kaum eine Einrichtung nutzt bisher die Möglichkeit von Goobi workflow auch innerhalb der Amazon Cloud unter S3 zu laufen. Für diejenigen, die dies aber dennoch tun, gibt es eine Anpassung für den Upload von großen Dateien. So ist es nun auch möglich, mit Dateien zu arbeiten, die größer als 5 GB sind.

Behebung kleiner JavaScript-Fehler

Während unserer regelmäßigen Aufräumarbeiten am Quellcode der Software sind auch wieder einige kleinere JavaScript-Fehler gefunden und behoben worden. Dies betrifft vorrangig kleiner Unstimmigkeiten innerhalb der Anzeige in der Nutzeroberfläche.

Interne Infrastrukturanpassungen

Um auch bei regelmäßiger Veröffentlichung einer monatlichen neuen Version von Goobi workflow alle relevanten Plugins aktuell zu halten, haben wir unsere interne Infrastruktur auf Basis von Jenkins und Nexus noch einmal deutlich überarbeitet. Damit können wir sicherstellen, dass unsere Plugins steht automatisch mit der jeweils aktuellen Goobi-Version kompatibel bleiben. Auf der Basis dieser Arbeiten gestalten sich entsprechend die Updates von Goobi-Systemen einfacher.
Last modified 1yr ago