XSD Hoe om?
XML-dokumente kan 'n verwysing na 'n DTD of na 'n XML-skema hê.
'n Eenvoudige XML-dokument
Kyk na hierdie eenvoudige XML-dokument genaamd "note.xml":
<?xml version="1.0"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
'n DTD-lêer
Die volgende voorbeeld is 'n DTD-lêer genaamd "note.dtd" wat die elemente van die XML-dokument hierbo ("note.xml") definieer:
<!ELEMENT note (to, from, heading, body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
Die eerste reël definieer die nootelement om vier kinderelemente te hê: "na, van, opskrif, liggaam".
Reël 2-5 definieer die na, van, opskrif, liggaamselemente om van tipe "#PCDATA" te wees.
Na XML-skema
Die volgende voorbeeld is 'n XML-skema-lêer genaamd "note.xsd" wat die elemente van die XML-dokument hierbo ("note.xml") definieer:
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="https://www.w3schools.com"
xmlns="https://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>
Die nootelement is 'n komplekse tipe omdat dit ander elemente bevat. Die ander elemente (na, van, opskrif, liggaam) is eenvoudige tipes omdat hulle nie ander elemente bevat nie. Jy sal meer oor eenvoudige en komplekse tipes in die volgende hoofstukke leer.
'n Verwysing na 'n DTD
Hierdie XML-dokument het 'n verwysing na 'n DTD:
<?xml version="1.0"?>
<!DOCTYPE note SYSTEM
"https://www.w3schools.com/xml/note.dtd">
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
'n Verwysing na 'n XML-skema
Hierdie XML-dokument het 'n verwysing na 'n XML-skema:
<?xml version="1.0"?>
<note
xmlns="https://www.w3schools.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://www.w3schools.com/xml note.xsd">
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>