book cover

Buchrezension "XML Schema"

Erschienen in: XML & Web Services Magazin, 2004(1):11, Januar 2004

Erik Wilde

Eric van der Vlist (Deutsche Übersetzung von Gisbert Selke). XML Schema. O'Reilly & Associates, Sebastopol, California, Januar 2003, ISBN 3-89721-345-1

XML Schema war bei seinem Erscheinen im Mai 2001 die erste Spezifikation des W3C, die nicht mehr einfach gelesen und verstanden werden konnte (heute teilt sich XML Schema diese eher zweifelhafte Ehre mit vielerlei Spezifikationen aus dem Bereich XQuery). Um XML Schema zu verstehen, sind neben Experimenten und der Beschäftigung mit dem komplexen Standard selber eine gute Einführung und eine ausführliche Referenz unerlässlich.

Das vorliegende Buch behandelt den komplexen und anfangs verwirrend grossen Sprachumfang von XML Schema in der bewährten Weise: Zunächst werden die simplen und die komplexen Typen mit ihren Typableitungsmechanismen behandelt. Darauf folgen die Identity Constraints, ein wegen seiner Kompaktheit angenehm übersichtlicher Teil des Standards. Ein recht kurzer Abschnitt behandelt dann die Möglichkeiten der Modularisierung von XML Schemas. Namespace Handling ist der nächste grosse im Buch behandelte Block, und da jede halbwegs ernstzunehmende XML-Anwendung heute Namespaces verwendet, wird diesem Aspekt berechtigterweise einiger Platz eingeräumt.

Die Modellierungsaspekte von XML Schema kommen als Abschluss des Buches vielleicht etwas zu kurz, doch hebt sich dieser Teil wohltuend von anderen Büchern ab (z.B. "Definitive XML Schema" von Priscilla Walmsley), die dieses Thema praktisch komplett ignorieren. Der Gerechtigkeit halber muss allerdings gesagt werden, dass es momentan noch kein Buch auf dem Markt gibt, dass wirklich als komplette und gelungene Beschreibung des Datenmodellierungsaspektes von XML Schema gelten könnte, mit all den Facetten von modularem Design, Wiederverwendbarkeit, Erweiterbarkeit, robuster darauf basierender Software, und der Integration mit anderen Schemasprachen, um im Datenmodell so viele Aspekte wie möglich deklarativ beschreiben zu können.

Ein gut 100 Seiten langer Referenzteil rundet das Buch ab. Allein schon dieser Teil ist einen guten Teil des Buchpreises wert, wobei sehr schade ist, dass der Referenzteil keine direkten Verweise beinhaltet, in welchen Kapiteln oder Abschnitten die Konzepte verwendet oder näher beschrieben werden.

Völlig fehlt in dem Buch ein Hinweis darauf, dass XML Schema nicht in XML definiert ist, sondern auf einem Komponentenmodell basiert, für das es eine XML-Syntax gibt. Eine kurze Erklärung dieses Sachverhaltes macht einige Aspekte von XML Schema einfacher verständlich, und kann auch gut als Überleitung zu dem Thema dienen, dass es neben der wirklich nicht gelungenen XML-Syntax für XML Schema eine zunehmende Anzahl von anderen, meist graphischen, Repräsentation gibt, die in der Praxis weit benutzerfreundlicher sind als die XML-Syntax.

Sprachlich ist das Buch oftmals etwas sehr trocken geraten, und insbesondere mehr Vergleiche zu bekannten Konzepten und Illustrationen von komplexen Zusammenhängen hätten das Buch deutlich leichter zugänglich gemacht. Auf der anderen Seite ist der präzise und kompakte Stil teilweise nützlich, z.B. wenn man im (recht gelungenen) Index auf ein gesuchtes Thema gestossen ist und schnell auf der Suche nach konkreter Information ist. Bemerkenswert ist weiterhin, dass die sprachliche Qualität des Buches durch die Übersetzung eher zu- als abgenommen hat, ein Effekt, der gerade bei Informatik-Büchern sonst praktisch nie zu beobachten ist.

Schade ist, dass das Buch nicht genauer auf die Parallelen von etablierten Datenmodellierungstechniken im Bereich des Datenbankdesigns und XML eingeht. Für viele IT-Profis wäre ein Vergleich von konzeptionellen, logischen und physischen Modellen aus der Datenbankwelt und vergleichbaren Mechanismen im Bereich XML ein guter und effizienter Einstieg. Allerdings ist XML Schema nicht ganz einfach in diese Welt einzuordnen, denn es bietet recht abstrakte Mechanismen wie Typableitungen, andererseits aber auch extrem spezifische XML-Steuerung wie Whitespace Handling. Das Buch beschreibt all diese Mechanismen korrekt und gut verständlich, aber Bewertungen und Einordnungen aus Modellierungssicht wären hilfreiche und interessante Ergänzungen.

Als Fazit lässt sich feststellen, dass "XML Schema" von Eric van der Vlist ein empfehlenswertes Buch ist, dass jeder anschauen sollte, der sich mit den vielen und komplexen Details von XML Schema auseinandersetzen will. Zu hoffen ist, dass die nächste Auflage (vielleicht für XML Schema 1.1) um etwas mehr Lebendigkeit und besonders Themen und Material aus dem Bereich der Modellierung ergänzt wird. Dies könnte "XML Schema" dann zu einem konkurrenzlos gelungenen Buch machen.


Last modification:
Thursday, 23-Jun-2005 10:02:27 CEST
WCAG 1.0 AA Valid CSS! Valid XHTML 1.0!