Dieser Blogeintrag beschriebt die Erkenntnisse aus der siebten Lerneinheit, in der wir uns weiter mit dem Modellieren von Metadaten und Benutzung von Schnittstellen beschäftigt haben.

In der Fortsetzung des Blocks “Metadaten modellieren und Schnittstellen nutzen” ging es um die Modellierung von Tabellendaten bzw. die Übertragung von Tabellendaten ins Format MARC21. Dafür haben wir das Tool OpenRefine benutzt.

OpenRefine ist eine open source Software, die mehrere Vorteile bietet. Sie hat eine grafische Oberfläche, die sich für Einsteiger:innen sehr gut eignet. Mit der Software kann man die Daten analysieren, bereinige, konvertieren und eigene Daten aus den externen Datenbanken (wie z. B. GND oder WikiData) zu vergleichen sowie die Daten aus den externen Daten zu übernehmen. OpenRefine läuft komplett lokal auf einem Rechner und wird bedient über den Browser. Das heisst, dass alle Daten lokal bleiben (angenommen, man arbeitet mit keinen externen Schnittstellen). Am häufigsten wird das Tool in den Bibliotheken und für die Normalisierung von Daten eingesetzt sowie für die Datentransformation. OpenRefine eignet sich besonders für tabellarische Daten. Für Komplexes XML mit vielen Verschachtelungen (EAD) braucht es Zusatztools.

OpenRefine kann in der virtuellen Maschine installiert werden. Die Installationsschritte wurden im gemeinsamen Dokument publiziert. Diese hat in meiner virtuellen Maschine mit meiner Linux-Version glücklicherweise funktioniert. Das Zeil der kommenden Übungen mit OpenRefine war, einige Basisfunktionen kennenzulernen und einen Eindruck von der Software zu erhalten. Für die Übungen wurden uns Beispieldaten zur Verfügung gestellt.

Die GUI der OpenRefine ist wie bereits betont, sehr schlicht und intuitiv. Ich konnte mich bei den Grundfunktonen sehr gut orientieren. Der Import von Daten sowie die Analyse erfolgte innerhalb Sekunden. Im oberen Teil des Bildschirms wurden die ersten 100 Datensätzen als Tabelle repräsentiert. Im unteren Teil sieht man die ganze Brandweite der Datenformaten (von CSV, über RDF/Turtle bis XML) die OpenRefine erkennt und mit den die Software arbeiten kann. Sprachspezifische Zeichensätze können im Feld “Character encoding” angepasst werden. Durch Create Project werden die Daten in OpenRefine hochgeladen und können bearbeitet werden.

Die Hauptfunktion von OpenRefine ist die Filterfunktion mittels Facetten. Mit den Facetten kann man Daten auswählen und filtern. Über eine Facette können die Tabelleninhalte gleichzeitig angepasst werden, was den Bearbeitungsprozess deutlich effizienter macht. Diese haben wir uns am Beispiel der Einträge aus der Spalte Language angeschaut. Wenn man aus der Dropdown-Liste “Facet” und danach “Text facet” auswählt, bekommt man links in eine Auflistung der Sprachen im Dokument. So können die Werte direkt bearbeitet werden (in der Präsentation wurde die Bezeichnung Englisch in EN umgewandelt, was die Werte, die mit der Bezeichnung Englisch verknüpften Werte automatisch zur Gruppe EN hinzugezählt hat). Mit der Funktion “Split multi-valued cells” können die mehrwertigen Zellen korrigieren (z. B. Autoren zu trennen). Um zwei Zellen zu verbinden, kann man die Funktion “Join multi-valued cell” benutzen. Mit Hilfe der Funktion “Cluster” werden alle ausgewählten Facetteneintrage verglichen und von Algorithmen auf Ähnlichkeiten geprüft.

Im zweiten Teil der Lernveranstaltung wurde die Transformation der Beispieldaten vom CSV-Format in MARCXML vorgenommen. Als erstes musste eine Vorlage erstellt werden. Durch die Analyse der Vorlage kann man verschiedene Transformationsregeln erkennen. Am Ende der Sitzung haben wir die Vorlage als eine Texdatei heruntergeladen und in eine XML-Datei umwandelt und diese vom OpenRefine validieren lassen. Diese hat mir nach der Anpassung des Dateinamens gut erfolgt.

Validierung OpenRefine

Was habe ich gelernt:

  • OpenRefine ist eine sehr bereit genutzte Software für Bereinigung und Transformation von Daten
  • Es eignet sich besonders für tabellarische Daten

Was bleibt noch unklar:

  • Vieles!
  • Um alle Funktionalitäten zu verinnerlichen brauch es Vorkenntnisse und viel Übung
  • Kommen die Programmierenkompetenzen von Vorteil oder sind sie eigentlich ein Muss (Reconciliation, Templating)?
  • Der Input im zweiten Teil der Sitzung fand ich persönlich sehr anspruchsvoll und teilweise kryptisch.