Bücher, Netzwelt und Stimmen in meinem Kopf

Wer sich ein bisschen für E-Books interessiert, ist bestimmt schon über XML gestolpert. Es ist ein wichtiger Baustein für die Herstellung digitaler Inhalte im heutigen Verlagswesen. In den Praxis-Seminaren der Buchwissenschaft an der LMU schwören die Dozenten einheitlich auf XML als wichtige Grundlage für moderne Verlagsarbeit.

Wer sich hingegen etwas mit Programmierung auskennt und auch schon mit JSON gearbeitet hat,  setzt seit dem Lesen des vorangegangenen Absatzes schon einen wütenden Leserbrief auf, um mir klar zu machen, dass das Wort „modern“ und der Begriff „XML“ seit zehn Jahren nicht mehr im gleichen Satz verwendet werden sollten. Euch sage ich: Besser nicht hinsehen, gleich ist es vorbei.
Ich habe in meinem Studium in beiden Sprachen herumgestümpert und ziehe einen kleinen Vergleich für interessierte Buchmenschen. Ist JSON ansteckend? Kann man XML essen? Ich versuche hier einen kleinen Einblick zu geben, damit ihr hinterher hoffentlich die richtigen Fragen stellen könnt. Die Informationen habe ich teilweise aus meinen Einschätzungen, meinen Vorlesungsaufzeichnungen und einer Linksammlung zusammengestellt, die ich unten beigefügt habe. Einige Aspekte habe ich ausgeklammert, um jemanden ohne Vorkenntnisse nicht zu verwirren.

Merkmale von XML

XML ist keine Programmiersprache im eigentlichen Sinn. Die Abkürzung steht für den Ausdruck „Extensible Markup Language“. Es ist eine Auszeichnungssprache, die Informationen maschinenlesbar erfasst, indem sie die Daten in einzelne Elemente aufteilt und hierarchisch strukturiert. Die Auszeichnungen erfolgen durch sogenannte „Tags“, die die Bezeichnung der Information in spitzen Klammern enthalten. Die Tags markieren den Anfang eines Elements, wenn sie vor der Information stehen und signalisieren das Ende eines Elements, wenn sie mit einem Schrägstrich vor dem Elementnamen einer Information nachgestellt sind. Dadurch entstehen sogenannte Knoten im XML Dokument. Die Bezeichner dürfen jedoch nur ebenentreu verschachtelt werden. Tags, die innerhalb eines anderen Elementes geöffnet werden, müssen auf der gleichen Ebene auch wieder geschlossen werden. Auf diese Weise wird jede Information streng logisch kategorisiert und benannt.

Zum Beispiel:

<student>

<matrikelnr>12345678</matrikelnr>

<vorname>Popita</vorname>

<nachname>Pixel</nachname>

</student>

Die genauen Regeln, wie die Informationen erfasst werden, legt ein vom Anwender vorher definiertes Schema fest, das genau bestimmt, welche Tags und Datentypen verwendet werden. Durch dieses definierte Schema als Blaupause für alle anzulegenden XML Dokumente können die Dokumente sehr gut validiert und auf Korrektheit geprüft werden.

Der Code von XML ist durch den Menschen im Vergleich zu anderen Programmiersprachen mit spezieller Syntax sehr gut lesbar. Primär wurde XML jedoch entwickelt um einen präzisen Datenaustausch zu ermöglichen und als Metasprache ohne Komplikationen von anderen Programmen benutzt werden zu können. Programmiersprachen wie C++, Java und Python haben eine Schnittstelle, um XML Dokumente zu lesen und zu verarbeiten. Sie müssen diese Dokumente jedoch erst einlesen und abspeichern. In der XML Familie gibt es zudem noch eine große Zahl anderer Sprachen, die mit den Daten eines XML Dokuments arbeiten können.

Die Verwendung von XML im Verlag

Ein wichtiger Anwendungsbereich liegt derzeit noch im Verlagswesen. XML ist ein wichtiger Pfeiler für die Erstellung für E-Books und die Speicherung von Metadaten, denn das E-Book Dateiformat „Epub“ basiert auf XML und seiner Unterform XHTML. Dabei wird der Buchinhalt in Kategorien wie Überschriften und Bereiche mit spezieller Schriftformatierung gekennzeichnet. Die eigentliche Formatierung übernehmen sogenannte CSS-Dateien, die in eigener Programmiersprache das „Aussehen“ der gekennzeichneten Bereiche beschreiben. Auf diese Weise können E-Reader, Lese-Apps oder andere Darstellungsprogramme durch die aufgesetzte Software die Bereiche identifizieren und die hinterlegte Formatierungsanweisung umsetzen. XML speichert die Daten also medienneutral ab und ermöglicht so eine vielfache Nutzung durch verschiedenste Software.
XML kann aber auch für Datenbanken eingesetzt werden, deren Ziel es ist, Dokumente abzuspeichern. Diese dokumentenorientierte Datenbanken ermöglichen durch die XML-basierte Abfragesprache „XQuery“, die Dokumente zu durchsuchen und bestimmte Informationen herauszufiltern. Da Verlage mit großen Datenbeständen arbeiten, ist die Wahl einer entsprechenden Speicherung ein wichtiger Aspekt der Arbeit mit diesen Daten. Wenn bereits Buchinhalte und Metadaten in XML vorliegen, bietet es sich an, über die Verwendung einer XML-basierten Datenbank nachzudenken.

Merkmale von JSON im Vergleich

JSON ist eine Abkürzung für „JavaScript Object Notation“ und ist ein textbasiertes Datenformat, das 2001 auf der Basis von JavaScript entwickelt wurde. Die Programmiersprache JavaScript ist Bestandteil der meisten Browser und wird von den meisten Homepages verwendet. Im Bereich Datenaustausch zwischen Server und Web-Applikationen hat JSON das veraltete XML zu großen Teilen verdrängt. Denn JSON-Dokumente sind gleichzeitig ein ausführbares JavaScript und können sehr einfach und schnell geparst werden. Trotzdem ist JSON unabhängig von der Programmiersprache einsatzfähig und kann auch von anderen Technologien sprachunabhängig effizient verarbeitet werden. Vergleichbar mit XML werden mit JSON Informationen maschinenlesbar erfasst. Dabei werden die Informationen Namen zugeordnet und so Name-Wert-Paare gebildet. Außerdem spielen geordnete Wert-Listen eine große Rolle für die Struktur von JSON.

Das vorherige Beispiel des XML Codes könnte in JSON so aussehen:

„student“: {

„matrikelnr“: „12345678“,

„vorname“: „Popita“,

„nachname“: „Pixel“

},

Die gleichen Informationen aus den vorherigen Beispielen werden hier mit deutlich weniger Syntax beschrieben. Auch hier werden Daten ihren Bezeichnungen zugeordnet. Doch die Start-Tags und End-Tags, die in XML Beginn und Ende eines Elements kennzeichnen, werden hier eingespart. In JSON ist der vorangestellte Bezeichner für die Information gültig, die in Anführungszeichen bis zum nächsten Komma folgt. Diese Einsparungen erhöhen nicht nur die Lesbarkeit für den Menschen, sondern verkleinern zum einen den Schreibaufwand für die gleiche Menge an Information und zum anderen wird der Speicherbedarf verringert. Man spricht bei XML vom sogenannten „Overhead“ der durch die Tags entsteht und das Dokument in die Länge zieht.

Die Verwendung von JSON im Verlag

Da viele Content-Management-Systeme mit Skriptsprachen arbeiten, ist die Wahl von JSON als Output-Format sinnvoll, wenn die Inhalte in Feed-Dienste oder über Programmschnittstellen in andere Technologien integriert werden soll. In Hinblick auf den Online-Bereich kann JSON verwendet werden, um die Daten auf den Homepages, Apps und anderen Diensten einzuspielen. Durch die Nähe zu JavaScript und dem geringeren Speicherbedarf ist es auf dieser Ebene ein effizientes und unkompliziertes Datenaustauschformat.
Während E-Books wie oben bereits beschrieben mit XML, XHTML und CSS erstellt werden, könnte ein E-Book auf Basis von JSON mit Hilfe von Skriptsprachen erstellt werden. Diese Praxis hat sich, meiner Kenntnis und Recherche nach, jedoch noch nicht durchgesetzt. JSON ist also für die Herstellung von E-Books derzeit irrelevant.

Fazit

Da sich viele heutige Standards auf der Basis von XML gebildet haben, ist die Verwendung von XML für die maschinenlesbare Erfassung von Daten noch immer von großer Bedeutung. Weil das Epub-Format den E-Book Markt neben Mobipocket und PDF dominiert, wird XML vorerst die wichtigste Basis für die Herstellung digitaler Inhalte bleiben. Die einfache Validierung zur Überprüfung der Korrektheit der Dokumente ist eines der vorteilhaftesten Features von XML.

Allerdings wurde XML von JSON als Datenaustauschformat online bereits verdrängt. Eine Ablösung durch modernere Formate ist auch in anderen Bereichen denkbar. Realistisch betrachtet ist JSON zwar kompakter und übersichtlicher als XML und wird von vielen anderen Programmiersprachen unterstützt, wird aber die historische Bedeutung von XML so schnell nicht brechen können. Trotzdem sollten Verlage nach den Jahren der Einführung von XML den Aufwand nicht scheuen, sich mit JSON vertraut zu machen.

 

Linksammlung

Die offizielle Homepage von JSON: json.org

In diesem Beitrag wird auch ein Vergleich gezogen, der zu ähnlichen Ergebnissen kommt, die aber qualifizierter dargestellt werden: http://www.predic8.de/xml-json-yaml.htm

Falls ihr wissen wollt, wie man genau ein E-Book mit JSON und PHP herstellt: http://www.sitepoint.com/building-epub-with-php-and-markdown/

Advertisements

Dein Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s