Direkt zum Inhalt

Mehr Tempo auf der Datenautobahn

Die Erweiterung der heutigen Standardsprache des Web erlaubt die Definition anwendungsspezifischer Dokumenttypen. Das dürfte sie zum universellen Format für den Datenaustausch im Internet machen.


Mit einem Blick erfaßt der Mensch eine Situation. An den Reihen von großen Buchstaben, gefolgt von Blöcken aus kleiner Schrift erkennt jeder Betrachter sofort, daß auf dieser Seite ein Zeitschriftenartikel beginnt. In einer handgeschriebenen Liste von Lebensmitteln sieht man unschwer den Einkaufszettel. Und ein blattloser mitteleuropäischer Laubbaum wird im Winter als normal eingestuft, im Sommer hingegen als krank oder tot.

Computer sind da sehr viel begriffsstutziger. Man muß ihnen alles haarklein darlegen und genauestens auseinandersetzen, wie die Dinge zusammenhängen und was bei ihrer Interaktion passieren kann. Diesem Übelstand sucht nun eine neue Sprache für das World Wide Web abzuhelfen: Die Extensible Markup Language (XML, erweiterbare Auszeichnungssprache) wurde entwickelt, um Informationen selbsterklärend zu machen. Dieses einfach erscheinende Prinzip für die Kommunikation zwischen Computern verspricht, das Internet von der reinen Informationsquelle zum Medium für vielerlei Aktivitäten zu machen. Seit der Verabschiedung der ersten Version von XML im Februar 1998 durch das World Wide Web Consortium (meist kurz W3C genannt) hat sich XML schon wie ein Buschfeuer in allen Bereichen der Wissenschaft ausgebreitet und auch in der Privatwirtschaft Fuß gefaßt – von Produktionsbetrieben bis zu Kliniken.

Die begeisterte Aufnahme der neuen Sprache beruht zu einem erheblichen Teil auf der Hoffnung, daß XML einige der größten Unzulänglichkeiten des World Wide Web (WWW) beseitigt. Zum Beispiel ist die Datenautobahn, obwohl die Informationsbits mit Lichtgeschwindigkeit hindurchrasen, oft so verstopft, daß sie zur Kriechspur wird; und obwohl das Netz fast jede Information bereithält, kann es ein nervenaufreibendes Geduldsspiel sein, die eine Auskunft zu erhalten, die man sucht.

Beide Probleme rühren zum Großteil von der gegenwärtigen Standard-Sprache her: der Hypertext Markup Language (HTML). Zwar ist sie die erfolgreichste, die jemals für elektronisches Publizieren entwickelt wurde, und relativ leicht zu erlernen; aber sie ist dafür auch sehr oberflächlich und unflexibel. HTML bietet nur eingeschränkte Möglichkeiten zur inhaltlichen Strukturierung; es handelt sich im wesentlichen um eine darstellungsorientierte Sprache zur Anzeige von Dokumenten, die einem Web-Browser sagt, wie er Text, Bilder oder Tabellen auf dem Computer-Bildschirm wiedergeben soll.

Dagegen ist es sehr schwierig, damit Web-Seiten zu erstellen, die nicht nur quasi als elektronisches Fax Dokumente auf Anfrage liefern, sondern auch Interaktionen erlauben. Nutzer und Anbieter aber verlangen nach WWW-Seiten, die beispielsweise Bestellungen von Kun-den entgegennehmen, Patientenkarteien übermitteln und die Bedienung von Produktionsstätten oder wissenschaftlichen Instrumenten von der anderen Seite des Globus erlauben. Dafür war HTML nie gedacht.

So kann ein Arzt zwar die Arzneimittelallergien eines Patienten mit seinem Browser abrufen. Wenn er sie aber in dieser Form per E-Mail an eine Klinik zur Aufnahme in ein Krankenregister weiterschickt, sind sie dort nicht direkt in die entsprechende Datenbank einlesbar. Der Computer des Krankenhauses könnte mit Textzeilen wie

<h1>Patient: Helga Mustermann</h1>

<b>Allergie gegen Stoff x</b>

ohne menschliche Hilfe nichts anfangen.

Die Ausdrücke in spitzen Klammern in diesem Beispiel werden als "Tags" ("Etiketten") bezeichnet, wobei <h1> den Beginn einer Überschrift und </h1> deren Ende anzeigt, während <b> besagt, daß der nachfolgende Text bis </b> fett zu schreiben ist. HTML verfügt nur über wenige solche Tags; so gibt es etwa keines für Arzneimittelunverträglichkeit. Jedes neue Tag muß offiziell abgesegnet und in allen Browsern berücksichtigt werden; seine Einführung erfordert deshalb einen jahrelangen bürokratischen Hürdenlauf, den kaum jemand auf sich nehmen möchte. Es wäre auch fragwürdig, einfach wahllos neue Tags für alle möglichen Anwendungsfelder zu definieren – ihre Zahl ginge schnell ins unendliche.

Aber selbst wenn die Webseiten von Buchhandlungen oder Versandhäusern eine Interaktion ermöglichen, verläuft sie meist äußerst schleppend. Das liegt an einem weiteren Manko von HTML. Bei jeder Änderung einer Bestellung muß ein weit entfernter, chronisch überlasteter Server eine komplette Seite mit Bildern und sonstigem datenintensivem Zubehör erneut senden, obwohl sich unter Umständen nur wenige Zahlen darauf ändern – etwa wenn man sehen möchte, inwiefern sich die Versandart auf den Endpreis auswirkt. Der eigene Computer wartet derweil untätig, da er zwar <h1> und <b> kennt, aber keine Preise und Versandmodi.

Suchmaschinen fürs World Wide Web leiden unter dem gleichen Problem. Da sich Preise zum Beispiel nicht als solche kennzeichnen lassen, ist es praktisch unmöglich, sie als Suchkriterium zu verwenden.

Theoretisch ist die Lösung ganz einfach: Die Einführung von Tags, die Informationen inhaltlich spezifizieren und nicht nur angeben, wie sie präsentiert werden sollen. Die Felder eines Bestellformulars für ein T-Shirt zum Beispiel hießen dann nicht in HTML-Stil "Fettdruck", "Absatz", "Zeile" oder "Spalte", sondern "Preis", "Größe", "Menge" und "Farbe". Ein Programm könnte ein solches Dokument sofort als Bestellformular erkennen und entsprechend damit umgehen: es zweckgemäß formatieren, die Daten direkt in ein Buchhaltungsprogramm importieren, und sicherstellen, daß ein bestelltes T-Shirt am Folgetag ankommt.

Wir beide und zehn weitere Mitglieder einer W3C-Arbeitsgruppe haben 1996 mit der Realisierung dieser Idee begonnen. Dabei mußten wir nicht ganz von vorne anfangen. Seit Generationen haben Lektoren – zunächst handschriftlich, später maschinell – am Textrand Anweisungen für die Setzer in den Druckereien geschrieben. Diese sogenannten Auszeichnungen folgten immer strikteren Regeln, bis die Internationale Organisation für Standardisierung (ISO) nach jahrzehntelanger Arbeit 1986 ein System für die Entwicklung neuer Auszeichnungssprachen zum Standard erhoben hat (ISO 8879).



Standardisierte Metasprache



Es handelt sich um eine Sprache zur Beschreibung von Sprachen – also eine Metasprache – mit dem Namen Standard Generalized Markup Language (SGML, standardisierte, generalisierte Auszeichnungssprache). Sie hat sich seither bei vielen umfangreichen Publikationen bewährt. HTML selbst wurde mit SGML definiert und bildet daher eine Teilmenge dieser Sprache. SGML hat allerdings den Nachteil, zu allgemein zu sein, und da es aus einer Zeit stammt, in der jedes Byte kostbar war, enthält es eine Vielzahl raffinierter Funktionen zur Minimierung von Speicherbedarf. Web-Browser sind mit dieser Komplexität überfordert.

Unser Team entrümpelte SGML von vielen Finessen und kam so zu der leichter handhabbaren Metasprache XML. Sie besteht aus einer Reihe von Regeln, mit denen sich leicht neue Sprachen entwickeln lassen, wobei sichergestellt ist, daß ein einzelnes kompaktes, schnelles Programm (ein Parser) sie alle interpretieren kann.

Nehmen wir als Beispiel nochmals den Arzt, der Patientendaten zu einem Krankenhaus sendet. Entscheidet sich die Ärztezunft weltweit dafür, mittels XML eine Auszeichnungssprache für medizinische Daten zu entwickeln – in der Tat beschäftigen sich schon mehrere Gruppen damit –, so könnte die E-Mail eines Arztes an ein Krankenhaus wie folgt aussehen:

<patient>
<name>Mustermann, Helga</name>
<allergie>Medikament XY</allergie>
</patient>

Es ist dann ganz einfach, ein Programm zu schreiben, das diese Termini versteht und die Angaben in eine Datenbank einliest.

Wie HTML schon heute fast jedem Computer ermöglicht, WWW-Dokumente darzustellen, bildet XML eine Art elektronisches Esperanto: All die inkompatiblen Rechnersysteme können es verstehen und schreiben. Im Gegensatz zu den meisten Datenformaten ist es außerdem auch für Menschen lesbar, weil es im Prinzip nichts als gewöhnlichen Text enthält.

Diese Universalität resultiert aus einem kleinen Satz wohldurchdachter Regeln. Eine davon ist, daß Tags fast immer paarweise auftreten müssen. Sie umgeben den Text, auf den sie sich beziehen, wie Klammern, und können wie An- und Abführungszeichen geschachtelt werden. Das macht XML-Dokumente sehr übersichtlich und verleiht ihnen eine Struktur, die unter Informatikern als Baum bekannt ist. Wie in einem Stammbaum steht jede Graphik und jeder Textabschnitt zum Rest des Dokuments in einem eindeutigen genealogischen Bezug: Es ist "Elternteil", "Kind" oder "Geschwister" von anderen Elementen. Bäume können zwar nicht sämtliche Arten von Informationen wiedergeben, aber zumindest einen Großteil derer, die für Computer verständlich sein sollen. Zudem sind sie für Programmierer extrem leicht zu handhaben.

Eine weitere Stärke von XML ist, daß es auf Unicode aufbaut: einem neuen Zeichencodiersystem, mit dem sich Texte in allen wichtigen Sprachen der Welt anzeigen lassen. Ein Dokument, das in HTML oder mit einem normalen Textverarbeitungsprogramm erstellt wurde, liegt gewöhnlich in einer bestimmten Schrift vor, sei es Lateinisch, Japanisch, Chinesisch oder Arabisch. Wenn Ihre Software das entsprechende Alphabet nicht beherrscht, können Sie mit dem Dokument nichts anfangen. Selbst Programme, die für Taiwan entwickelt wurden, sind wegen inkompatibler Standards oft außerstande, Texte aus China zu verstehen. Software, die XML beherrscht, kann dagegen beliebige Schriftzeichen interpretieren. XML ermöglicht daher nicht nur den Informationsaustausch über die Grenzen von Computersystemen hinweg, sondern überwindet auch kulturelle und Landesgrenzen.



Das Ende des weltweiten Wartens



Die Verbreitung von XML wird sich schon bald durch kürzere Antwortzeiten im World Wide Web bemerkbar machen. Heutzutage können am Internet angeschlossene Computer, gleich ob leistungsstarke Arbeitsplatzrechner oder handgroße Terminplaner, oft nichts weiter tun, als ein Formular empfangen und ausgefüllt an den Webserver zurückschicken – und das so oft, bis die anstehende Aufgabe erledigt ist. Mit XML dagegen lassen sich Syntax- und Semantikinformationen anfügen, die es dem abrufenden Computer gestatten, einen Großteil der Datenverarbeitung selbst zu übernehmen. Das entlastet nicht nur die Web-Server, sondern auch das Netz.

Zur Veranschaulichung ein Beispiel: Ein Reisender verlangt von einem Online-Reisebüro Auskunft über alle Flüge von London nach New York am 4. Juli. Er bekommt wahrscheinlich eine Liste, die mehrere Bildschirmseiten lang ist. Um sie zu verkürzen, kann er zusätzliche Angaben zu Abflugzeit, Preis oder Fluglinie machen; diese müssen aber per Internet zum Reisebüro gesandt werden, woraufhin der Server dort eine Antwort generiert und sie wiederum zum Anfragenden schickt. Wäre die Liste in XML erstellt, könnte das Reisebüro ein kleines Programm hinzufügen, mit dem der Anwender die Flugdaten auf dem eigenen Computer in Sekundenbruchteilen selbst zu sortieren und zu filtern vermag, ohne den Server erneut zu bemühen. Bei Millionen Internet-Nutzern summiert sich das zu einer gewaltigen Entlastung des Netzes.

Die Kennzeichnung der Informationen im World Wide Web mit speziellen, auf den Anwendungsbereich zugeschnittenen Tags erleichtert es zugleich, zielgerichtet danach zu suchen. Heutzutage würde Ihnen eine Recherche mit den Stichworten Aktienhändler und Arbeitsplatz eine Flut von Werbung einbringen, aber nur wenige Stellenangebote. Diese verbergen sich wahrscheinlich größtenteils außerhalb des Zugriffs der Suchmaschine im Anzeigenteil von Online-Zeitschriften. Die Newspaper Association of America arbeitet aber bereits an einer Auszeichnungssprache für Kleinanzeigen im XML-Standard, die solche Recherchen schon bald sehr viel effektiver gestalten dürfte.

Auch das ist freilich nur ein erster Schritt. Bibliothekare wissen längst, daß sich eine Information am schnellsten finden läßt, wenn man nicht nach ihr selbst sucht, sondern nach einem komprimierten Extrakt, der nur auf sie verweist. Solche Informationen über Informationen werden auch Metadaten genannt; die Karteikartenkataloge der Bibliotheken sind nichts anderes.

Von Anfang an war ein Teil des XML-Projekts deshalb daraufhin ausgerichtet, einen Parallelstandard für Metadaten zu schaffen. Das im Februar fertiggestellte Resource Description Framework (RDF, Leitlinie zur Beschreibung von Quellen) wird für Web-Daten das leisten, was Karteikarten für Bibliotheken bedeuten. Eingesetzt in großem Stil, sollte es die Datenbeschaffung enorm beschleunigen und treffsicherer machen. Da das World Wide Web keine Bibliothekare hat und jeder Webmaster nichts mehr wünscht, als daß möglichst viele Websurfer auf seine Seiten stoßen, erwarten wir eine schnelle Ausbreitung von RDF.

Natürlich bieten Suchmaschinen nicht die einzige Möglichkeit, an Informationen zu gelangen. Schließlich handelt es sich beim World Wide Web um einen Hypertext, dessen unzählige Seiten durch Links miteinander verbunden sind: meist durch Unterstreichung hervorgehobene Worte, die beim Anklicken eine andere Seite aufrufen. XML wird diese Möglichkeit von Querverweisen mit dem Standard XLink erweitern, den das W3C bis Ende 1999 vorstellen will. Dann wird beim Klick auf den Link gleich eine ganze Liste von Zielseiten angeboten. Andere Hyperlinks fügen Text oder Bilder dort ein, wo man klickt, statt eine völlig neue Seite zu laden.

Wohl am praktischsten ist aber, daß Programmierer mit XLink indirekte Verweise auf Einträge in einer zentralen Datenbank anstatt auf die Seiten selbst erzeugen können. Wenn sich eine Webadresse ändert, kann der Programmierer alle Verweise darauf mit einem Schlag aktualisieren, indem er einfach einen Eintrag in der Datenbank korrigiert. Das sollte helfen, die wohlbekannte Fehlermeldung "404 File Not Found" auszumerzen, die bei Links zu nicht existierenden Webseiten auftaucht.

Die Kombination von effektiver Datenverarbeitung, gezieltem Suchen und flexiblen Links wird die Struktur des World Wide Web revolutionieren und ganz neue Wege zur Beschaffung von Informationen eröffnen. Vorteil für den Nutzer: Das Netz wird schneller, leistungsfähiger und nützlicher.

Wie von Zauberhand geht das allerdings nicht. Mit XML kann zwar jeder seine eigene, maßgeschneiderte Sprache kreieren, aber sie so zu definieren, daß sie den gewünschten Zweck optimal erfüllt, bleibt eine nicht zu unterschätzende Herausforderung. Und das ist erst der Anfang: Sind die Tags einmal festgelegt, muß man anderen Nutzern mit geeigneten Erläuterungen ihre Bedeutung klarmachen, und man muß Software schreiben, die etwas mit ihnen anfangen kann. Es genügt eben nicht, eine Bestellung mit dem Etikett "Bestellung" zu versehen, damit ein Computer sie als solche erkennt.

XML leistet da wertvolle Hilfestellung. Es beinhaltet einige Grundregeln, die alle Programmierdetails auf tieferer Ebene ausblenden, so daß sich Nutzer mit einem gemeinsamen Ziel auf ihre eigentliche Aufgabe konzentrieren können: einen Konsens darüber zu finden, wie sie Informationen, die sie gewöhnlich austauschen, repräsentieren wollen. Das ist auch schon schwer genug, aber zumindest ein landläufiges Problem.

Ohne solche Übereinkünfte wird es nicht gehen. Ein abschreckendes Beispiel aus der Vergangenheit ist der regellos gewachsene Computermarkt. Da hat die Verbreitung von imkompatiblen Systemen Verzögerungen, Kosten und Probleme auf fast jedem Anwendungssektor verursacht. Heutzutage wollen Menschen Ideen austauschen und Geschäfte abschließen, ohne dafür identische Computer verwenden zu müssen. Kontextbezogene Sprachen bedeuten einen großen Schritt in diese Richtung. In der Tat zeugt die Vielzahl von neuen Abkürzungen, die mit "ML" enden, von der Kreativität, die XML in Wissenschaft und Wirtschaft freigesetzt hat (siehe Kasten).

Vor der Entwicklung einer neuen Sprache auf XML-Basis muß Einigkeit über drei Dinge herrschen: Welche Markierungen zulässig sind, wie sich markierte Elemente ineinanderschachteln lassen und wie sie schließlich interpretiert und verarbeitet werden sollen. Die ersten beiden Punkte, Vokabular und Syntax, legt man gewöhnlich in der Document Type Definition (DTD, Dokumententypdefinition) nieder. XML erfordert zwar nicht zwingend eine DTD, aber die meisten neuen Sprachen dürften damit ausgestattet werden, weil eine solche Definition die Entwicklung von Software zur Interpretation der Auszeichnungen bedeutend erleichtert.

Unentbehrlich sind aber auch gewisse Erklärungen in natürlicher Sprache darüber, was die Tags bewirken sollen. Für HTML zum Beispiel gibt es außer einer DTD auch Hunderte Seiten von Erläuterungen, auf die sich Programmierer bei der Entwicklung von Browsern und anderer Web-Software beziehen.

Den Nutzer interessiert gemeinhin nur, was ein Programm kann, und nicht, wie es geschrieben wurde. Er will Software, die XML-codierte Information in lesbarer Form am Bildschirm anzeigt. XML-Tags aber enthalten keinerlei Anweisungen, wie die Information auf dem Papier oder dem Bildschirm aussehen soll.



Eine Frage des Stils



Für moderne Informationsanbieter aber ist das letztlich von Vorteil, da sie dasselbe Produkt – nach dem Motto "einmal erstellen, überall publizieren" – oft in verschiedener Form anbieten möchten: zum Beispiel als Buch, CD-ROM und Online. XML ermöglicht genau das, indem es die Bedeutung der Information unabhängig vom Wiedergabemedium vermittelt. Der Verleger kann das Dokument dann mit Regeln in einem Stylesheet (einer Formatvorlage) automatisch für verschiedene Ausgabemedien aufbereiten. Ein XML-Standard für solche Stylesheets wird unter dem Namen XSL (Extensible Stylesheet Language) entwickelt.

Die neuesten Versionen mancher Web-Browser verstehen bereits XML-Dokumente, beschaffen sich das richtige Stylesheet, und sortieren und formatieren damit die Information für die Ausgabe am Bildschirm. Der Nutzer merkt gar nicht, ob er es mit einem HTML- oder einem XML-Dokument zu tun hat – er stellt höchstens erfreut fest, daß der Umgang mit gewissen Seiten schneller und einfacher ist.

XML-Dokumente können auch in Blindenschrift oder in gesprochener Sprache ausgegeben werden. Das kommt sowohl Nutzern mit Sehschwächen zugute als auch solchen, die selbst noch am Steuer ihres Autos auf dem Weg zur Arbeit im Internet surfen möchten.

Obwohl das World Wide Web ursprünglich dem wissenschaftlichen Austausch diente, sind geschäftliche Interessen oder kommerzielle Erwartungen für sein explosionsartiges Wachstum verantwortlich. So ist ein enormer Zuwachs des Online-Handels zu verzeichnen, aber auch die interne Kommunikation von Unternehmen sowie der Datenaustausch zwischen verschiedenen Firmen hat einen nicht unerheblichen Anteil am Erfolg des Internet. Die Zusammenführung diverser, teils vorgefertigter Teile in Produktionsprozessen verlangt zum Beispiel nach Automatisierung. Aber Konzepte auf der Basis komplizierter, direkter Interaktionen zwischen Programmen haben sich in der Praxis nicht bewährt, da sie eine Uniformität der Datenverarbeitung voraussetzen, die es so nicht gibt.

Seit Jahrhunderten wickeln Menschen erfolgreich Geschäfte durch den Austausch von standardisierten Papieren ab: Kaufaufträgen, Rechnungen, Belegen, Quittungen und so weiter. Geschäftsdokumente haben sich bewährt, weil die beteiligten Parteien nichts darüber wissen müssen, wie ihre Partner intern damit umgehen. Sie zeigen nur genau das, was ihr Empfänger wissen muß, nicht mehr. Der Austausch von Dokumenten ist vermutlich auch die beste Methode für Online-Geschäfte; aber dazu war HTML nie gedacht. XML dagegen wurde speziell für den Austausch von Dokumenten und Formularen entwickelt, und es zeigt sich immer deutlicher, daß dies den Erfolg des elektronischen Handels in hohem Maße bestimmt.

Obwohl ein XML-dominiertes Internet schneller, transparenter und kundenfreundlicher sein wird, dürfte es an den Anbieter einer Webseite deutlich höhere Ansprüche stellen. Nur mit Teams von Programmierern läßt sich das Potential der XML-Sprachen voll ausschöpfen. Damit sind die Tage des Selfmade-Internet-Experten wohl gezählt. Der Webmaster von morgen muß nicht nur versiert im Arrangieren von Texten und Bildern sein, sondern auch in der Konstruktion mehrschichtiger unabhängiger Systeme von DTDs, Datenbäumen, Hyperlinkstrukturen, Metadaten und Stylesheets – den Eckpfeilern einer robusteren Infrastruktur für die zweite Generation des World Wide Web.

Literaturhinweise


XML in der Praxis. Von Henning Brehme und Stefan Mintert. Addison-Wesley 1999.

Die offizielle XML-Spezifikation (Version 1.0) ist im Internet unter der Adresse www.w3.org/xml zu finden. Unter www.ibm.com/developer/xml bietet IBM eine Webseite zu XML. Zahlreiche Fallbeispiele stehen bei www.microsoft.com/xml. Ein guter Einstieg in XML findet sich unter www.xml.com. Für weitere Informationen siehe www.spektrum.de/aktuellesheft.html


Aus: Spektrum der Wissenschaft 7 / 1999, Seite 74
© Spektrum der Wissenschaft Verlagsgesellschaft mbH

Lesermeinung

Beitrag schreiben

Wir freuen uns über Ihre Beiträge zu unseren Artikeln und wünschen Ihnen viel Spaß beim Gedankenaustausch auf unseren Seiten! Bitte beachten Sie dabei unsere Kommentarrichtlinien.

Tragen Sie bitte nur Relevantes zum Thema des jeweiligen Artikels vor, und wahren Sie einen respektvollen Umgangston. Die Redaktion behält sich vor, Leserzuschriften nicht zu veröffentlichen und Ihre Kommentare redaktionell zu bearbeiten. Die Leserzuschriften können daher leider nicht immer sofort veröffentlicht werden. Bitte geben Sie einen Namen an und Ihren Zuschriften stets eine aussagekräftige Überschrift, damit bei Onlinediskussionen andere Teilnehmer sich leichter auf Ihre Beiträge beziehen können. Ausgewählte Lesermeinungen können ohne separate Rücksprache auch in unseren gedruckten und digitalen Magazinen veröffentlicht werden. Vielen Dank!

  • Infos
Die offizielle XML-Spezifikation (Version 1.0) ist im Internet unter der Adresse http://www.w3.org/xml zu finden. Unter http://www.ibm.com/developer/xml bietet IBM eine Webseite zu XML. Zahlreiche Fallbeispiele stehen bei http://www.microsoft.com/xml. Ein guter Einstieg in XML findet sich unter http://www.xml.com.