Wofür wird XML verwendet? XML, wofür ist es nützlich? Was ist eine XML-Datei?

Ich versuche, ein paar Zusammenfassungen meiner Erfahrungen mit XML zu erstellen:

Vorteile

Leseformat:

Jeder kann seinen Inhalt überprüfen, indem er ihn einfach liest. Dadurch ist es einfach zu bedienen und eine klare Form der Kommunikation. Sogar Geschäftsleute mögen es (soweit ich weiß, seit vielen Jahren in Finanzinstituten), weil sie es verstehen und Nachrichten, beispielsweise in Messaging-Systemen, problemlos überprüfen können. Nur sie können entscheiden, welches System falsch ist. Macht sie glücklich :) Vergleichen Sie dies mit JSON. Ich denke, dass JSON alles andere als leserfreundlich ist, da es schwieriger ist, den Überblick über schließende Klammern zu behalten als über schließende Elemente in XML. Sie müssen zur Seite zurückgehen, um herauszufinden, was der Anfang war. Sie benötigen keine Programmierkenntnisse, um XML zu verstehen. Sogar deine Großmutter kann es in einer halben Stunde herausfinden.

Plattformunabhängigkeit:

Egal welche Sprache oder Plattform Sie verwenden, Sie werden auf jeden Fall einen Parser zum Lesen haben. Damit ist es wahrscheinlich die beste Form der Kommunikation zwischen heterogenen Systemen. Beachten Sie, dass Menschen XML-Dateien normalerweise über JMS-Warteschlangen transportieren, XML-Dateien an Webdienste senden und Objekte vor dem Transport in XML-Dokumente verpacken. XML ist ein so grundlegendes Material, dass es mit verschiedenen Parsern keine großen Probleme gibt. Sie alle verstehen XML.

Tolle Transformationswerkzeuge

Tolles Tool zum Überprüfen

Gegen

Ausführlichkeit

Es kann jeden Speicherplatz belegen. XML-Dateien machen Protokolle groß und schwer zu lesen und abzurufen. Andererseits können Sie Protokolle komprimieren. Sogar Webdienste oder JMS-Nachrichten können komprimiert werden, um den Bandbreitenaufwand zu reduzieren. Aber auch in diesem Fall stellt die Komprimierung einen Mehraufwand für Prozessor und Speicher dar. Andererseits können meiner Erfahrung nach XML und verwandte Technologien die Entwicklung verkürzen, und die Einsparung an Anmeldeinformationen reicht aus, um einen anderen Prozessor zu kaufen. Prozessoren sind billiger als Menschen.

Unwirksame Verwendung

Es ist alles andere als trivial, welche Objekte (XPath-Ausdrücke, XSL-Vorlagen, XSD-Schemas, XML-Parser usw.) welchen Lebenszyklus haben. Was kann zwischengespeichert werden? Viele Leute machen dies nicht richtig, um Thread-Sicherheitsprobleme zu vermeiden. Und das wird Sie zu einer schrecklichen Langsamkeit führen. Und das möchte ich betonen Dabei handelt es sich nicht um ein Technologieproblem, sondern um einen Missbrauch. Viele Menschen hängen am alten DOM-Parterre fest, das hässlich ist. Sie haben eine darüber liegende Ebene abstrahiert und ihre eigenen APIs für die Verarbeitung von XML erstellt, was schlecht ist. Fahren Sie fort, verwenden Sie DOM4j oder STAX oder JAXB oder etwas Standardmäßiges.

Die falsche Freiheit, etwas Besonderes zu schaffen

Viele Unternehmen haben mit XML domänenspezifische Sprachen oder schreckliche Konfigurationsdateien erstellt. Da es einfach zu analysieren und durchzugehen ist, haben sie sogar Übersetzer für eine völlig neue Sprache erstellt. Die Sprache steckte fest und die geplanten Entwicklungstools wurden nie erstellt. Verwenden Sie niemals XML zum Erstellen von Programmen. Es kann nicht verwendet werden. Programmieren Sie nicht in XPath, da es nicht in der Entwicklungszeit getestet wurde. Halten Sie die Dinge an Ort und Stelle. XML dient hauptsächlich dazu, Daten in einer Standardform zu transportieren. Erfinden Sie das Rad in XML nicht neu. Es wäre ein Programmstuhl für sich, kein Auto.

Die besten XML-Tutorials gibt es meiner Meinung nach auf ZVON. Benutzen Sie sie, wenn Sie möchten.

XML-Schema ist leistungsfähiger als DTD.

Unterstützung für XML-Schema-Datentypen

Einer der wichtigsten Punkte ist die Fähigkeit, XML-Schema-Datentypen zu unterstützen.

Dank Datentypunterstützung:

  • Es kann den gültigen Inhalt des Dokuments leicht beschreiben
  • Möglicherweise ist es einfacher zu überprüfen, ob die Daten korrekt sind
  • Sie können einfacher mit Daten aus der Datenbank zusammenarbeiten
  • Daten können durch Einschränkungen (Datenfacetten) einfacher definiert werden.
  • Das Datenmodell (oder Datenformat) kann einfach definiert werden
  • Es kann einfacher sein, Daten zwischen verschiedenen Datentypen zu konvertieren

Anmerkung der Redaktion: Dateneinschränkungen oder spezifizierte Aspekte sind ein XML-Schema-Prototypbegriff. Chinesisch kann mit „Gesicht“ übersetzt werden und wird verwendet, um den gültigen Wert eines Datentyps einzuschränken.

XML-Schemas mit XML-Syntax

Ein weiteres wichtiges Merkmal von XML-Schemas ist, dass sie in XML geschrieben sind.

Das Schreiben eines XML-Schemas in XML hat viele Vorteile:

  • Ohne eine neue Sprache lernen zu müssen
  • Sie können Schemadateien mit einem XML-Editor bearbeiten
  • Sie können einen XML-Parser verwenden, um Ihre Schemadateien zu analysieren
  • Schema kann mit XML DOM gerendert werden
  • Schema kann mit XSLT konvertiert werden

XML-Schema kann die Datenübertragung sichern

Bei der Übermittlung von Daten vom Sender zum Empfänger kommt es darauf an, dass beide Parteien den Inhalt der gleichen „Erwartungen“ respektieren müssen.

In einem XML-Schema können Absender und Empfänger die Art und Weise verstehen, wie die Daten beschrieben werden.

Ein Datum wie „03.11.2004“ kann in einigen Ländern als 3. November interpretiert werden, während es in anderen Ländern der 11. März ist.

Der XML-Datentyp des Elements ist jedoch beispielsweise:<дата типа = "дата"> 2004-03-11 um ein konsistentes Verständnis des Inhalts zu gewährleisten, da der XML-Datentyp „Datum“ das Format „JJJJ-MM-TT“ erfordert.

XML-Schema kann erweitert werden

XML-Schemas sind erweiterbar, da sie in XML geschrieben sind.

Durch die erweiterbare Schemadefinition können Sie:

  • Wiederverwendung Ihres Schemas in einem anderen Schema
  • Gebaut mit Standardtypen, die von Ihren eigenen Datentypen abgeleitet sind
  • Plant mehrere Links in einem Dokument

Eine gute Form reicht nicht aus

Wir haben dieses Dokument entsprechend der XML-Syntax wohlgeformter XML-Dokumente benannt, wie zum Beispiel:

  • Es muss mit einer XML-Deklaration beginnen
  • Es muss ein eindeutiges Stammelement haben
  • Das Start-Tag muss mit dem End-Tag übereinstimmen
  • Bei Elementen wird die Groß-/Kleinschreibung beachtet
  • Alle Elemente müssen geschlossen sein
  • Alle Elemente müssen korrekt verschachtelt sein
  • Sonderzeichen müssen das Objekt verwenden

Selbst eine gute Dokumentenform kann nicht garantieren, dass sie keine Fehler enthält, und diese Fehler können schwerwiegende Folgen haben.

Stellen Sie sich die folgende Situation vor: Sie bestellen fünf statt fünf Dutzend Laserdrucker. Im XML-Schema können die meisten dieser Fehler in Ihrer Validierungssoftware abgefangen werden.

Sehr oft stoßen viele Benutzer moderner Computersysteme und Softwareprodukte verschiedener Art auf Dateien mit der Erweiterung .xml. Viele Menschen haben einfach keine Ahnung, um was für ein Dokument es sich handelt und wie man es öffnet. Jetzt werden wir darüber nachdenken, was es ist und wofür es benötigt wird.

Was ist eine XML-Datei?

Beginnen wir vielleicht mit der Tatsache, dass es sich aus der Sicht moderner Computertechnologien und Programme, die zur Erstellung solcher Dokumente verwendet werden, um eine Textdatei handelt, in der die Befehle der universellen erweiterbaren Auszeichnungssprache geschrieben sind, was durchaus der Fall ist erinnert an das bekannte Markup-Tool HTML.

Normalerweise enthält eine XML-Datei allgemeine Informationen über ein Objekt, die beschreibend ausgedrückt werden (mehr dazu später). Bei den in solchen Containern gespeicherten Daten kann es sich um Datenbanken handeln, die häufig für Video- und Audiokataloge im Internet verwendet werden, um gespeicherte Benutzereinstellungen für Programme und Anwendungen sowie um ganze Webseiten.

Als Beispiel können Sie beispielsweise ein Audioalbum eines Künstlers nehmen. Die XML-Datei enthält Informationen über das Erscheinungsjahr, das Genre, die Anzahl und Namen der Titel, die Beliebtheit usw. Beim Besuch von Ressourcen im World Wide Web muss der Surfer jedoch nicht daran denken, eine solche Informationsdatei physisch zu öffnen, da Auch wenn ein Song online in einem Player abgespielt wird, werden alle Daten ähnlich wie in Standard-MP3-Dateien in Form von ID3-Tags angezeigt. Die Informationen werden in den abgespielten Titel geladen.

XML-Dateityp

Wenn Sie sich die Datei ansehen, werden Sie sofort feststellen, dass darin die Eigenschaften eines beliebigen Objekts mithilfe von Tags und Attributen beschrieben werden, die manuell festgelegt werden.

Wir sprechen hier nicht über die Grundbefehle der Sprache selbst, da der durchschnittliche Benutzer solche Informationen nicht benötigt. Das Einzige, was bemerkt werden kann, ist, dass es keine bestimmte Anzahl von Elementen gibt, die zur Beschreibung eines Objekts in diesem Format verwendet werden: Es wird angegeben, wie viele benötigt werden.

So öffnen Sie das Standard-XML-Format

Sehen wir uns nun an, wie man eine XML-Datei öffnet. Wie viele wahrscheinlich bereits verstanden haben, handelt es sich hierbei um eine Textdatei, was bedeutet, dass der einfachste Weg, sie anzuzeigen oder zu bearbeiten, die Verwendung eines beliebigen Editors ist, selbst des einfachsten. Ja, zumindest der gleiche „Notizblock“ aus dem Standard-Windows-Set.

Allerdings ist hier nicht alles so einfach. Tatsache ist, dass ein Doppelklick auf eine Datei, ohne die entsprechende Verknüpfung mit einem Programm festzulegen, nicht geöffnet wird. Im besten Fall bietet das System eine Liste der am besten geeigneten Anwendungen an. Sie können ein Programm Ihrer Wahl auswählen und gleichzeitig das Kontrollkästchen neben der Option aktivieren, die ausgewählte Anwendung dauerhaft für alle Dateien dieses Typs zu verwenden.

Sie können es auch anders machen, indem Sie mit der rechten Maustaste auf die Datei klicken und dann den Befehl „Öffnen mit ...“ auswählen. Anschließend wählen Sie erneut die gewünschte Anwendung entweder aus der Liste aus oder geben den Speicherort der ausführbaren Hauptkomponente an (most oft ist dies eine EXE-Datei).

Die dritte Möglichkeit, eine XML-Datei zu öffnen, besteht darin, zunächst das Programm zu starten und dann das Menü zum Öffnen der Datei zu verwenden (in den meisten Fällen ist dies Strg + O). In diesem Fall ist die Verwendung von Notepad absolut nicht erforderlich. Bitte öffnen Sie die Datei problemlos in derselben Word-Anwendung und ähnlichen Anwendungen. Sogar Microsoft Excel ist in der Lage, Daten in diesem Format zu öffnen.

Wenn jedoch eine Bearbeitung des XML-Formats erforderlich ist, ist es besser, professionelle Dienstprogramme zu verwenden, die die Sprachsyntax unterstützen, beispielsweise Oxygen XML Editor, XML Marker oder EditiX Lite Version. Natürlich sind dies nicht alle Dienstprogramme, die mit der Dateisprache auf höchstem Niveau arbeiten können. Heutzutage gibt es viele solcher Programme.

Nun ein paar Worte dazu, warum beim Öffnen manchmal ein XML-Dateifehler auftritt. Meistens ist dies auf eine Verletzung der Integrität der Datei selbst sowie auf die falsche Einführung beschreibender Attribute oder Tags zurückzuführen. Darüber hinaus gibt es in Excel eine Begrenzung für die Anzahl der anzuzeigenden Zeilen, so dass in diesem Fall die Daten beim Öffnen möglicherweise nicht vollständig sind.

Mögliche Fehler beim Öffnen einer XML-Datei als E-Mail-Anhang

Manchmal können Fehler auftreten, wenn Sie versuchen, eine Datei zu öffnen, bei der es sich um einen E-Mail-Anhang handelt. Am häufigsten trifft dies auf Standard-E-Mail-Clients wie Outlook Express zu.

Tatsache ist, dass der Anhang zunächst als temporäre Daten gespeichert wird (sehr oft mit einer zusätzlichen .tmp-Erweiterung an die Haupterweiterung) und auf diese zugegriffen wird.

Um diese Situation zu vermeiden, müssen Sie lediglich den Anhang zunächst im Originalformat an einem geeigneten Ort auf der Festplatte oder einem Wechselmedium speichern und dann die oben beschriebenen Standardmethoden verwenden.

Statt einer Summe

Wie Sie sehen, ist es nicht schwer, die Struktur und Methoden zum Öffnen von Dateien dieses Formats zu verstehen. Die Frage der Erstellung von XML-Daten wurde hier allerdings nicht grundsätzlich betrachtet, da man zum vollständigen Verständnis des Prozesses zumindest Grundkenntnisse der Sprache selbst benötigt. Ansonsten denke ich, dass Benutzer mit Dateien dieses Formats keine Schwierigkeiten haben werden.

Ich denke, dass Sie bereits verstehen, warum Sie es brauchen HTML(Ja, HTML). Es wird benötigt, um Daten im Browser darzustellen. Das heißt, es gibt HTML Quelltext und dementsprechend HTML Quelltext ein bestimmter Typ. Moderne Trends erfordern jedoch nicht nur die Darstellung von Daten, sondern auch deren kompetente interne Struktur.

Das ist es Erstellen einer Struktur und es gibt eine XML-Sprache. Einfaches Beispiel:

Grüner Apfel

Für uns Menschen wird sofort alles klar. Sofort taucht in meinem Kopf ein Bild auf“ grüner Apfel"Aber wie kann man einem Computer erklären, dass es sich um einen Apfel und nicht um eine Orange, einen Menschen oder unsere Galaxie handelt? Auch hier kommt es zur Rettung XML, wo wir beliebige Tags erstellen können, die klar machen, wo der Apfel ist, wo die Orange ist, wo die Person ist und wo unsere Galaxie ist. Ich hoffe, ich habe es klar erklärt.

Nun zum Wichtigsten. Das Hauptmerkmal von XML ist seine Vielseitigkeit. Also XML versteht jede moderne Sprache. Und da XML ist eine Textdatei, dann können Sie in einem normalen Notizblock damit arbeiten. Jetzt speziell zum Üben, Wo wird XML verwendet?:

  • Einstellungsdatei. Einstellungen in XML-Datei sehr einfach zu lesen und zu schreiben. Aus diesem Grund gibt es Hunderte davon XML-Dateien.
  • Datenbrücke zwischen Programmen, die in verschiedenen Sprachen geschrieben sind. Ein sehr wichtiges Merkmal, das sich aus der Vielseitigkeit der Sprache ergibt und regelmäßig in komplexen Systemen verwendet wird.
  • Datenspeicher. Tatsächlich handelt es sich hierbei um eine Art Datenbankanalogon, dies ist jedoch nicht erforderlich DBMS(Zum Beispiel, MySQL). Und dank der Abfragesprache XPath es wird möglich, damit leicht zu kommunizieren“ Datenbank".

Und schließlich kann ich aus meiner Praxis das einfachste Beispiel geben. Ich habe auf meiner Website eine Sitemap im XML-Format. Es gibt Links zu allen Seiten der Website. Dies ist eine sehr praktische Sache und wichtig für eine gute Indexierung der Website. Allerdings ist es umständlich, dort jedes Mal manuell eine neue Seite hinzuzufügen. Daher dank der Kenntnis von Arbeiten mit XML, ich habe diese Angelegenheit leicht automatisiert. Also XML ist eine nützliche Sprache, die jeder Programmierer zumindest allgemein kennen muss.

Warum wird dieses XML benötigt?

[In letzter Zeit im Zusammenhang mit dem Erscheinen dieser Seiten am häufigsten
Die Frage für mich war: „Sagen Sie mir, warum wird XML überhaupt benötigt?“
Reicht uns HTML nicht? „Da ich nicht viel Zeit (oder Intelligenz) hatte, um meine eigenen Veröffentlichungen vorzubereiten, und auch großen Respekt vor den Klassikern hatte, zog ich es vor, schnell einen hervorragenden Artikel zum Titelthema zu übersetzen
- vielleicht ist dies die erste Folge der Serie „to help“]

Jon Bosak, Tim Bray
XML und das Web der zweiten Generation
von Scientific American, Mai 1999

Geben Sie den Leuten ein paar Tipps und sie werden den Rest selbst herausfinden. Beim Blick auf die Seite, auf der größere Textblöcke in kleinere unterteilt sind, wird jedem schnell klar, dass dies der Anfang eines Artikels ist. Ein Blick auf die Einkaufsliste lässt schnell erahnen, dass es sich hierbei um „Anleitungen“ für den Besuch im Laden handelt. Wenn Sie die Zahlenspalten sehen, verstehen Sie, dass es sich um ein Bankkonto handelt. Computer sind noch nicht so schlau – das alles muss ihnen genau vermittelt werden – womit sie sich genau auseinandersetzen müssen und was dafür von ihnen verlangt wird.

Zu diesem Zweck – um Informationen selbstbeschreibend zu machen – wurde eine neue Dokumentauszeichnungssprache erfunden – Extensible Markup Language (XML). Diese leicht auszudrückenden Veränderungen (ein „selbstbeschriebenes“ Dokument, eine Änderung der Regeln für die Kommunikation mit Computern) bergen ein enormes Potenzial – die Rolle des Internets beginnt sich von einem Iauf andere Arten menschlicher Aktivitäten auszudehnen. Tatsächlich begann die XML-Spezifikation seit ihrer Genehmigung durch das W3C im Jahr 1998 wie ein Lauffeuer überall einzudringen – in Industrie und Wissenschaft, in die Produktion von Gütern und Medikamenten.

Enthusiasten hofften, dass XML eine Möglichkeit bieten würde, eine Reihe globaler Probleme des Webs zu lösen. Diese Probleme sind bekannt: Erstens verhält sich das Internet, ein superschnelles Netzwerk, oft schlimmer als eine Schildkröte; Und zweitens: Obwohl fast alle Informationen im Internet verfügbar sind, ist es oft wahnsinnig schwierig, dort etwas Notwendiges zu finden.

Beide Probleme werden hauptsächlich durch die Natur der Hauptsprache des Webs verursacht – HTML. Und obwohl der Erfolg von HTML gegenüber anderen jemals vorgeschlagenen elektronischen Veröffentlichungssprachen offensichtlich ist, ist HTML zu spärlich: Es teilt dem Browser im Wesentlichen nur mit, wie Text, Bilder und Schaltflächen auf einer Seite platziert werden sollen. HTML konzentriert sich auf die Darstellung von Informationen und ist daher relativ einfach zu erlernen, hat jedoch seinen Preis.

Dies spiegelt sich in der Komplexität der Entwicklung von Websites wider, es sei denn, diese Websites sind wie Faxgeräte gedacht und senden Seiten an jeden, der danach fragt. Mehr als die Hälfte der Menschen und Unternehmen auf der ganzen Welt würden Websites bevorzugen, die Bestellungen von Benutzern entgegennehmen, Krankheitsdiagnosen senden und sogar heikle instrumentelle Vorgänge in Fabrikhallen und wissenschaftlichen Labors durchführen können. Vor solchen Aufgaben stand HTML _NIEMALS_!.

Selbst wenn Ihr Arzt beispielsweise in der Lage ist, von Ihrer Gesundheitskarte durchgeführte Tests in seinen Viewer zu „extrahieren“, ist es unwahrscheinlich, dass er sie über das Netzwerk an einen anderen Spezialisten senden kann, um die empfangene Antwort wieder in seinen einzufügen Datenbank. Sein Computer weiß nicht, was er mit Informationen anfangen soll, die ihm so klar sind wie

Biene Biene

oder Biene Biene.
Der legendäre Kernighan bemerkte einmal, dass der ganze Trick des WYSIWYG-Prinzips (was ich sehe, ist was ich bekomme) darin besteht, dass man, wenn man nichts sieht, normalerweise genau die gleiche Menge erhält.

Die darüber stehenden Wörter, die in spitze Klammern eingeschlossen sind, werden Tags genannt. In HTML gibt es kein Parsing-Tag, was einen weiteren Nachteil mit sich bringt: Unflexibilität. Das Hinzufügen eines neuen Tags zu einer Sprache ist ein solch bürokratischer Aufwand und so langwierig, dass sich niemand darum kümmern wird. Aber es wäre schön, wenn jedes Programm seine eigenen Tags hätte, nicht nur das im Beispiel mit dem Arzt.

Dies erklärt weitgehend das derzeit langsame Tempo bei der Erstellung von Online-Shops, Versandkatalogen und anderen interaktiven Websites. Wenn Sie die Anzahl der Bestelleinheiten und die Versandart ändern und feststellen, dass sich im Feld „Betrag“ einige Zahlen geändert haben, müssen Sie dennoch den (bereits überlasteten) Remote-Server bitten, Ihnen eine vollständig neu generierte Seite zurückzusenden Grafiken und alles andere. Während Ihr eigener leistungsstarker Computer im Leerlauf bleibt, weil er gerade so etwas gelernt hat

Und , jedoch keine Preise mit Lieferoptionen.

Hinzu kommt die schlechte Qualität der Websuchfunktionen. Da es keine Möglichkeit gibt, Preisinformationen gezielt zu kennzeichnen, ist es absolut unmöglich, im Internet nach Seiten zu suchen, die auf „Preis“ basieren.


Etwas Altes, etwas Neues

Im Prinzip ist die Lösung einfach: Die Tags müssen angeben, um welche Art von Informationen es sich handelt und nicht, wie sie aussehen sollen. Markieren Sie beispielsweise die Bestandteile einer Bestellung für ein Hemd mit den Tags „Preis, Größe, Menge, Farbe“ und nicht mit „Fett, Absatz, Zeile, Spalte“, wie in HTML vorgeschlagen. Dann ist es für das Programm einfacher, das Dokument als Bestellung zu identifizieren und den Rest der Arbeit zu erledigen: diese Bestellung in der einen oder anderen Form anzuzeigen, sie durch das Buchhaltungssystem zu schicken oder sicherzustellen, dass das neue Hemd an Ihre Haustür geliefert wird nächster Tag.

Wir, die W3C-Arbeitsgruppe, haben bereits 1996 mit der Entwicklung eines solchen Projekts begonnen. Die Idee war stark, wenn auch nicht ganz originell. Seit Generationen markieren Herausgeber und Drucker handgeschriebene Texte mit Schriftsetzerzeichen. Diese „Auszeichnungssprache“ entwickelte sich unabhängig voneinander, bis die Internationale Organisation für Normung (ISO) 1986 als Ergebnis zehnjähriger Arbeit ein System zur Erstellung neuer Auszeichnungssprachen einführte.

Diese als SGML (Standard Generalized Markup Language) bezeichnete Sprachbeschreibungssprache – eine Metasprache – hat sich in vielen großen Verlagssystemen als nützlich erwiesen. Und sogar HTML erhielt seine Definition durch SGML. Die einzige Schwierigkeit bei SGML bestand darin, dass es Allesfresser war – es gab viele clevere Dinge, um Tastenanschläge zu minimieren, da zu dieser Zeit jedes Byte zählte. Aus diesem Grund funktionieren Webbrowser heutzutage nicht gut damit.

Bei der Erstellung von XML hat unsere Arbeitsgruppe SGML von seinen Hüllen befreit und eine äußerst zielgerichtete und leicht verdauliche Metasprache vorgeschlagen. Die XML-Basis ist eine Reihe von Regeln, anhand derer jeder seine eigene Auszeichnungssprache erstellen kann. Diese Regeln werden so gewählt, dass ein einziges kleines Programm (auch Parser oder Syntaxanalysator genannt) mit der Erkennung jeder neuen Sprache zurechtkommt. Schauen wir uns noch einmal das Beispiel eines Arztes an, der Untersuchungen an einen Facharzt übertragen möchte. Wenn Mediziner eine eigene Auszeichnungssprache aus XML konstruieren würden, um ärztliche Notizen zu kodieren (eine Reihe von Gruppen beschäftigen sich schon seit langem mit dem Problem), dann könnte eine Nachricht eines Arztes an seinen Kollegen so etwas enthalten


<имя пациента>bla bla
<аллергия на лекарство>bla bla bla

In dieser Situation ist es nicht länger schwierig, ein Programm für einen beliebigen Computer zu schreiben, damit dieser diese standardisierten Krankenakten erkennen und diese im wahrsten Sinne des Wortes lebenswichtigen Informationen in seine Datenbank eingeben kann.

So wie HTML entwickelt wurde, um es jedem zu ermöglichen, Internetdokumente zu lesen, gibt uns XML ein Esperanto, das jeder lesen und schreiben kann, trotz einer Vielzahl inkompatibler Plattformen. Ja, selbst aus der Sicht eines normalen Menschen hat XML (im Gegensatz zu anderen Datenformaten) eine höhere semantische Belastung, da es nichts enthält, was wie unlesbarer Text aussehen würde.

Die Stärke der Vielseitigkeit von XML beruht auf einem minimalen Satz sorgfältig ausgewählter Regeln. Erstens bilden Tags immer ein Paar und umgeben den Text, auf den sie angewendet werden, in Klammern. Zweitens können gepaarte Tags wie Anführungszeichen ineinander verschachtelt werden, sodass Sie komplexe mehrstufige Strukturen aufbauen können.

Die Verschachtelungsregel erzwingt automatisch die Einfachheit in jedem XML-Dokument und erzeugt eine Struktur, die in der Informatik als Baum bekannt ist. Ähnlich wie bei einem Stammbaum ist jedes Grafik- oder Textelement eines Dokuments der Vater, Sohn oder Bruder (Elternteil, Kind, Geschwister) eines anderen Elements, und diese Beziehung ist immer einzigartig. Natürlich beschreiben Bäume nicht die gesamte Vielfalt an Datenstrukturen, sie decken jedoch die meisten typischen Anwendungsfälle des Computers ab. Darüber hinaus sind Bäume für Programmierer äußerst praktisch. Es ist kein Problem, ein kleines Stück Code zu schreiben, um Transaktionen neu anzuordnen oder einen vollständig verständlichen Beleg anzuzeigen, wenn der Beleg als Baum dargestellt wird.

Die zweite Quelle der universellen Leistungsfähigkeit von XML ist die Abhängigkeit vom neuen Unicode-Standard, einem Kodierungssystem, das die Vermischung von Texten in allen wichtigen Sprachen der Welt ermöglicht. Im Gegenteil, in HTML, wie in den meisten Textverarbeitungsprogrammen, kann ein Dokument in der Regel nur in einer bestimmten Sprache vorliegen, egal in welcher – Englisch, Japanisch oder Arabisch.
Und wenn das Programm die Kodierung einer bestimmten Sprache nicht kennt, können Sie das Dokument (in HTML) vergessen. Es kann noch schlimmer sein: Beispielsweise können in Taiwan geschriebene Programme aufgrund inkonsistenter Kodierungen häufig keine Texte lesen, die für das chinesische Festland bestimmt sind. Im Fall von XML kann das Programm jede Kombination von Kodierungen verarbeiten, wenn es weiß, wie es richtig damit umgeht. Somit ermöglicht XML nicht nur den Datenaustausch zwischen verschiedenen Computerplattformen, sondern ermöglicht auch die Überwindung nationaler und kultureller Barrieren.


Ende des weltweiten Wartens

Mit dem Aufkommen von XML dürfte das Web viel reaktionsfähiger werden. Heutzutage ist alles, was Computergeräte im Netzwerk können, egal ob leistungsstarke Desktop-PCs oder Pocket-Organizer, nichts anderes, als ein Formular per „GET“ zu empfangen, es auszufüllen und es dann währenddessen an den Webserver hin und her zu senden Die Arbeit mit dem Formular wird nicht abgeschlossen. XML gibt uns die Möglichkeit, die Struktur und Semantik der Daten in das Formular zu übertragen, und daher können alle diese Geräte die grundlegende Verarbeitung am richtigen Ort und sofort durchführen. Dies reduziert nicht nur die Belastung der Server, sondern soll auch zu einer deutlichen Reduzierung des Netzwerkverkehrs führen.

Stellen Sie sich zur Veranschaulichung vor, Sie nutzen ein Online-Reisebüro, um am 4. Juli einen Flug von London nach New York zu finden. Höchstwahrscheinlich wird Ihnen eine Liste angezeigt, die um ein Vielfaches länger ist, als auf den Bildschirm passt. Durch die Angabe genauerer Parameter wie Abflugzeit, Preis oder Fluggesellschaft lässt sich diese Liste verkürzen, allerdings „belasten“ Sie in diesem Fall einfach den Reisebüro-Server mit Ihrer Anfrage und müssen auf eine Antwort warten. Wenn Ihnen diese lange Liste von Flügen jedoch in XML zur Verfügung gestellt würde, könnte das Büro sie mit einem kleinen Java-Applet ergänzen, mit dessen Hilfe Sie die unnötigen Flüge sofort und einfach sortieren und herausfiltern können, ohne auf irgendeine Interaktion zurückgreifen zu müssen mit dem Server. Multiplizieren Sie dies mit Millionen von Webbenutzern, und der Gesamteffekt ist beeindruckend.

Je mehr Online-Informationen mit branchenspezifischen XML-Tags versehen sind, desto einfacher ist es, das Gesuchte zu finden. Heutzutage wird Sie eine Internetsuche nach „Jobs für einen Börsenmakler“ mit einer Lawine von Anzeigen überschwemmen, aber es wird wahrscheinlich nur wenige davon zum Thema Arbeit geben – die meisten Arbeiten sind auf kostenlosen Schwarzen Brettern von Zeitungsseiten versteckt, die Roboter durchsuchen arbeite nicht gerne mit. Und jetzt erstellt die Newspaper Association of America eine eigene Anzeigenauszeichnungssprache in XML, die verspricht, den Suchprozess deutlich effizienter zu gestalten.

Es spielt keine Rolle, ob es sich nur um einen Zwischenschritt handelt. Bibliothekare kennen seit langem Möglichkeiten, schnell etwas zu finden – indem sie nicht auf Dokumente schauen, sondern auf deren kompakte Schlüsselbeschreibungen, die nur auf die Quellen selbst verweisen. Dabei handelt es sich nämlich um Kataloge mit Muster in Form von Bibliotheksausweisen. Solche Informationen über Informationen werden „Metadaten“ genannt.

Deshalb wurde im XML-Projekt von Anfang an der Schaffung eines begleitenden Metadatenstandards eine wichtige Rolle beigemessen. Das Resource Description Framework (RDF) vom Februar sollte die gleiche Rolle spielen wie Karteikarten für Bibliotheksbücher für Informationen im Web. Da sich RDF-Metadaten im gesamten Web verbreiten, wird die Suche viel schneller und relevanter als bisher. Es gibt keine Bibliothekare im Web, aber jeder Webmaster möchte auch, dass seine Website leicht gefunden wird. Daher gehen wir davon aus, dass RDF, sobald die Leute seine Leistungsfähigkeit entdecken, einen großen Einfluss auf das Internet haben wird.

Selbstverständlich können Informationen auch ohne Suche eingeholt werden. Schließlich ist das Web Hypertext – Milliarden von Seiten voller Hyperlinks – diese unterstrichenen Wörter, auf die man einfach klicken muss, um zu einer anderen Seite weitergeleitet zu werden. In XML wurde auch der Hyperlink-Mechanismus erheblich verbessert. Die XML-Linking-Spezifikation namens XLink, die das W3C bis Ende des Jahres vorbereitet, wird es dem Benutzer ermöglichen, aus mehreren Zielen auszuwählen. Eine andere Art von Hyperlink ermöglicht es Ihnen, beim Klicken direkt einen Text oder ein Bild zu erhalten, sodass der Besucher die Seite nicht verlassen muss.

Der vielleicht nützlichste Teil von XLink wird der Teil der Spezifikation sein, der es Autoren ermöglicht, auf indirekte Links zurückzugreifen und statt der Seiten selbst diese an eine Art zusammenfassende Datenbank zu senden. Wenn der Autor also die Adresse der Seite geändert hat, ist es durch einfaches Bearbeiten eines Eintrags in einer solchen Datenbank einfach, alle Links zu seiner Seite zu aktualisieren. Dies wird Ihnen helfen, die immer häufiger auftretenden „404-Datei nicht gefunden“-Meldungen loszuwerden, die auf einen „defekten“ Link hinweisen.

Die Kombination aus effizienterer Verarbeitung, präziserer Suche und flexiblerer Verknüpfung wird die Struktur des Webs revolutionieren und völlig neue Möglichkeiten des Zugriffs auf Informationen eröffnen. Für Benutzer wird dieses neue Netzwerk deutlich schneller, leistungsfähiger und nützlicher sein als das heutige Netzwerk.


Zusammenarbeit erforderlich

Natürlich ist nicht alles so einfach. XML ermöglicht es jedem, eine neue Sprache auf seine eigene Weise zu entwerfen, aber die Erstellung einer guten Sprache ist eine Aufgabe, deren Schwierigkeit nicht unterschätzt werden sollte. Die Entwicklung einer Sprache ist nur der Anfang: Es ist naiv zu erwarten, dass die Bedeutung Ihrer Tags für andere Menschen offensichtlich ist, bis Sie ein Handbuch für die Sprache bereitgestellt haben, und dass sie für Computer klar ist, bis Sie funktionierende Programme geschrieben haben mit den Tags der Sprache.

Es ist nicht schwer zu erklären, warum das so ist. Wenn alles, was nötig wäre, um einem Computer beizubringen, Bestellungen zu verarbeiten, Tags wären, dann wäre XML nicht nötig. Es wären nicht einmal Programmierer nötig, da Computer intelligent genug sind, um alles selbst zu erledigen.

Warum wir XML brauchen, ist keine Zauberei, sondern Effizienz. XML legt Grundregeln fest, die die Details der Programmierung auf einer Ebene vereinfachen – so dass sich Personen mit ähnlichen Interessen auf die andere harte Nuss konzentrieren können, die es zu knacken gilt – Vereinbarungen darüber, wie sie die Daten, die sie austauschen möchten, genau formatieren möchten. Dies ist ein sehr schwieriges Problem, wenn auch nicht neu.

Und es wird solche Vereinbarungen geben, denn die zunehmende Inkompatibilität der Computerplattformen führt zu Terminverzögerungen, finanziellen Einbußen und führt zu Verwirrung in fast allen Tätigkeitsbereichen. Menschen wollen sich austauschen und Dinge erledigen, ungeachtet der Tatsache, dass jeder unterschiedliche Computer hat – und bis dies Wirklichkeit wird, ist die gemeinsame Entwicklung privater (für verschiedene Tätigkeitsfelder) Sprachen noch ein weiter Weg . Die Flut neuer Akronyme, die auf „ML“ enden, zeigt jedoch den unbestreitbaren Innovationsgeist, den XML in Wissenschaft, Wirtschaft und Bildung gebracht hat.

Beim Erstellen einer neuen XML-Auszeichnungssprache müssen sich die Ersteller auf drei Dinge einigen: welche Tags vorhanden sein werden, wie sie ineinander verschachtelt werden können und wie sie verarbeitet werden sollen. Die ersten beiden Punkte – Sprachwörterbuch und Struktur – werden nun mittels DTD (Document Type Definition) kodiert. Der XML-Standard verpflichtet Sprachentwickler nicht dazu, auf DTDs zurückzugreifen, aber die meisten neuen Sprachen werden offenbar DTD-Beschreibungen haben – das macht es für Programmierer einfacher, Programme zu schreiben, die dieses Markup verstehen und daraus etwas Sinnvolles extrahieren. Wir benötigen außerdem Handbücher, die die Bedeutung aller Tags in menschlicher Sprache beschreiben. HTML verfügt beispielsweise über eine DTD-Beschreibung, es gibt aber auch Hunderte von Seiten bekannter HTML-Handbücher, die Programmierer bei der Entwicklung von Browsern und anderen Programmen für das Web konsultieren.


Essay über Stil

Für Benutzer kommt es vor allem darauf an, was das Programm kann und nicht darauf, was in seiner Beschreibung steht. Im Allgemeinen bevorzugen die Leute, dass Programme es ihnen ermöglichen, XML-codierte Informationen in lesbarer Form anzuzeigen. Aber in den XML-Tags selbst gibt es keinen speziellen Markup-Hinweis. wie Daten auf einem Bildschirm oder einem gedruckten Blatt dargestellt werden sollen.

Für Verlage, die „einmal schreiben und überall veröffentlichen“ möchten, ist es das Wichtigste, eine Veröffentlichung „zu gebären“ und sie dann in eine Vielzahl von Arten von Veröffentlichungen zu „gießen“, sowohl in gedruckter als auch in elektronischer Form. Dabei hilft ihnen XML: Inhalte werden mit beschreibenden Tags gekennzeichnet, die unabhängig von der Rendering-Umgebung sind. Als nächstes kann der Verlag die Präsentationsregeln in Form sogenannter formalisieren. Stylesheets, die seine Arbeit automatisch für verschiedene Geräte und Umgebungen „stilisieren“. Der für diese Zwecke entwickelte Standard einer solchen XML-Sprache heißt Extensible Stylesheet Language (XSL).

Die neuesten Versionen des Browsers können XML-Dokumente lesen, die entsprechenden Stildateien auswählen und diese zum Sortieren und Formatieren von Informationen auf dem Bildschirm verwenden. Der Leser erkennt möglicherweise nicht einmal, dass er es mit XML und nicht mit HTML zu tun hat, es sei denn, er bemerkt, dass Websites mit XML schneller und einfacher zu verwenden sind.

Auch sehbehinderte Menschen profitieren von den XSL-Dokumentveröffentlichungsprinzipien, da sie mit XSL XML in Blindenschrift oder per Sprache lesen können. Diese Vorteile gelten auch für andere: Ein Handelsreisender beispielsweise, der bequem von seinem Auto aus im Internet surfen möchte, würde es wahrscheinlich ganz bequem finden, Seiten mit Ton anzuhören.

Obwohl der Kern des Netzwerks zunächst aus wissenschaftlichen und pädagogischen Programmen bestand, ist das heutige Netzwerk bereits kommerziell (oder man könnte sagen kommerzielle Erwartungen) und speichert Treibstoff für einen schnellen Start. Jeder erinnert sich an die jüngste Resonanz, die durch den Anstieg der Online-Verkäufe hervorgerufen wurde, aber natürlich auch daran, wie schnell Geschäftsleute online miteinander interagieren. Der Warenfluss großer Hersteller schreit geradezu nach Automatisierung im Netzwerk. Heutige Geschäftssysteme basieren jedoch auf komplexen Programm-zu-Programm-Interaktionen, und in der Praxis funktioniert dies nur sehr schlecht, da der Erfolg eine Einheitlichkeit der Verarbeitungsprozesse erfordert, die noch lange nicht erreicht ist.

Seit Jahrhunderten wickeln Menschen erfolgreich Geschäfte ab, indem sie Standarddokumente austauschen: Bestellungen, Rechnungen, Erklärungen, Quittungen usw. usw. Die Dokumente funktionierten für das Unternehmen, und niemand verlangte, dass eine der beteiligten Parteien die inneren Abläufe der anderen kennt. Jedes Dokument wurde genau so weit gezeigt, wie es dem Informationsempfänger hätte gezeigt werden sollen, und nicht mehr. Offenbar ist der Austausch von Dokumenten auch die korrekteste Art, Geschäfte im Internet abzuwickeln. Aber das war überhaupt nicht die Aufgabe, für die HTML erstellt wurde.

Umgekehrt ist XML speziell für den Austausch von Dokumenten konzipiert, und es ist klar, dass die Grundlage des elektronischen Geschäftsverkehrs auf Vereinbarungen basieren wird, die in Millionen von im Internet verbreiteten XML-Dokumenten zum Ausdruck kommen.

Somit sollte das XML-erweiterte Web für seine Benutzer ein schneller, benutzerfreundlicher und besserer Geschäftsort werden. Webmaster und Webdesigner benötigen noch mehr XML. Heerscharen von Programmierern werden Kenntnisse der neuen XML-Sprachen „in vollem Umfang“ benötigen. Und obwohl die Tage der autodidaktischen Hacker (die Autoren meinten den besten Sinn dieses Wortes) noch andauern, ist ihre Bevölkerung bereits bedroht.

Der Webdesigner von morgen muss sich nicht nur mit der Produktion von Texten und Grafiken auskennen, sondern auch mit der Konstruktion mehrschichtiger, voneinander abhängiger Systeme auf der Grundlage von DTDs, Datenbäumen, Hyperlinkstrukturen, Metadaten und Stilkomponenten – einer starken und fortschrittlichen Infrastruktur der Web der zweiten Generation.