XML DTD
XML dokument se správnou syntaxí se nazývá „dobře vytvořený“.
Dokument XML ověřený podle DTD je „dobře vytvořený“ a „platný“.
Co je DTD?
DTD znamená Definice typu dokumentu.
DTD definuje strukturu a právní prvky a atributy dokumentu XML.
Platné dokumenty XML
„Platný“ dokument XML je „dobře zformovaný“ a také odpovídá pravidlům DTD:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE note SYSTEM "Note.dtd">
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Výše uvedená deklarace DOCTYPE obsahuje odkaz na soubor DTD. Obsah souboru DTD je zobrazen a vysvětlen níže.
XML DTD
Účelem DTD je definovat strukturu a právní prvky a atributy dokumentu XML:
Note.dtd:
<!DOCTYPE note
[
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
]>
Výše uvedené DTD je interpretováno takto:
- !DOCTYPE note - Definuje, že kořenovým prvkem dokumentu je poznámka
- !ELEMENT note – Definuje, že prvek poznámky musí obsahovat prvky: „to, from, title, body“
- !ELEMENT to – definuje prvek to typu „#PCDATA“
- !ELEMENT from - Definuje prvek from typu "#PCDATA"
- !ELEMENT header – Definuje element nadpisu typu „#PCDATA“
- !ELEMENT body - Definuje prvek těla typu "#PCDATA"
Tip: #PCDATA znamená analyzovatelná znaková data.
Použití DTD pro deklaraci entity
Deklaraci DOCTYPE lze také použít k definování speciálních znaků nebo řetězců používaných v dokumentu:
Příklad
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE note [
<!ENTITY nbsp
" ">
<!ENTITY writer "Writer: Donald Duck.">
<!ENTITY copyright "Copyright: W3Schools.">
]>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
<footer>&writer; ©right;</footer>
</note>
Zkus to sám "
Tip: Entita má tři části: začíná ampersandem (&), pak následuje název entity a končí středníkem (;).
Kdy použít DTD?
S DTD se mohou nezávislé skupiny lidí dohodnout na použití standardního DTD pro výměnu dat.
Pomocí DTD můžete ověřit, že data, která obdržíte z vnějšího světa, jsou platná.
K ověření vlastních dat můžete také použít DTD.
Pokud chcete studovat DTD, přečtěte si prosím náš DTD Tutorial .
Kdy NEPOUŽÍVAT DTD?
XML nevyžaduje DTD.
Když experimentujete s XML nebo když pracujete s malými soubory XML, může být vytváření DTD ztrátou času.
Pokud vyvíjíte aplikace, počkejte, dokud nebude specifikace stabilní, než přidáte DTD. V opačném případě může váš software přestat fungovat kvůli chybám ověření.