Modul: Text & Tabellen
Website: | ORCA.nrw |
Kurs: | Grundwissen: Datenmanagement in Studium & wissenschaftlicher Praxis |
Buch: | Modul: Text & Tabellen |
Gedruckt von: | Gast |
Datum: | Freitag, 22. November 2024, 15:01 |
Über dieses Modul
Hier erfahren Sie etwas über die Auszeichnungssprache XML, das Text- und Metadatenformat TEI, die Büroanwendungsformate OOXML (*.docx für Textdokumente, *.xlsx für Tabellendokumente) und ODF (*.odt für Textdokumente, *.ods für Tabellendokumente).
- Texte und Tabellen im Web
- Tabellenformat CSV
Lernziel (Wissen): Die Studentinnen und Studenten kennen einige im Forschungsbereich weit verbreitete Textformate
Lernziel (Verstehen): Die Studentinnen und Studenten können ein für den jeweiligen Zweck zumindest grundsätzlich geeignetes Textformat auswählen.
Lernziel (Verstehen): Die Studentinnen und Studenten können eine Reihe häufig vorkommender Fehler im Zusammenhang mit Textdaten vermeiden.
Bearbeitungsdauer: ≈ 60 Min.
Warum gibt es so viele Textformate?
Auf den ersten Blick ist die Vielfalt der Textformate vielleicht verwirrend, aber es gibt nun einmal mehrere, ganz unterschiedliche Verwendungszwecke für Text und viel Auswahl bei der Software. Hier werden einige wenige Formate vorgestellt, die in der Forschung weit verbreitet sind. Die Tabelle gibt eine Übersicht.
Zweck | Format | Dateiendung |
Beforschung von Text |
TEI (Text Encoding Initiative) |
.tei |
Austauschformate für Textverarbeitungsprogramme |
OOXML, ODF |
.docx, .odt |
Dokumentation und Archivierung |
PDF/A | |
Web-Seiten | HTML (HyperText Markup Language) |
.html, .htm |
Mit TEI, OOXML und ODF sind gleich drei Formate dabei, die den XML-Regeln folgen. Deshalb soll am Anfang eine Einführung in XML (Extensible Markup Language) stehen.
XML (Extensible Markup Language)
Eine Markup Language (deutsch Auszeichnungssprache) ist eine maschinenlesbare Sprache für die Gliederung und Formatierung von Texten und anderen Daten (Wikipedia, 2024). Strukturelemente sind in Auszeichnungssprachen gekennzeichnet. Beispielsweise wird in den Textformaten HTML und TEI ein neuer Absatz mit dem Tag <p> eingeleitet. Das p steht dabei für "paragraph" oder "prose".
XML ist eine Auszeichnungssprache 2. Stufe in dem Sinne, dass XML anderen Auszeichnungssprachen einige grundsätzliche Regeln vorgibt. Beispielsweise fordert XML, dass es zu jedem Start-Tag ein End-Tag gibt. In TEI, das auf XML basiert, muss also nicht nur der Anfang eines Absatzes gekennzeichnet sein, sondern auch dessen Ende.
Das Konstruktionsprinzip ähnelt der Kennzeichnung von Siedlungen an überörtlichen Straßen. Beginn und Ende von Siedlungen werden durch Ortsschilder kenntlich gemacht (Tello, 2011).
Sogar die diagonale Durchstreichung im Siedlungsende-Schild hat eine Entsprechung in XML in Form des Schrägstrichs im End-Tag.
HTML, das nicht auf XML basiert, stellt es hingegen frei, schließende Tags zu verwenden. Manchmal geht dadurch die Eindeutigkeit der Textstruktur verloren. Web-Browser stellen HTML-Seiten ohne schließende Tags dann nach internen Regeln dar.
XML ist da also strenger. XML-basierte Auszeichnungssprachen werden auch XML-Dialekte genannt. Die Abbildung zeigt eine Auswahl.
XHTML ist eine strengere Form von HTML und kodiert wie HTML Web-Seiten. Es wird aber zugunsten von HTML 5 nicht weiterentwickelt und läuft daher aus. In MathML lassen sich mathematische Formeln schreiben. XML kann auch in Sprachen verwendet werden, die keinen Text kodieren. Ein Beispiel hierfür ist das Vektorgrafikformat SVG (Scalable Vector Graphics).
Vorteile von XML
Außer den schon erwähnten gibt es noch sehr viel mehr XML-Dialekte und eigene zu entwickeln ist jederzeit möglich. Den hohen Verbreitungsgrad verdankt XML einer Reihe von Vorteilen, von denen die wichtigsten in der nächsten Abbildung zusammengestellt sind.Aufbau eines XML-Dokuments
Am Anfang eines XML-Dokuments steht zumeist ein Prolog. Im XML-Beispiel unten ist der Prolog in weißer Schrift hervorgehoben.
Dem Prolog folgen das Wurzelelement (rot) und darunter alle anderen Elemente. Diese anderen Elemente sind alle Kindelemente oder Kindeskinder des TEI-Wurzelelements und der besseren Lesbarkeit wegen eingerückt.
Merke! In jedem XML-Dokument muss es genau ein Wurzelelement geben.
Der Prolog hingegen kann mehrere gleichrangige Bestandteile enthalten. Im Beispiel besteht der Prolog aus drei Zeilen.
Zeile 1: Die XML-Deklaration kennzeichnet die Datei als XML-Dokument und hilft so Verwechslungen zu vermeiden.
- Im Beispiel ist als Version 1.0 angegeben. Daneben gibt es noch die Version 1.1, die mehr Sonderzeichen in Elementnamen erlaubt und nur selten verwendet wird
- Die Versionsnummer ist in Form eines Attributs beigegeben. Attribute haben die Form Name="Wert" (hier Version="1.0")
Zeile 2: In der Dokumenttyp-Deklaration (DTD) stehen
- der Name des deklarierten Typs, im Beispiel tei
- ob die DTD öffentlich ist (PUBLIC für öffentlich, SYSTEM für nicht öffentlich)
- die Elementdeklarationen (welche Elemente es gibt und für jedes Element, welche Kindelemente das Element haben muss bzw. darf)
- die Attributlistendeklationen (Attributnamen, zulässige Werte, und ob das Attribut erforderlich ist oder weggelassen werden kann)
- Entities (Texte für automatische Ersetzungen)
Im Beispiel sind die drei letzten Punkte in einen File tei_all.dtd ausgelagert, der lokal unter Windows auf Laufwerk D: im Verzeichnis tei gespeichert ist. Anstelle eines Files könnte hier auch eine Web-Adresse angegeben sein.
Zeile 3: Die Verarbeitungsanweisung xml-stylesheet gibt an, wie die Elemente grafisch dargestellt werden sollen. Die Regeln selbst sind im Beispiel in einen XSL-File (Extensible Stylesheet Language) ausgelagert. XSL ist übrigens selbst XML, d.h. gehorcht der XML-Syntax.
Merke! XML-Elemente sind stets hierarchisch strukturiert, d.h. an oberster Stelle steht ein Wurzelelement und sie können beliebig viele Kindelemente, aber nur ein Elternelement haben. Gekennzeichnet werden die Elemente durch Tags:
- Jedes Element hat ein Start-Tag und ein End-Tag, das von spitzen Klammern umschlossen wird. Das End-Tag besitzt zusätzlich einen Schrägstrich: </...>
- In jedem Tag muss ein Elementname vergeben sein. Der Elementname im Start-Tag muss immer exakt mit dem Elementnamen im End-Tag übereinstimmen. Groß- und Kleinschreibung im Namen sind signifikant
- Für leere Elemente können Start- und End-Tag zusammengefasst werden zu <.../>, d.h. vor der schließenden Spitzklammer steht ein Schrägstrich. Ein Beispiel ist das Element <empty/>, das zur Markierung leerer Elemente im TEI-Quelltext verwendet wird.
Ein Element kann leer sein oder Inhalt enthalten. Aber selbst mit Inhalt darf sich ein Element nicht über das End-Tag seines Elternelements hinaus erstrecken, sondern muss schließen, ehe das Elternelement schließt.
Das Beispiel oben erfüllt diese und alle übrigen XML-Regeln. Das Diagramm zeigt die hierarchische Struktur der Elemente des Beispiels als Baum.
Ein TEI-Dokument besteht aus einem Wurzelelement TEI, das sich in einem Header und einen Text-Body gliedert. Darunter befinden sich weitere Elemente.
Die Baumstruktur ergibt sich daraus, dass jedes Element genau ein Elternelement hat. Ausgenommen ist nur das Wurzelelement, welches wie ein Stamm den ganzen Baum trägt.
Wohlgeformtheit und Gültigkeit
Wie schon angedeutet, besitzt XML mehrere Regelsätze, die sich ergänzen. Es gibt zwei Stufen der Konformität mit den XML-Standards des World Wide Web Consortiums (W3C):
- Wohlgeformtheit:
Die Wohlgeformtheitsregeln gelten unabhängig vom Vorhandensein eines Dokumentenschemas (Dokumenttyp-Deklaration o.ä.). Diese Regeln sind sozusagen übergeordnet. Sind sie erfüllt, ist das XML-Dokument wohlgeformt. Zur Wohlgeformtheit gehört beispielsweise, dass- die Elemente — wie auch immer sie aussehen — eine Baumstruktur besitzen, d.h. das Dokument besitzt genau ein Wurzelelement und jedes andere Element hat genau ein Elternelement
- alle Elemente ein Start- und ein End-Tag besitzen
- ein Element nicht mehrere Attribute mit demselben Namen besitzen darf
- Attribut-Werte in Anführungszeichen oder Hochkommata stehen (Durch Klammerung in Hochkommata kann das Anführungszeichen als Zeichen verwendet werden und umgekehrt. So wird beispielsweise die Verwendung der Längeneinheit Zoll in Attributen möglich: width='3.5"')
-
Gültigkeit (Validität):
Ein XML-Dokument ist gültig, wenn- es wohlgeformt ist
- ein Verweis auf ein Dokumentenschema vorhanden ist
- das Schema eingehalten wird
Um zu prüfen, ob ein XML-Dokument wohlgeformt ist, kann beispielsweise Code Beautify verwendet werden. Das kann von Nutzen sein, wenn Sie mit einem einfachen Texteditor arbeiten. XML-Editoren zeigen die Wohlgeformtheit bereits direkt im Editorfenster an.
Schemasprachen
Die Dokumenttyp-Deklaration (DTD) ist die älteste Form, Grammatikregeln für eine XML-Auszeichnungssprache festzulegen, aber nicht die einzige. Die neueren XML-Schemasprachen XML Schema, Schematron und RELAX NG helfen vor allem Entwicklern. Aber auch wenn keine Neuentwickung oder Erweiterung der Sprache stattfindet, bieten sie Vorteile, da sie hierarchische XML-Namensräume unterstützen.
Das Beispiel oben enthält nur Text. Wie aber können wir Texte in XML codieren, die beispielsweise mathematische Formeln und Vektorgrafiken enthalten? Dafür müssten wir TEI, MathML und SVG im selben XML-Dokument verwenden können. Das ist mit hierarchischen Namensräumen möglich. Deren Einzelräume werden mit dem XML-Namespace-Attribut xmlns deklariert. Beispiel für ein TEI-Wurzelelement, in dem auch SVG genutzt werden soll:
<TEI xmlns="http://www.tei-c.org/ns/1.0"
xmlns:tei="http://www.tei-c.org/ns/1.0"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="...">
Das Attribut xsi:schemaLocation erwartet zwei Einträge, getrennt durch ein Leerzeichen: Namensraum-URL und Schemadatei als URL. In der Folge können beide Namensräume genutzt werden, indem der Name des Namensraums als Präfix verwendet wird. Das ist selbst dann möglich, wenn es übereinstimmende Elementnamen in den Einzelräumen gibt.
Beispiel: TEI und SVG haben beide ein Element text. Mit
<tei:text> ... </tei:text>
und
<svg:text> ... </svg:text>
können beide zuverlässig auseinander gehalten werden. Der Doppelpunkt ist das Trennsymbol zwischen Namensraumname und Elementname und für diesen Zweck reserviert. Im Beispiel-Wurzelelement ist TEI zudem als Default festgelegt (über das xmlns-Attribut ohne Namensraumkürzel).
Info! Die URL im xmlns-Attribut muss nicht existieren. Entscheidend sind viel mehr zwei Voraussetzungen:
- Die URLs in den xmlns-Attributen unterscheiden sich
- XML Schema, Schematron oder RELAX NG wird verwendet
Über das Glossar sind weiterführende Informationen zur Extensible Markup Language verlinkt.
TEI
TEI (Text Encoding Initiative) hat sich als Organisation 1987 gegründet und arbeitet fortwährend an einem Standard für die Repräsentation von Texten. Wichtigstes Ergebnis ist das Dokumentenformat gleichen Namens. Seit Version P4 ist TEI XML-Dialekt. Die allgemeinen Aspekte von TEI lassen sich wie folgt zusammenfassen: (TEI P5, 2023)
- TEI ist ein Dokumentenformat mit Fokus auf linearem Text. In vielen Geisteswissenschaften ist TEI sogar Standardformat für Texte
- Strukturen im Text können gekennzeichnet werden, denn TEI ist eine Auszeichnungssprache. Zu diesem Zweck stehen zahlreiche Elemente zur Verfügung, darunter auch spezielle für Grammatik, Linguistik, Aufführungstexte und Lyrik. Dadurch eignet sich TEI besonders gut für die Beforschung von Texten, insbesondere in den Geisteswissenschaften. Die naturgetreue Darstellung ist dagegen nicht das Ziel von TEI. Für diesen Zweck eignen sich Bildformate oder PDF besser
- Hunderte von Header-Elementen können beschreibende Daten zum Text aufnehmen. TEI wird dadurch auch zum Metadatenstandard
- Als Auszeichnungssprache auf Basis von XML ist TEI Software-unabhängig
- Wie alle XML-Dateien ist TEI UTF-8-kodiert. Das ist zumindest die Voreinstellung. Da TEI nicht gepackt wird, ist es mit einem einfachen Texteditor, wie z.B. Notepad unter Windows, lesbar
TEI-Grundaufbau: TEI-Header + Text.
Der Header sollte Metadaten zum Text enthalten. Jedes TEI-Dokument muss einen Header besitzen. Im Beispiel sind nur die Pflichtelemente vorhanden. Alle Pflichtelemente sind Kindelemente von fileDesc:
titleStmt | Title Statement mit Kindelement title für den Titel |
---|---|
publicationStmt | für die Nennung des Verlags oder Distributors und für Informationen über die Art und Weise der Bereitstellung, wie z.B. Lizenzbedingungen, Identifikationsnummern usw. |
sourceDesc | für die Beschreibung der Quellen, aus denen der Text abgeleitet ist, häufig eine bibliografische Beschreibung. Im Beispiel wurde die Standardfloskel "Born digital" benutzt, die ausdrücken soll, dass es keine Vorlage gibt und der Text bereits digital entstanden ist. |
TEI stellt zahlreiche weitere Header-Elemente zur Verfügung, die folgendermaßen gegliedert sind:
fileDesc | Eine Dateibeschreibung, die eine komplette bibliografische Beschreibung des Files selbst enthält |
---|---|
encodingDesc | Eine Kodierungsbeschreibung, die Methoden und redaktionelle Grundsätze beschreibt |
profileDesc | Nicht-bibliographische Aspekte des Texts, z.B. Sprache, Teilnehmende, Umstände der Entstehung |
xenoData | Ein Container-Element, das die Einbindung von Metadaten aus Nicht-TEI-Schemata ermöglicht |
revisionedDesc | Eine Versionsinformation, die es dem Kodierer ermöglicht, eine Historie der vorgenommenen Änderungen zu erstellen |
Auch für die Auszeichnung von Text stehen eine Fülle von Elementen zur Verfügung. Schon die TEI-Dokumentation ist über 2000 Seiten lang. (TEI P5, 2023)
ToDo: Fehlersuche
Fehler in Forschungsdaten zu suchen ist Forschungsalltag und Teil des Forschungsdatenmanagements. Unterschieden werden wissenschaftliche und technische Qualitätssicherung. Die Überprüfung der wissenschaftlichen Korrektheit gehört zur wissenschaftlichen Qualitätssicherung. Bei der technischen Qualitätssicherung sollte mindestens auf
- Gültigkeit (Einhaltung) des Daten- und Metadatenformats
- Nicht erlaubte Werte bei Zahlen
- Vollständigkeit der Daten und Metadaten
geprüft werden.
Info! Ein händische Prüfung ist oft mühsam, vielleicht sogar schon in der kleinen Übung unten. Für die Formatvalidierung wird daher üblicherweise Software eingesetzt. Das dürfen Sie hier und im Abschlussquiz auch tun. Es gibt mehrere Möglichkeiten:
- XML-Editoren: Für die meisten muss eine Lizenz kostenpflichtig erworben werden. Installation oder Anmeldung erforderlich. Teils gewöhnungsbedürftig
- TextGrid: Virtuelle Forschungsumgebung optimiert für XML/TEI mit Repositorium und zahlreichen Tools. Für Forschende der Geisteswissenschaften ist TextGrid daher weit mehr als "nur" ein XML-Editor. Anmeldung erforderlich. Client muss installiert werden. Bevor mit der Arbeit begonnen werden kann, muss ein "Projekt" erzeugt werden. Entgeltfrei. Ohne Werbung
- Code Beautify arbeitet im Browser-Fenster. Keine Anmeldung und Installation erforderlich. Findet nicht jeden Fehler. Entgeltfrei. Werbung
- Web-Browser: Einfach XML-Datei ins Browser-Fenster ziehen. Manche müssen auf Quellcode-Anzeige umgeschaltet werden. Finden nicht jeden Fehler
In der grauen Box befindet sich ein XML/TEI-Dokument mit zwei Fehlern, die das XML nicht wohlgeformt bzw. ungültig werden lassen.
<?xml version="1.0"?> <!DOCTYPE tei SYSTEM "https://tei-c.org/release/xml/tei/custom/schema/dtd/tei_all.dtd"> <?xml-stylesheet type="text/xsl" href="file:///D:/tei/html/html.xsl?> <TEI> <teiHeader> <fileDesc> <titleStmt> <title>Einfaches XML/TEI-Beispiel</title> <author> <surname>Rathmann</surname> <forename>Torsten</forename> </author> </titleStmt> <sourceDesc> <p>Born digital</p> </sourceDesc> </fileDesc> </teiHeader> <text> <body> <p>Als Auszeichnungssprache auf Basis von XML ist TEI Software- und Hardware-unabhängig.</p> <p>Da TEI nicht gepackt ist, ist es mit einem einfachen Texteditor, wie z.B. Notepad unter Windows, lesbar.</p> </body> </text> </TEI>
.docx, OOXML, .odt und ODF
Alle wichtigen Textverarbeitungsprogramme können Dokumente als .docx (Word-Datei) und als .odt (OpenDocument Text) einlesen und abspeichern. Auch die basieren auf XML. Vermutlich haben Sie sich bei der Arbeit mit Textverarbeitungsprogrammen aber noch nie mit der Auswahl von XML-Elementen und der Gültigkeit Ihrer Dokumente auseinandersetzen müssen, denn das nimmt Ihnen das Textverarbeitungsprogramm vollständig ab.
Merke! .docx und .odt sind nur eine Seite zweier umfassender Büroanwendungsformate, in denen u.a. auch Tabellendokumente (Spreadsheets) und Präsentationen gespeichert werden können. Diese umfassenden Büroanwendungsformate heißen OOXML und ODF und sind in der folgenden Tabelle gegenübergestellt.
OOXML (Office Open XML oder OASIS Open XML) | ODF (OpenData Format) | |
---|---|---|
Dateiendung für Text | .docx | .odt |
Dateiendung für Tabellen (Spreadsheets) | .xlsx | .ods |
Dateiendung für Präsentationen | .pptx | .odp |
Spezifikation | offen | |
Zur internationalen Norm erhoben durch | ISO (Internationale Organisation für Normung), OASIS (Organisation for the Advancements of Structured Information Standards), ecma (Industry association for standardizing information and communication systems) |
ISO, OASIS |
Aufbau | Unterdateien in zip-Container | |
Kodierung | nicht standardtextkodiert |
|
Entwickelt durch |
Microsoft | Sun Microsystems |
Sowohl OOXML als auch ODF sind Containerformate auf Basis von zip, liegen also komprimiert vor. In dem Container befinden sich Unterdateien (in der Microsoft-Welt "Parts" genannt), aus denen das Dokument, die Tabelle oder die Präsentation zusammengesetzt ist. Neben XML-Dateien für Text, Tabellen, Präsentationen, mathematische Formeln und Vektorgrafiken können das beispielsweise Pixelgrafiken sein. Pixelgrafikformate sind zwar keine XML-Auszeichnungssprachen, können aber dank der Containertechnik einfach mit eingepackt werden. Dass aus vielen solcher Unterdateien durch das Packen nur eine Datei wird, fördert die Übersicht bei der Arbeit und verringert zudem noch das Datenvolumen durch Kompression.
Die Kompression von XML im .docx oder .odt hat die skurrile Folge, dass diese — obwohl Textformate — nicht zeichenkodiert sind. Das liegt daran, dass bei der Kompression häufig vorkommende Zeichenfolgen zusammengefasst als abgekürzte Bitfolge gespeichert werden. Ein Wörterbuch dieser Bitfolgen wird mitgespeichert, aber welche Bitfolge für was verwendet wird, hängt vom gesamten Text ab. Bei Zeichenkodierung ist hingegen jedes Zeichen einzeln und einheitlich kodiert, unabhängig davon, was im Text sonst noch vorkommt.
Merke! Aufgrund der weiten Verbreitung haben sich OOXML und ODF zu wichtigen Austauschformaten für Textdokumente entwickelt. Für die Langzeitarchivierung wird dennoch PDF/A bevorzugt, da nicht gesichert ist, dass die als .docx und .odt gespeicherten Texte mit jedem Textverarbeitungsprogramm und in aller Zukunft immer gleich angezeigt werden. Schlimmer noch: Es gab Fälle, in denen sich ältere Dateien nicht mehr lesen ließen. Das kann daran liegen, dass im Container auch Komponenten gespeichert werden können, die proprietär sind und sich dann mit späteren Versionen von Textverarbeitungsprogrammen nicht immer lesen lassen.
Wenn mit der Datenveröffentlichung das Ziel verbunden ist, Texte in leicht editierbarer Form zur Verfügung zu stellen, sollten .docx- oder .odt-Dateien zusätzlich zu PDF/A beigelegt werden.
Merke! Bilddaten, die selbst wichtige Forschungsdaten sind, sollten darüber hinaus auch als Grafikdatei im Originalformat bereitgestellt werden, denn bei der Speicherung im OOXML, ODF oder PDF kommt es möglicherweise zu Qualitätseinbußen und Informationsverlust. Beispielsweise können Bilddaten textuelle Zusatzinformationen (Metadaten im Datei-Header) enthalten, die dann oft verlorengehen.
Auslaufende Dokumentenformate, wie z.B. der .docx-Vorläufer .doc, sind für die Archivierung nicht geeignet.
Die größte Stärke der Seitenbeschreibungssprache PDF (Portable Document Format) ist die originalgetreue Dokumentenausgabe. Die Ausgabe ist betriebssystem- und geräteunabhängig, gleich ob auf einem Bildschirm oder einem Drucker. Das "Portable" im Namen weist auf diese Portierbarkeit der PDF-Dateien von einem System zum anderen hin.
Wie alle ausgabeorientierten Dokumentenformate ist PDF tief gegliedert in Boxen (Rechtecke). Die Komplexität des Aufbaus erschwert das Editieren erheblich. Veränderungen in PDF-Dateien sind daher umständlich und erfordern zusätzliche Software wie Adobe Acrobat. Aber leichte Editierbarkeit ist auch nicht die Intention von PDF, sondern die betriebssystem- und geräteunabhängige Dokumentenausgabe. Position und Größe der Boxen hängen nur vom auszugebenden Dokument ab. Voreinstellungen am Drucker und im Browser werden bei der Ausgabe hingegen ignoriert. Lediglich die Gesamtgröße der Seite wird angepasst, z.B. an das Papierformat oder die Fenstergröße. Bei einer solchen Größenanpassung werden alle Boxen gleichmäßig ("proportional") skaliert. Die Darstellung bleibt dadurch so originalgetreu wie nur möglich.
Auch PDF ist ein Containerformat. Grafiken und Multimedia-Elemente können wahlweise in der PDF-Datei gespeichert oder aus einer externen Datei geladen werden. Ebenso können die im Dokument verwendeten Schriftarten eingebunden oder von extern geholt werden. Für Dokumente, die originalgetreu sein sollen, sollten alle Schriftarten eingebunden sein, denn wenn eine Schrift weder eingebunden ist noch extern geladen werden kann, wird eine Ersatzschrift verwendet und das Aussehen des Dokuments ist dann doch verändert.
Auf Basis von PDF sind zwei wichtige spezifische Formate definiert:
PDF/A (PDF for Archive) | für die Langzeitarchivierung |
PDF/X (Xchange) | hauptsächlich für Druckvorstufen, manchmal aber auch für die Archivierung |
Von beiden gibt es mehrere Versionen bzw. Unterformate. Die PDF/A-Unterformate unterscheiden sich jedoch nicht wesentlich.
Merke! Allen PDF/A-Versionen ist gemeinsam, dass
- alle Schriftarten und Abbildungen, die im Dokument verwendet werden, eingebunden sind
- Animationen, Videos und andere Elemente, die auf externe Software zugreifen, nicht eingebunden sind
- Farben im Farbraum des Ausgabegeräts so gewählt werden, dass sie der Farbe im Dokument möglichst nahekommen
- die Verwendung von Kryptofunktionen (Verschlüsselungen) nicht erlaubt ist. Mit Krypofunktionen kann der Druck oder der Zugang zu Teilen des Dokuments unterbunden werden. Bei einer Archivierung ist dies jedoch unerwünscht.
Die meisten Institutionen fordern als Dokumentenformat PDF ohne Verschlüsselungen und empfehlen PDF/A für die Langzeitarchivierung. Für die Empfehlung gibt es gute Gründe. Tatsächlich sind aus externen Dateien eingelesene Schriftarten ein echtes Problem, wenn die externe Datei fehlt. Schriftarten sollten immer eingebunden werden. Verschlüsselte und teilverschlüsselte Dokumente sind für die Archivierung unbrauchbar.
HTML
Wikipedia definiert HTML (HyperText Markup Language) als...
...eine textbasierte Auszeichnungssprache zur Strukturierung elektronischer Dokumente wie Texte mit Hyperlinks, Bildern und anderen Inhalten. HTML-Dokumente sind die Grundlage des World Wide Web und werden von Webbrowsern dargestellt. (Wikipedia, 2023)
HTML hat im Forschungsdatenmanagement an zwei Stellen Bedeutung: Zum einen sind Web-Seiten Forschungsgegenstand und damit auch Forschungsdaten, vor allem in den Kultur- und Sozialwissenschaften. Zum anderen sind fast alle Forschungsdatenrepositorien Web-Dienste, die nicht nur nackte Daten, sondern auch HTML-Seiten ausgeben. Häufig haben Forschende die Möglichkeit, eine Beschreibung des Forschungsprojektes bzw. der Sammlung zu ergänzen. Dies geschieht nicht selten über Online-Formulare, die HTML akzeptieren. Beides sind gute Gründe, sich zumindest oberflächlich mit HTML zu befassen.
HTML folgt zwar nicht den strengen XML-Regeln, besitzt als Auszeichnungssprache aber doch Elemente, die durch Tags eingeleitet werden. Beispielsweise wird ein neuer Absatz durch <p> eingeleitet. p steht dabei für paragraph. Gutes HTML sollte aber möglichst auch ein End-Tag enthalten.
HTML ist zeichenkodiert, kein Containerformat. Nur einige wenige andere Formate können direkt in einer HTML-Datei mit enthalten sein, z.B. das Vektorgrafikformat SVG und MathML für mathematische Formeln. Für Rastergrafiken und andere nicht zeichenkodierte Objekte trifft das definitiv nicht zu. Solche Objekte müssen separat als Datei oder URL zugreifbar sein. Im HTML sind sie nur verlinkt. Über Dateinamen und eine sinnvolle Verzeichnisstruktur sollte man sich rechtzeitig Gedanken machen.
Hyperlink und URL
Auch der Namensgeber von HTML, der Hyperlink (Web-Link), wird durch ein Tag eingeleitet:
<a href="..." target="_blank">blau hervorgehobener und anklickbarer Linktext</a>
Das Attribut href enthält die Zieladresse des Links. Durch Mausklick auf den blau hervorgehobenen Linktext gelangt man auf die verlinkte Seite. Das optionale Attribut target="_blank" bewirkt, dass die verlinkte Web-Seite in einem neuen Tab des Browsers geöffnet wird. Falls es weggelassen wird, wird die Zielseite des Links im selben Tab geöffnet.
Ins Hyperlink-Tag wird die Zieladresse als URL (Uniform Resource Locator) eingetragen. Beispiel:
<p>HTML-Grundlagen und -Nachschlagewerk:
<a href="https://wiki.selfhtml.org" target="_blank">selfhtml</a>
</p>
Dies wird im Browser dargestellt als
HTML-Grundlagen und -Nachschlagewerk: selfhtml
Der Link führt übrigens zu selfhtml, einem deutschsprachigen Wiki, das sich sowohl an HTML-Anfänger als auch an Fortgeschrittene richtet und so ziemlich alles zum Thema enthält.
Und so sehen URLs aus, die beliebige Seiten aus dem Verzeichnisbaum anfordern, Zeichenketten suchen und ein Seitenfragment ausgeben:
Beispiele:
https://wiki.selfhtml.org/wiki/HTML | URL mit Angabe eines Verzeichnisses |
https://publicdata.fdm.uni-wuppertal.de/search?query=Industrial+Printing | Suche nach "Industrial Printing" in den Metadaten des Forschungsdatenrepositoriums der Universität Wuppertal. Leerzeichen sind nicht erlaubt. Stattdessen wird das Pluszeichen benutzt. |
https://de.wikipedia.org/wiki/Hypertext_Markup_Language#Syntax | Anforderung des Seitenfragments ab dem Anker "Syntax" |
Neben der URL für Web-Seiten gibt es noch weitere URL-Formen. Hier ist eine kleine Auswahl:
mailto:support@example.com | öffnet den Standard-Mail-Client zum Verfassen einer E-Mail mit support@example.com als Empfänger |
file:///D:/verzeichnis/filename.abc | versucht die Datei filename.abc auf dem lokalen Rechner von Laufwerk D: und dem angegebenen Verzeichnis zu holen und im Browser zu öffnen. Die Laufwerksangabe ist Windows-spezifisch und wird unter Linux fortgelassen. |
Sonderzeichen
<, >, " und & sind reservierte Zeichen im HTML. Sie erscheinen nur im Text, wenn sie mit ihrem Zeichennamen aufgerufen werden (eingeleitet durch "&" und abgeschlossen durch ";"). Quelltext-Beispiel mit einem Ja in Anführungszeichen:
Seine Antwort war "Ja".
Zeichen | Beschreibung | Name in HTML |
---|---|---|
< | kleiner als (less than) | < |
> | größer als (greater than) | > |
" | Anführungszeichen | " |
& | kaufmännisches Und (ampersand) | & |
Alle anderen Sonderzeichen können direkt verwendet werden. Falls der Zeichensatz einmal nicht auf UTF-8 eingestellt sein sollte, hier eine kleine Auswahl weiterer benannter Zeichen:
Zeichen | Beschreibung | Name in HTML |
---|---|---|
|
festes Leerzeichen |
|
ä |
a-Umlaut |
ä |
ö |
o-Umlaut |
ö |
ü |
u-Umlaut | ü |
Ä |
A-Umlaut |
Ä |
Ö |
O-Umlaut |
Ö |
Ü |
U-Umlaut | Ü |
ß |
scharfes s (sz-Ligatur) |
ß |
— |
Gedankenstrich der Breite m |
— |
· |
multipliziert mit (Punkt in der Mitte) |
⋅ |
© |
Copyright | © |
® |
eingetragene Marke |
® |
Listen
Nummerierte Listen werden mit dem Tag <ol> eingeleitet (für "ordered list"). Ein Listeneintrag ist mit <li> gekennzeichnet. Beispiel:
<ol>
<li>Listeneintrag 1</li>
<li>Listeneintrag 2</li>
</ol>
Dargestellt wird das in Ihrem Web-Browser so:
- Listeneintrag 1
- Listeneintrag 2
Unnummerierte Listen werden mit <ul> eingeleitet. Beispiel:
<ul>
<li>Listeneintrag 1</li>
<li>Listeneintrag 2</li>
</ul>
Voreingestellt ist hierfür eine Darstellung mit Bullet Points:
- Listeneintrag 1
- Listeneintrag 2
Unterlisten sind möglich, d.h. Listen können verschachtelt werden. Beispiel:
<ul>
<li>Listeneintrag 1</li>
<li>Listeneintrag 2
<ul>
<li>2a</li>
<li>2b</li>
</ul>
</li>
</ul>
Das wird in Ihrem Web-Browser dargestellt als
- Listeneintrag 1
- Listeneintrag 2
- 2a
- 2b
Tabellen
HTML-Tabellen werden durch das Tag <table> eingeleitet. Struktur und Inhalte befinden sich innerhalb dieses Tabellenelementes.
HTML-Tabelle als Baumstruktur
Der Tabellenkopf wird in Fettschrift ausgegeben, wenn nichts anderes eingestellt ist. Die Zeilen- und Zellenelemente können selbstverständlich mehrfach vorhanden sein. Beispiel:
<table>
<caption>Tabellenüberschrift</caption>
<thead>
<th>11</th>
<th>12</th>
<th>13</th>
</thead>
<tbody>
<tr>
<td>21</td>
<td>22</td>
<td>23</td>
</tr>
<tr>
<td>31</td>
<td>32</td>
<td rowspan="2">33 und 43 verbunden</td>
</tr>
<tr>
<td colspan="2">41 und 42 verbunden</td>
</tr>
</tbody>
</table>
Das Attribut rowspan verbindet untereinander stehende Zellen miteinander, colspan nebeneinander stehende. Der Wert dieser Attribute gibt an, wie viele Zellen verbunden werden sollen; im Beispiel sind das jeweils zwei. Das wird wie folgt dargestellt:
|
Wie Design und Lesbarkeit verbessert werden können, erfahren Sie auf der nächsten Seite.
CSS
Frühe HTML-Versionen haben Inhalt und Design zusammengefasst. Das hat den Nachteil, dass jede einzelne Web-Seite angefasst werden muss, wenn das Design einmal angepasst werden muss. Auch bei den von Forschungsdatenrepositorien erzeugten Web-Seiten ist die Trennung von Inhalt und Design die Regel. Beispielsweise werden für die Landungsseite (landing page) eines Datensatzes Metadaten und vielleicht Previews der Daten oder ein Logo aus einer Datenbank geholt und von der Repositoriums-Software zu einer Web-Seite zusammengesetzt und verschickt. Die Seite ist in der Regel also nicht fertig zusammengesetzt irgendwo gespeichert, sondern dynamisch, d.h. wird zur Laufzeit erzeugt. Wäre das Design nicht als Stylesheet-Datei verfügbar, müsste es mit in die Software integriert werden mit der Folge, dass bei jeder kleinen Design-Änderung die Software überarbeitet werden müsste. Das wäre grotesk umständlich.
Stattdessen wird die Design-Information in einer Stylesheet-Datei für alle Seiten zusammengefasst. Bei einer Design-Änderung muss dann im Idealfall nur diese eine Datei angepasst werden.
Eine Sprache, die mit HTML, TEI und dem Vektorgrafikformat SVG kombinierbar ist, ist CSS (Cascading Style Sheets). Das "Cascading" im Namen hat seinen Ursprung darin, dass nacheinander
- eine externe Stylesheet-Datei
- Style-Element im Head
- Style-Attribute der Elemente des Textteils
eingelesen werden. Dabei besitzt die zuletzt eingelesene Regel Vorrang.
Angenommen wir wollen die HTML-Tabelle von oben folgendermaßen darstellen:
|
Wenn das Design im Head stehen soll, erweitern wir die HTML-Datei um einen Header mit Style-Element und schreiben die Style-Regeln dort hinein:
<html> | HTML-Kennung |
<head> | Beginn Head |
<title>Seitentitel</title> | wird nicht dargestellt |
<style type="text/css"> | Beginn Style-Element |
caption { font-size: medium; } | Tabellenüberschrift in normal großer Schrift |
th {background-color: lightgrey; } |
unterlegt die Zellen des Tabellenkopfes hellgrau |
td, th { padding: 0.3em; | erzeugt einen Rand der Breite 0.3 em |
border: thin solid black; | umrandet die Zelle mit einer dünnen, durchgezogenen, schwarzen Linie |
text-align: center; } | Text zentriert |
table { border-collapse: collapse; } | verschmilzt die separaten Kästen um die Zellen zu einer Begrenzungslinie |
</style> | Ende Style-Element |
</head> | Ende Head |
<body> | Beginn Textteil |
<table>
<caption>Tabellenüberschrift</caption> <thead> <th>11</th> <th>12</th> <th>13</th> </thead> <tbody> <tr> <td>21</td> <td>22</td> <td>23</td> </tr> <tr> <td>31</td> <td>32</td> <td rowspan="2">33 und 43 verbunden</td> </tr> <tr> <td colspan="2">41 und 42 verbunden</td> </tr> </tbody> </table> |
Tabelleninhalte von einer Seite zurück |
</body> | |
</html> |
Eine Style-Regel nennt mindestens einen Selektor oder eine Liste von Selektoren, auf die sich die Regel auswirken soll, gefolgt von mindestens einer Deklaration in geschweiften Klammern. Beispiel:
Zwischen Eigenschaft und Wert muss immer ein Doppelpunkt stehen. Innerhalb der geschweiften Klammern können mehrere Deklarationen stehen, die durch Semikolons getrennt sind.
In einer Liste von Selektoren sind die einzelnen Selektoren durch Kommas getrennt. Selektoren sind meist Elementnamen. Es gibt aber auch spezielle Selektoren, die standardmäßig mehrere Elemente umfassen oder aktionsbezogen sind. Ein Beispiel ist :hoover, das Element, über dem gerade der Mauszeiger steht.
Style-Regeln können — wie schon erwähnt — auch aus einer externen Datei gelesen werden. Im Head der HTML-Datei steht dann der Link zur CSS-Datei:
<html>
<head>
<link rel="stylesheet" href="stylesheet.css">
...
Mit rel="stylesheet" wird angezeigt, dass ein Stylesheet importiert werden soll. href enthält die URL.
Wenn Sie selbst im Repositorium Einträge in HTML zu Ihren Daten vornehmen, werden Sie vermutlich nicht die Möglichkeit haben, die Stylesheet-Datei anzupassen. Und zum HTML-Head werden Sie in der Regel ebenso keinen Zugang haben. Was in dem Fall bleibt, sind Style-Attribute in den Elementen. Beispiel:
<caption style="font-size: medium;">Tabellenüberschrift</caption>
Tutorium und Nachschlagewerk zu CSS: unter selfhtml
ToDo
Die folgende Tabelle ist zwar inhaltlich korrekt, verwendet aber für die Rahmen um die Tabellenzellen ein veraltetes HTML-Attribut. Damit sind Inhalt und Design nicht sauber getrennt. Lassen Sie sich in Ihrem Browser den HTML-Code anzeigen und ersetzen Sie das veraltete HTML-Attribut durch CSS.
OOXML | ODF | PDF/A | HTML | TEI | ||
---|---|---|---|---|---|---|
Text | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Vektorgrafik | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Rastergrafik | ✔️ | ✔️ | ✔️ | ✔️ | ❌ | ❌ |
Video | ✔️ | ✔️ | ✔️ | ❌ | ❌ | ❌ |
Im Prinzip sollte einer eigenständigen CSS-Datei oder passenden Style-Elementen im HTML-Head der Vorzug gegeben werden, aber nicht immer ist das möglich. Repositorien erlauben das meist nicht, ebenso wenig wie die E-Learning-Plattform Moodle, mit der dieser Kurs erstellt wurde. Also bleiben in diesem Fall nur Style-Attribute im body des HTML.
Tabellendokumente
Neben Grafik und Text sind Tabellen, die mit Tabellenkalkulationsprogrammen wie z.B. Microsoft Excel erzeugt werden, wichtige Datenarten. Solche Tabellen werden in der Forschung häufig verwendet. Sie gehören in der Regel zu den Forschungsdaten, die im Rahmen der guten wissenschaftlichen Praxis mindestens 10 Jahre aufgehoben werden müssen. Das Video oder der nachfolgende Text geben Informationen zu Tabellendaten.
Unter den Tabellenkalkulationsprogrammen ist Microsoft Excel am verbreitetsten. Excel speichert Tabellen standardmäßig als .xlsx, das die tabellenkalkulationsspezifische Seite des Büroanwendungsformats OOXML ist. Ein Nachteil dabei ist, dass OOXML als Container-Format nicht zeichenkodiert und deshalb nur mit Software-Hilfe lesbar ist, sodass eine geeignete Software erhalten bleiben muss. Im Kern handelt es sich um das gleiche OOXML-Problem wie bei .docx auch: Der Container ist in der Lage, außer Tabellen auch andere Bestandteile wie Rastergrafiken aufzunehmen, deren Formate veralten können und dann nicht mehr lesbar sind.
Außerdem wurde .xlsx von Microsoft auf die spezielle Arbeitsweise von Excel zugeschnitten. Zwar können andere Tabellenkalkulationsprogramme .xlsx in der Regel auch lesen und schreiben, aber in der Interpretation der Details kann es Unterschiede geben. Daher bewertet die Informationsplattform „forschungsdaten.info“ .xlsx zwar als geeignet für die Speicherung im Rahmen der guten wissenschaftlichen Praxis, aber nicht für die Langzeitspeicherung über mehr als zehn Jahre hinaus.
Jedoch gibt es noch andere Formate, in denen Tabellen gespeichert werden können. Das Format Comma Separated Value, abgekürzt CSV, ist ein reines Textformat und als solches mit jedem Texteditor lesbar. Da es zudem weit verbreitet und langzeitstabil ist, ist es für die Langzeitarchivierung besonders gut geeignet. (Universität Konstanz, o.J.e)
Zum Aufbau:
- Eine Zeile in der Tabelle ist eine Zeile in CSV.
- Die Spalten innerhalb einer Zeile sind durch Separatoren (Trennsymbole) voneinander getrennt. Anders als der Name „Comma Separated Value“ suggeriert, muss das nicht zwangsläufig ein Komma sein. Voreinstellung ist meist ein Semikolon. Praxistipp: Wird stattdessen ein Tabulatorzeichen verwendet, stehen die Spalteneinträge geordnet untereinander, sofern die Einträge nicht sehr lang sind.
Hervorhebungen durch Farbe, Font, Kursivdruck, etc. gehen beim Export verloren. Wenn die Hervorhebungen mitgespeichert werden sollen, müssen sie in eine zusätzliche Spalte geschrieben und die so erweiterte Tabelle gespeichert werden. Im Video ist ein Beispiel gezeigt. Ebenfalls nicht mitkonvertiert werden Grafiken und Diagramme, die ebenfalls in XLSX enthalten sein können. Diese müssten gesondert als Grafiken gespeichert werden. Ansonsten schadet es nicht, zur CSV-Datei und den Grafiken die .xlsx-Datei einfach mit dazuzulegen.
ToDo
Die folgende Tabelle soll als CSV exportiert werden.
A | B | C | |
---|---|---|---|
1 | PDF/A | ||
2 | Schriftarten | sind eingebunden oder können aus einer anderen Quelle geladen werden | sind stets eingebunden |
3 | Abbildungen | sind eingebunden oder können aus einer anderen Quelle geladen werden | sind stets eingebunden |
4 | Animationen, Videos und andere Elemente, die auf externe Software zugreifen | können eingebunden sein; sie können aber auch aus einer anderen Quelle geladen werden | können nur aus einer anderen Quelle geladen werden |
5 | Verwendung von Kryptofunktionen | erlaubt, sodass Teile des Dokuments verschlüsselt sein können | nicht erlaubt |