Um herauszufinden, wo XML am besten eingesetzt wird, sollten Sie die Hauptvorteile von XML beachten. Einige habe ich bereits erwähnt. In diesem Abschnitt werden die Vorteile von XML gegenüber anderen Markup-Languages oder ähnlichen Technologien ausführlicher beschrieben.
Bei der Arbeit mit XML vergessen Entwickler manchmal, dass das X für "Extensible", also "erweiterbar", steht. Das bedeutet, dass Sie beliebig viele zusätzliche Tags definieren können, ohne dass die Anwendung abstürzt. Sie können diesem Element zum Beispiel untergeordnete Elemente hinzufügen:
<employee>
<name>John Doe</name>
<job>Software Analyst</job>
<salary>2000</salary>
</employee>
Danach sieht das Element folgendermaßen aus:
<employee> <name>John Doe</name> <job>Software Analyst <responsibility>Write technical specifications</responsibility> <responsibility>Translate client requirements into software requirements</responsibility> </job> <hire_date>Jun 25, 2005</hire_date> <salary>2000</salary> </employee>
Die Anwendung, die dieses XML-Dokument liest, "versteht", auf welchen Angestellten (employee) Bezug genommen wird.
Portabilität wird dadurch erreicht, dass Sie Tags und Attribute definieren können. Es sind keine besonderen Bibliotheken oder Anwendungsserver erforderlich, um ein XML-Dokument zu "lesen" (obwohl Sie Ihre Entwicklungsumgebung ein bisschen konfigurieren müssen, um sie XML-bereit zu machen, wie ich in einem späteren Artikel erläutern werde). XML-Dokumente sind normale Textdateien, weshalb anders als bei den meisten binären Dateien keine spezielle Software für die Interpretation benötigt wird. Sie können zum Beispiel einfach Windows Editor verwenden, um eine XML-Datei zu öffnen und zu bearbeiten.
Deshalb ist XML die erste Wahl, wenn Informationen über mehrere (nicht kompatible) Hardware- oder Softwareplattformen oder Anwendungen ausgetauscht werden sollen. Dies hat zur Entwicklung verschiedener XML-Anwendungen in der Kommunikationstechnologie geführt, darunter WML (Wireless Markup Language) und WAP (Wireless Application Protocol). WML ist eine XML-basierte Sprache, um Internetanwendungen für mobile Geräte wie etwa Handys und PDAs zu konfigurieren. Weitere Informationen über WML finden Sie in diesem Tutorial* des W3 Consortium.
Portabilität ist auch in Business-to-Business-Anwendungen praktisch, wenn viele Unternehmen große Mengen von Wirtschafts- und Finanzdaten auf plattformunabhängigem Weg austauschen müssen. Verschiedene Anwendungen setzen SOAP* (Simple Object Access Protocol) ein. Dies ist ein weit verbreitetes XML-basiertes Protokoll für den Austausch derartiger Informationen über das Internet. Diese XML-basierten Anwendungen zur gemeinsamen Informationsnutzung werden Web Services oder Webdienste genannt.
Mit XML können Sie Inhaltredundanz vermeiden. Ihre Kunden konzentrieren sich auf die Verwendung von HTML und CSS, um Layout und Darstellung zu definieren, die von Änderungen an den Informationen, die separat in einer XML-Datei gespeichert werden, nicht betroffen sind.
Zum Beispiel gibt ein Content Management System Dokumente in verschiedenen Formaten an die Endkunden weiter: HTML, PDF usw. Es ist jedoch nicht besonders sinnvoll, eine separate Version jedes Dokuments für die einzelnen Formate zu speichern. Der Inhalt würde dupliziert und somit wertvollen Speicherplatz belegen, sodass das CMS mit redundanten Informationen verstopft und dadurch langsamer wird. Durch den Einsatz einer XML-basierten Engine wird der Inhalt nur einmal gespeichert, dann extrahiert und im gewünschten Format angezeigt.
Für die Verarbeitung oder Formatierung sollte ein separates XSL-Dokument verwendet werden. XSL steht für Extensible Style sheet Language. Ein XSL-Stylesheet legt die Präsentation der Daten, die in einer XML-Datei enthalten sind, fest. Zum Zeitpunkt der Ausgabe (Anzeige) werden XML und XSL kombiniert, um die erforderliche Formatierung auf die Daten anzuwenden, so wie Sie HTML-Dokumente mithilfe von Cascading Style Sheets (CSS) formatieren können.
In kommenden Artikeln werde ich XSL ausführlicher behandeln und dann auch erläutern, wie Sie mit XML und XSL eine formatierte Ausgabe erstellen. Dreamweaver 8 bietet eine schnelle, visuelle Möglichkeit, eigene XSL-Stylesheets für eine benutzerdefinierte XML-Datei zu erstellen. Sie werden lernen, wie unkompliziert Sie einen RSS-Datenstrom in Ihre Site einbinden und Ihren Besuchern so aktuelle Nachrichten oder Updates anbieten können.
Wenn Sie sich die drei wichtigsten Vorteile von XML vor Augen halten, ist eigentlich offensichtlich, wo XML eingesetzt werden sollte:
XML wird bereits in großem Umfang eingesetzt, um Daten zwischen verschiedenen Datenbankanwendungen zu übertragen. Die meisten DBMS (darunter Microsoft Access oder phpMyAdmin*) ermöglichen bereits den Export von Datenbanktabellen als XML-Dateien.
RSS (Really Simple Syndication) ist einer der gebräuchlichsten Einsatzbereiche von XML. Bei RSS handelt es sich lediglich um ein weiteres XML-Dokumentformat, das für die Syndikation von Nachrichten und ähnlichen Inhalten entwickelt wurde. Bekannte Websites, die mit RSS arbeiten, sind zum Beispiel Community-Sites wie Wired* und Slashdot*, aber auch persönliche Blogs. Macromedia stellt die Artikel des Developer Centers als RSS-Feed* zur Verfügung. Der Hauptvorteil von RSS ist, dass Benutzer Ihre Inhalte in dem von ihnen gewünschten Format lesen und sie in ihre eigenen Websites importieren können. In einem anderen Artikel beschreibe ich die Verwendung von RSS-Datenströmen mit Dreamweaver 8.
Wenn Sie sich die Nachteile von XML ansehen, ist ebenso offensichtlich, wo XML nicht verwendet werden sollte.