|
| 1 | +--- |
| 2 | +title: SGB Data Validator |
| 3 | +subtitle: Datenvalidierung für Stadt.Geschichte.Basel |
| 4 | +author: |
| 5 | + - name: Moritz Mähr |
| 6 | + |
| 7 | + orcid: 0000-0002-1367-1618 |
| 8 | + affiliation: Universität Basel |
| 9 | +date-modified: last-modified |
| 10 | +lang: de |
| 11 | +code-links: |
| 12 | + - href: 'https://github.com/Stadt-Geschichte-Basel/sgb-data-validator/' |
| 13 | + text: GitHub Repository |
| 14 | + icon: github |
| 15 | +--- |
| 16 | + |
| 17 | +## SGB Data Validator |
| 18 | + |
| 19 | +Der [SGB Data Validator](https://github.com/Stadt-Geschichte-Basel/sgb-data-validator) ist ein Python-basiertes Werkzeug zur Validierung der Metadatenqualität für das Projekt Stadt.Geschichte.Basel. Es stellt sicher, dass Kulturgüter und Medienobjekte in der [Omeka S](https://omeka.org/s/)-Instanz einem umfassenden Datenmodell mit kontrollierten Vokabularen entsprechen. |
| 20 | + |
| 21 | +Das Werkzeug wurde entwickelt, um die Qualität und Konsistenz der historischen Forschungsdaten zu gewährleisten. Es überprüft systematisch alle Metadaten auf Vollständigkeit, Korrektheit und Einhaltung definierter Standards. Dadurch wird sichergestellt, dass die Daten den FAIR-Prinzipien (Findable, Accessible, Interoperable, Reusable) entsprechen. |
| 22 | + |
| 23 | +## Funktionen |
| 24 | + |
| 25 | +Der Validator bietet umfangreiche Prüf- und Analysemöglichkeiten: |
| 26 | + |
| 27 | +- **Schema-Validierung**: Nutzt Pydantic-Modelle für strukturierte Datenprüfung |
| 28 | +- **Kontrollierte Vokabulare**: Validiert Epochen, MIME-Typen, Lizenzen und Iconclass-Codes |
| 29 | +- **Sprachvalidierung**: Überprüft ISO 639-1 Sprachcodes für alle 184 Zwei-Buchstaben-Codes |
| 30 | +- **URI-Validierung**: Prüft URIs auf Erreichbarkeit und erkennt defekte Links |
| 31 | +- **CSV-Reports**: Erstellt übersichtliche Berichte für die Datenqualitätsprüfung |
| 32 | +- **Daten-Profiling**: Generiert interaktive HTML-Berichte mit detaillierten Statistiken |
| 33 | +- **Datentransformation**: Normalisiert Leerzeichen und andere Formatierungsprobleme |
| 34 | +- **Backup und Restore**: Sichere Datenverwaltung mit Wiederherstellungsfunktion |
| 35 | +- **Python-API**: Programmtischer Zugriff für erweiterte Anwendungsfälle |
| 36 | + |
| 37 | +## Anwendung |
| 38 | + |
| 39 | +Das Werkzeug kann über die Kommandozeile bedient werden und unterstützt verschiedene Validierungs- und Transformationsszenarien. Es ermöglicht sowohl die Online-Validierung direkt aus Omeka S als auch einen vollständigen Offline-Workflow mit Download, Transformation, lokaler Bearbeitung und Upload. |
| 40 | + |
| 41 | +Die Validierungsergebnisse werden in verschiedenen Formaten bereitgestellt, darunter übersichtliche CSV-Dateien mit direkten Links zu den zu bearbeitenden Ressourcen in der Omeka-Administrationsoberfläche. Dies erleichtert die systematische Behebung von Datenqualitätsproblemen erheblich. |
| 42 | + |
| 43 | +## Technologie |
| 44 | + |
| 45 | +Das zugehörige GitHub-Repository [sgb-data-validator](https://github.com/Stadt-Geschichte-Basel/sgb-data-validator/) enthält den vollständigen Open-Source-Code des Validators. Die Verwendung moderner Python-Bibliotheken wie Pydantic für Datenvalidierung und ydata-profiling für Datenanalyse gewährleistet hohe Qualität und Zuverlässigkeit. |
| 46 | + |
| 47 | +Das Projekt folgt der [Advanced Structure for Data Analysis](https://book.the-turing-way.org/project-design/pd-overview/project-repo/project-repo-advanced/) von *The Turing Way* und nutzt moderne Werkzeuge wie [uv](https://docs.astral.sh/uv/) für Abhängigkeitsverwaltung und [ruff](https://docs.astral.sh/ruff/) für Code-Qualität. Durch die Offenlegung des Quellcodes wird die Nachnutzbarkeit für andere Kulturerbe-Projekte gefördert. |
0 commit comments