Výuka DTD
Co je DTD?
DTD je definice typu dokumentu.
DTD definuje strukturu a právní prvky a atributy dokumentu XML.
Proč používat DTD?
S DTD se mohou nezávislé skupiny lidí dohodnout na standardním DTD pro výměnu dat.
Aplikace může použít DTD k ověření platnosti dat XML.
Interní prohlášení DTD
Pokud je DTD deklarováno uvnitř souboru XML, musí být zabaleno do definice <!DOCTYPE>:
XML dokument s interním DTD
<?xml version="1.0"?>
<!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>Reminder</heading>
<body>Don't forget me this weekend</body>
</note>
Zobrazit soubor XML »
V souboru XML vyberte "zobrazit zdroj" pro zobrazení DTD.
Výše uvedené DTD je interpretováno takto:
- !DOCTYPE note definuje, že kořenový prvek tohoto dokumentu je note
- !ELEMENT note definuje, že prvek poznámky musí obsahovat čtyři prvky: "to,from,heading,body"
- !ELEMENT to definuje prvek to typu "#PCDATA"
- !ELEMENT from definuje prvek from typu "#PCDATA"
- Nadpis !ELEMENT definuje prvek nadpisu typu "#PCDATA"
- !ELEMENT body definuje element těla typu "#PCDATA"
Externí DTD deklarace
Pokud je DTD deklarováno v externím souboru, musí definice <!DOCTYPE> obsahovat odkaz na soubor DTD:
XML dokument s odkazem na externí DTD
<?xml version="1.0"?>
<!DOCTYPE note SYSTEM "note.dtd">
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Zobrazit soubor XML »
A zde je soubor "note.dtd", který obsahuje DTD:
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>