filmov
tv
XML DTD und Schema

Показать описание
In diesem Kapitel schauen wie uns an, wie man Regeln für XML-Dokumente definieren kann. Dies kann über eine DTD oder über ein Schema erfolgen.
Eine Dokumenttypdefinition (DTD) ist ein Satz an Regeln, der benutzt wird, um Dokumente eines bestimmten Typs zu deklarieren.
Ein Dokumenttyp ist dabei eine Klasse ähnlicher Dokumente, wie beispielsweise Telefonbücher oder Inventurdatensätze. Die Dokumenttypdefinition besteht dabei vorwiegend aus Elementtypen, Attributen von Elementen und Entitäten.
In einer DTD wird dabei die Reihenfolge, die Verschachtelung der Elemente und die Art des Inhalts von Attributen festgelegt, und damit also die Struktur des Dokuments.
Eine DTD spezifiziert die Syntax einer Anwendung von SGML oder XML, wie die von ihnen abgeleiteten Sprachen HTML oder XHTML.
Diese Syntax ist in einer weniger generellen Form gehalten als die SGML- oder XML-Syntax.
Mit einer Elementtyp-Deklaration "Element" wird ein Element und sein möglicher Inhalt definiert.
In einem gültigen Dokument dürfen nur Elemente vorkommen, die in der DTD definiert sind.
Der Inhalt eines Elementes kann durch die Angabe anderer Elementnamen und durch einige Schlüsselwörter und Zeichen angegeben werden.
Diese Folie erläutert die verschiedenen Inhaltsmodelle und Symbole, die in einer Dokumenttypdefinition (DTD) verwendet werden, um die Struktur und den Inhalt von XML-Elementen zu definieren.
Zunächst wird das Symbol "P C Data" erklärt, das für Parsed Character Data steht und anzeigt, dass das Element Zeicheninhalt enthalten kann.
"Empty" zeigt an, dass das Element keinen Inhalt hat, während "any" angibt, dass das Element beliebigen Inhalt haben kann.
Das Komma wird verwendet, um die Reihenfolge von Unterelementen festzulegen, wohingegen das Pipe-Symbol für Alternativen steht und im Sinne von "entweder, oder" verwendet wird.
Klammern dienen zum Gruppieren von Elementen und ermöglichen komplexere Strukturen.
Das Sternsymbol zeigt an, dass das Element beliebig oft aufeinander folgen kann, während das Pluszeichen angibt, dass das Element mindestens einmal vorkommen muss.
Das Fragezeichen bedeutet, dass das Element entweder keinmal oder genau einmal vorkommen kann.
Wenn kein Stern, Pluszeichen oder Fragezeichen angegeben ist, muss das Element genau einmal vorkommen.
Diese Symbole und Regeln sind wesentliche Bestandteile einer DTD und ermöglichen die Definition der Struktur und des Inhalts von XML-Dokumenten.
Sie helfen sicherzustellen, dass die Dokumente gültig sind, indem sie Vorgaben für die erlaubten Elemente und deren Anordnung machen.
Hier sehen Sie, wie Attribute innerhalb einer DTD definiert werden.
Attribute werden in einer Attributliste festgelegt, die mit der angegebenen Deklaration beginnt.
Diese Attributliste enthält durch Leerzeichen oder Zeilenumbrüche getrennt die einzelnen Attributnamen, deren Typ und die Vorgaben für diese Attribute.
Mit den Attribut-Vorgaben kann angegeben werden, ob ein Attribut vorkommen muss, ob es optional ist oder einen festen Wert enthält und welcher Wert als Standardwert benutzt wird, falls das Attribut bei einem Tag nicht angegeben wird.
Entitäten bestehen aus Zeichenketten und können selber wieder Entitäten enthalten.
Eine Entität ist ein Platzhalter für Text oder Daten, der innerhalb eines XML-Dokuments verwendet werden kann.
Entitäten ermöglichen die Wiederverwendung und Modularisierung von Daten sowie die Einbindung von externen Inhalten.
Solche DTDs werden heutzutage nicht mehr so gern gesehen.
Lange Zeit war der Weg über eine DTD der einzige Weg zur Beschreibung einer XML-Datenstruktur.
Allerdings hat eine DTD gravierende Mängel: Zunächst fehlt es daran, Elementen und Attributen präzisen Datentypen zuweisen zu können.
Vergleichen Sie beispielsweise C-Data und P-C-Data mal mit den Java-Datentypen.
Eine DTD hat selbst keine XML-Syntax, sondern eher an die Sprache von regulären Ausdrücken angelehnt.
Daher kann eine DTD nicht von einem gewöhnlichen XML-Parser analysiert werden. Und eine DTD ist nicht zu namespaces kompatibel.
Eine XML Schema Definition (XSD) ist eine Empfehlung des W3C zum Definieren von Strukturen für XML-Dokumente.
Anders als bei den klassischen XML-DTDs wird die Struktur in Form eines XML-Dokuments beschrieben.
Darüber hinaus wird eine große Anzahl von Datentypen unterstützt.
XML Schema unterscheidet zwischen einfachen atomaren Datentypen und komplexen Datentypen.
Datentypen in XML Schema werden weiterhin klassifiziert in eingebaute beziehungsweise vordefinierte sowie benutzerdefinierte Datentypen.
XML Schema stellt einige grundlegende atomare Datentypen bereit.
Die atomaren Datentypen enthalten die klassischen Datentypen, wie sie auch in Programmiersprachen wie C, Java oder SQL spezifiziert sind:
Dies sind string, decimal, integer, float, boolean, date und time.
0:00 DTD
3:51 DTD Beispiele
6:31 Kritik zur DTD
7:08 XML-Schema
9:49 XML-Schema Beispiele
Eine Dokumenttypdefinition (DTD) ist ein Satz an Regeln, der benutzt wird, um Dokumente eines bestimmten Typs zu deklarieren.
Ein Dokumenttyp ist dabei eine Klasse ähnlicher Dokumente, wie beispielsweise Telefonbücher oder Inventurdatensätze. Die Dokumenttypdefinition besteht dabei vorwiegend aus Elementtypen, Attributen von Elementen und Entitäten.
In einer DTD wird dabei die Reihenfolge, die Verschachtelung der Elemente und die Art des Inhalts von Attributen festgelegt, und damit also die Struktur des Dokuments.
Eine DTD spezifiziert die Syntax einer Anwendung von SGML oder XML, wie die von ihnen abgeleiteten Sprachen HTML oder XHTML.
Diese Syntax ist in einer weniger generellen Form gehalten als die SGML- oder XML-Syntax.
Mit einer Elementtyp-Deklaration "Element" wird ein Element und sein möglicher Inhalt definiert.
In einem gültigen Dokument dürfen nur Elemente vorkommen, die in der DTD definiert sind.
Der Inhalt eines Elementes kann durch die Angabe anderer Elementnamen und durch einige Schlüsselwörter und Zeichen angegeben werden.
Diese Folie erläutert die verschiedenen Inhaltsmodelle und Symbole, die in einer Dokumenttypdefinition (DTD) verwendet werden, um die Struktur und den Inhalt von XML-Elementen zu definieren.
Zunächst wird das Symbol "P C Data" erklärt, das für Parsed Character Data steht und anzeigt, dass das Element Zeicheninhalt enthalten kann.
"Empty" zeigt an, dass das Element keinen Inhalt hat, während "any" angibt, dass das Element beliebigen Inhalt haben kann.
Das Komma wird verwendet, um die Reihenfolge von Unterelementen festzulegen, wohingegen das Pipe-Symbol für Alternativen steht und im Sinne von "entweder, oder" verwendet wird.
Klammern dienen zum Gruppieren von Elementen und ermöglichen komplexere Strukturen.
Das Sternsymbol zeigt an, dass das Element beliebig oft aufeinander folgen kann, während das Pluszeichen angibt, dass das Element mindestens einmal vorkommen muss.
Das Fragezeichen bedeutet, dass das Element entweder keinmal oder genau einmal vorkommen kann.
Wenn kein Stern, Pluszeichen oder Fragezeichen angegeben ist, muss das Element genau einmal vorkommen.
Diese Symbole und Regeln sind wesentliche Bestandteile einer DTD und ermöglichen die Definition der Struktur und des Inhalts von XML-Dokumenten.
Sie helfen sicherzustellen, dass die Dokumente gültig sind, indem sie Vorgaben für die erlaubten Elemente und deren Anordnung machen.
Hier sehen Sie, wie Attribute innerhalb einer DTD definiert werden.
Attribute werden in einer Attributliste festgelegt, die mit der angegebenen Deklaration beginnt.
Diese Attributliste enthält durch Leerzeichen oder Zeilenumbrüche getrennt die einzelnen Attributnamen, deren Typ und die Vorgaben für diese Attribute.
Mit den Attribut-Vorgaben kann angegeben werden, ob ein Attribut vorkommen muss, ob es optional ist oder einen festen Wert enthält und welcher Wert als Standardwert benutzt wird, falls das Attribut bei einem Tag nicht angegeben wird.
Entitäten bestehen aus Zeichenketten und können selber wieder Entitäten enthalten.
Eine Entität ist ein Platzhalter für Text oder Daten, der innerhalb eines XML-Dokuments verwendet werden kann.
Entitäten ermöglichen die Wiederverwendung und Modularisierung von Daten sowie die Einbindung von externen Inhalten.
Solche DTDs werden heutzutage nicht mehr so gern gesehen.
Lange Zeit war der Weg über eine DTD der einzige Weg zur Beschreibung einer XML-Datenstruktur.
Allerdings hat eine DTD gravierende Mängel: Zunächst fehlt es daran, Elementen und Attributen präzisen Datentypen zuweisen zu können.
Vergleichen Sie beispielsweise C-Data und P-C-Data mal mit den Java-Datentypen.
Eine DTD hat selbst keine XML-Syntax, sondern eher an die Sprache von regulären Ausdrücken angelehnt.
Daher kann eine DTD nicht von einem gewöhnlichen XML-Parser analysiert werden. Und eine DTD ist nicht zu namespaces kompatibel.
Eine XML Schema Definition (XSD) ist eine Empfehlung des W3C zum Definieren von Strukturen für XML-Dokumente.
Anders als bei den klassischen XML-DTDs wird die Struktur in Form eines XML-Dokuments beschrieben.
Darüber hinaus wird eine große Anzahl von Datentypen unterstützt.
XML Schema unterscheidet zwischen einfachen atomaren Datentypen und komplexen Datentypen.
Datentypen in XML Schema werden weiterhin klassifiziert in eingebaute beziehungsweise vordefinierte sowie benutzerdefinierte Datentypen.
XML Schema stellt einige grundlegende atomare Datentypen bereit.
Die atomaren Datentypen enthalten die klassischen Datentypen, wie sie auch in Programmiersprachen wie C, Java oder SQL spezifiziert sind:
Dies sind string, decimal, integer, float, boolean, date und time.
0:00 DTD
3:51 DTD Beispiele
6:31 Kritik zur DTD
7:08 XML-Schema
9:49 XML-Schema Beispiele