Hallo Jo
Wo sind in der Praxis die Einsatzmöglichkeiten von XML? In welchen Fällen macht es überhaupt Sinn eine eigene DTD zu schreiben? XML dient doch hauptsächlich dazu Daten und Informationen zu strukturieren und zu ordnen. Dies ist jedoch meines Wissens auch die Aufgabe von relationalen Datenbanken.
Sagen wir so - Datenbanken beschreiben Datenstrukturen, die sich in Datensaetze aufteilen lassen, also so eine Art Serien-Charakter haben. Bei XML ist das nicht notwendig so. XHTML in der Form wie HTML benutzt ist ja auch ein XML-Derivat, aber es dient der Strukturierung von Textdokumenten. Eine Vektorgrafik beispielsweise, ein Musikstueck oder ein Theaterstueck hat auch erkennbare Datenstrukturen, die aber nicht unbedingt den "Serien-Charakter" von datensatzorientierten Informationen haben. XML eignet sich durchaus auch fuer die Beschreibung datensatzartiger Strukturen - darueber hinaus aber eben auch fuer die Beschreibung "beliebiger" anderer Strukturen.
Hier ergibt sich auch die Möglichkeit der Indizierung und weitere wartungstechnische Vorteile.
XML kann keine Datenbank-Systeme ersetzen - dafuer ist es nicht gedacht. Eher dafuer, wie die Nutzdaten letztendlich gespeichert werden. Auch eine Datenbank muss die Datensaetze unabhaengig von den erstellten Indizes "irgendwie" speichern. Das koennte z.B. in XML geschehen.
oder ist es eher als "small" Version einer Strukturierung der Daten ohne eine Datenbank zu sehen?
Auch das. Es gibt ja auch kleine, aus wenigen Datensaetzen bestehende Datenstrukturen. Die Telefonliste einer Firma mit 100 Mitarbeitern ist ein Beispiel. Oder die Abfahrtszeiten einer U-Bahn-Linie an einer bestimmten Haltestelle an Werktagen.
Den praktischen Einsatz von XML habe ich bisher nur im neuen Office Format von StarOffice 6.0 gesehen. Für Office Appplikationen finde ich so etwas wirklich bestens (Plattformübergreifend und Austausch mit anderen System / Programmen ist möglich) Wo seht ihr denn sonst noch Einsatzmöglichkeiten bzw. kennt ihr andere Lösungen.
Die Vorteile von XML sind ja bekannt:
* ist auf keine bestimmte Editier-Software angewiesen
* laesst sich prima mit Scripts generieren
* Datenhaltung ist getrennt von der Datennutzung, d.h. aus der gleichen Datenquelle kann man z.B. ein Buch oder eine Website generieren.
Nur bei Formaten, die stark komprimieren, um ihren Nutzen auszuspielen, sehe ich keinen Anwendungsfall von XML - also z.B. bei Pixelgrafik-Formaten, die nur durch Komprimier-Algorithmen akzeptable Dateigroessen erreichen. Bei allen typischen DTP- und Textformaten, Vektorgrafikformaten, Spreadsheetformaten usw. halte ich XML durchaus fuer geeignet.
viele Gruesse
Stefan Muenz