Forschungssoftware
Die Forschungssoftware des STURM-Projektes wird kollaborativ über die Code-Hosting Plattform GitHub entwickelt. Daneben werden alle Komponenten in regelmäßigen Abständen zitierfähig auf der Plattform Zenodo veröffentlicht.
Komponente | Download |
---|---|
eXist Webapp (Hauptsoftware) | GitHub |
PHP Webapp (Beispielanwendung) | GitHub |
eXist-Applikation
Softwarearchitektur
Die STURM-Edition ist als Webanwendung für die native XML-Datenbank eXist realisiert. Innerhalb der Anwendung erfolgen sowohl die Editionsarbeiten mit oXygen als auch die Online-Publikation der STURM-Quellen und Begleittexte. Die eXist-Applikation ist inspiriert durch aktuelle Entwicklungen im Bereich statischer Website-Generatoren und Flat-File CM Systeme (bspw. Jekyll, Hugo oder auch Grav). Sämtliche Komponenten der Edition werden vollständig aus XML vorgeneriert und als statisches HTML ausgeliefert (Ausnahmen hierzu bilden die dynamischen APIs).
Neben einer deutlich besseren Performance hat dieser Ansatz weitere Vorteile, zum Beispiel eine gesteigerte Nachhaltigkeit der digitalen Edition, da nicht nur die Forschungsdaten und der dazugehörige Programmcode sondern auch die daraus erzeugte Präsentationsschicht und die aus den Daten abgeleiteten Formate (bspw. CMIF, JSON etc.) in einem ‚Gesamtpaket‘ systemneutral verfügbar gemacht werden können. 1
Webtechnologien
Für die Präsentationsschicht der Digitalen Edition kommen einschlägige Programmbibliotheken zum Einsatz. Entlang der Prinzipien des progressive enhancement werden die Forschungsdaten in statisches, semantisches HTML unter Berücksichtigung der Barrierearmut umgewandelt. Dadurch kann die Edition in ihrer grundlegenden Form mit jedem Webbrowser bzw. internetfähigem Gerät rezipiert werden. Hierauf aufbauend werden für modernere Browser mit Hilfe bestimmter JavaScript- und CSS-Bibliotheken zusätzliche Funktionalitäten bereitgestellt (bspw. eine Klickvergrößerung der Digitalisate, ein Mehrspaltensatz oder interaktive Karten im Ortsregister). Insgesamt werden folgende Bibliotheken und Frameworks eingesetzt:
- jQuery (Klickvergrößerung, Karten, Navigation für Smartphones und Tablets)
- Magnific Popup (Klickvergrößerung für Digitalisate)
- Leaflet (interaktive Karte im Ortsregister)
- highlight.js (Darstellung von XML-Markup in den Editionsrichtlinien)
- Hyphenopoly (optimierte Silbentrennung für sauberen Blocksatz)
- Skeleton (CSS Grid für den Spaltensatz)
Typographie & Gestaltung
Die Präsentationsschicht der digitalen Edition legt besonderes Augenmerk auf eine ansprechende Darbietung unter Einbeziehung typographischer Gestaltungselemente aus der Zeit des ‚Sturm‘, eine gute Benutzbarkeit sowie einen optimalen Zugriff sowohl mit Desktop- als auch mit mobilen Endgeräten. Eine Schriftanalyse der ersten Ausgabe des ‚Sturm‘ von 1910 zeigt, dass die ersten Ausgaben mit der damals in Amerika und Europa weit verbreiteten Schriftfamilie ‚Romana‘ des deutsch-amerikanischen Schriftdesigners Gustaf F. Schroeder gesetzt wurden. 2
Die STURM-Edition greift gestalterisch das historische Schriftbild des ‚Sturm‘ auf und überführt es in das digitale Zeitalter. Zum Einsatz kommt ‚Romana EF Book‘ (Elsner + Flake), die als moderner Webfont eingebunden wird. Die typographische Gestaltung der Texte wird ergänzt durch Ornamente (bspw. Trenner zur Seitenaufteilung), die ebenfalls inspiriert sind durch die Druckgestalt der STURM-Zeitschrift. Genau wie seinerzeit im Druck kommt in der webbasierten Version ein Mehrspaltensystem zum Einsatz (Grid), das in der eXist-Anwendung durch eine spezifische TEI/XML-Annotationsstruktur der Begleittexte codiert und in der Präsentationsschicht mit Hilfe des Skeleton CSS-Grid-Systems implementiert ist.
PHP-Applikation
Für den Einsatz in der Lehre wird neben der eXist-Applikation eine zweite Webanwendung entwickelt, die eine gleiche – wenn auch in der Funktionalität für Lernzwecke etwas reduzierte – Präsentationsschicht aus den XML-Daten erzeugt. Die Anwendung beruht jedoch auf einer gänzlich anderen Softwarearchitektur. Während die eXist-Applikation durchgängig X-Technologien verwendet (TEI/XML, XQuery, XSLT) und einem funktionalen Programmierparadigma folgt, ist diese Anwendung in PHP unter Einsatz des objektorientierten Programmierparadigmas entlang der Architekturprinzipien des Domain Driven Design implementiert. In diesem Rahmen demonstriert die Anwendung gängige Software-Entwurfsmuster, wie beispielsweise das Model-View-Controller Prinzip und zeigt unterschiedliche Möglichkeiten HTTP-basierter Schnittstellenprogrammierung auf. Im Rahmen des Moduls ‚Webtechnologien‘ des Masterstudiengangs ‚Digitale Methodik in den Geistes- und Kulturwissenschaften‘ können somit beide Programmierparadigmen und Software-Architekturprinzipien anhand einer einzigen Digitalen Edition vergleichend nachvollzogen werden.
- Vgl. hierzu aktuell auch den Beitrag von Fabian Cremer, Lisa Klaffki und Timo Steyer: „Der Chimäre auf der Spur: Forschungsdaten in den Geisteswissenschaften“, in: obib, Das offene Bibliotheksjournal, Bd. 5, Nr. 2 (2018), DOI https://doi.org/10.5282/o-bib/2018H2S142-162. »
- Schroeder entwickelte die Schrift 1892 im Rahmen seiner Tätigkeiten als Stempelschneider bei der Central Type Foundry auf Basis älterer Versionen, die bereits in den 1860er Jahren entworfen wurden. Siehe https://www.myfonts.com/fonts/bitstream/romana/. »
Zitierhinweis:
Schrade,
Torsten:
„Forschungssoftware“, in:
DER STURM. Digitale Quellenedition zur Geschichte der internationalen Avantgarde, erarbeitet und herausgegeben von Marjam Trautmann und Torsten Schrade. Mainz, Akademie der Wissenschaften und der Literatur,
Version 1 vom 16. Jul. 2018.
URI:
https://sturm-edition.de/id/S.0000030
Versionen:
https://sturm-edition.de/id/S.0000030/1 (16. Jul. 2018)
Nutzungshinweis:
Edition und Forschungsdaten stehen unter einer Creative Commons Attribution 4.0 International (CC-BY 4.0) Lizenz.
Freie Verwendung unter Angabe von Zitierhinweis, Permalink und Kenntlichmachung von Änderungen.