XSD Wie verwendet man?
XML-Dokumente können auf eine DTD oder ein XML-Schema verweisen.
Ein einfaches XML-Dokument:
Werfen Sie einen Blick auf dieses XML-Dokument namens "note.xml":
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Erinnerung</heading>
<body>Vergiss mich dieses Wochenende nicht!</body>
</note>
DTD-Datei
Das folgende Beispiel ist eine DTD-Datei namens "note.dtd", die die Elemente des obigen XML-Dokuments ("note.xml") definiert:
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
Zeile 1 definiert, dass das note-Element vier untergeordnete Elemente hat: "to, from, heading, body".
Die Zeilen 2-5 definieren die Typen der Elemente to, from, heading und body als "#PCDATA".
XML-Schema
Das folgende Beispiel ist eine XML-Schema-Datei namens "note.xsd", die die Elemente des obigen XML-Dokuments ("note.xml") definiert:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.w3schools.com"
xmlns="http://www.w3schools.com"
elementFormDefault="qualified">
<xs:element name="note">
<xs:complexType>
<xs:sequence>
<xs:element name="to" type="xs:string"/>
<xs:element name="from" type="xs:string"/>
<xs:element name="heading" type="xs:string"/>
<xs:element name="body" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Das note-Element ist ein komplexer Typ, weil es andere untergeordnete Elemente enthält. Die anderen Elemente (to, from, heading, body) sind einfache Typen, weil sie keine anderen Elemente enthalten. In den folgenden Kapiteln erfahren Sie mehr über komplexe Typen und einfache Typen.
Verweis auf die DTD
Diese Datei enthält einen Verweis auf die DTD:
<!DOCTYPE note SYSTEM
"http://www.w3schools.com/dtd/note.dtd">
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Erinnerung</heading>
<body>Vergiss mich dieses Wochenende nicht!</body>
</note>
Verweis auf das XML-Schema
Diese Datei enthält einen Verweis auf das XML-Schema:
<note
xmlns="http://www.w3schools.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.w3schools.com note.xsd">
<to>Tove</to>
<from>Jani</from>
<heading>Erinnerung</heading>
<body>Vergiss mich dieses Wochenende nicht!</body>
</note>