DTD Einführung
Die Dokumenttypdefinition (DTD) kann die zulässigen Bausteine eines XML-Dokuments definieren. Sie verwendet eine Reihe zulässiger Elemente, um die Struktur des Dokuments zu definieren.
Eine DTD kann inline in einem XML-Dokument deklariert oder als externe Referenz eingebunden werden.
Interne DOCTYPE-Deklaration
Wenn die DTD in Ihrer XML-Quelldatei enthalten ist, sollte sie unter Verwendung der folgenden Syntax in eine DOCTYPE-Deklaration eingebettet werden:
XML-Dokumentbeispiel mit einer DTD (bitte in IE5 und höheren Versionen öffnen und View Source auswählen):
<!DOCTYPE note [
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
]>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Erinnerung</heading>
<body>Vergiss mich dieses Wochenende nicht</body>
</note>
Öffnen Sie diese XML-Datei in Ihrem Browser und wählen Sie den Befehl "View Source".
Die oben stehende DTD wird wie folgt erläutert:
- !DOCTYPE note(Zeile 2) definiert, dass dieses Dokument einnote-Dokumenttyp ist.
- !ELEMENT note(Dritte Zeile) Definition:noteDas Element hat vier Elemente: "to, from, heading, body".
- !ELEMENT to(Vierte Zeile) Definition:toDas Element ist vom Typ "#PCDATA".
- !ELEMENT from(Fünfte Zeile) Definition:fromDas Element ist vom Typ "#PCDATA".
- !ELEMENT heading(Sechste Zeile) Definition:headingDas Element ist vom Typ "#PCDATA".
- !ELEMENT body(Siebte Zeile) Definition:bodyDas Element ist vom Typ "#PCDATA".
Externe Dokumentdeklaration
Wenn sich die DTD außerhalb der XML-Quelldatei befindet, sollte sie mit der folgenden Syntax in eine DOCTYPE-Definition eingebettet werden:
Dieses XML-Dokument ist dasselbe wie das obige XML-Dokument, hat aber eine externe DTD: (, und wählen Sie den Befehl "View Source" aus.)
<!DOCTYPE note SYSTEM "note.dtd">
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Erinnerung</heading>
<body>Vergiss mich dieses Wochenende nicht!</body>
</note>
Dies ist die Datei "note.dtd", die die DTD enthält:
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
Warum eine DTD verwenden?
Mit einer DTD kann jede Ihrer XML-Dateien eine Beschreibung ihres eigenen Formats enthalten.
Mit einer DTD können unabhängige Gruppen konsistent eine Standard-DTD verwenden, um Daten auszutauschen.
Und Ihre Anwendung kann auch eine Standard-DTD verwenden, um Daten zu validieren, die von externen Quellen empfangen wurden.
Sie können auch eine DTD verwenden, um Ihre eigenen Daten zu validieren.
Weitere Erweiterungen