Che cosa è un DTD?
Un DTD è un Document Type Definition.
Un DTD definisce la struttura e gli elementi giuridici e gli attributi di un documento XML.
Perché usare un DTD?
Con un DTD, gruppi indipendenti di persone può essere d'accordo su un DTD standard per l'interscambio dei dati.
Un'applicazione può utilizzare un DTD per verificare che i dati XML è valido.
Una dichiarazione di DTD interno
Se il DTD è dichiarata all'interno del file XML, deve essere avvolto all'interno del <!DOCTYPE> Definizione:
documento XML con una DTD interna
<?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>
Visualizza file XML » Nel file XML, selezionare "view source" per visualizzare l'DTD.
Il DTD sopra è interpretato in questo modo:
- !DOCTYPE note definisce che l'elemento principale di questo documento è nota
- !ELEMENT note definisce che l'elemento nota deve contenere quattro elementi: "to,from,heading,body"
- !ELEMENT to definisce l'elemento ad essere di tipo "#PCDATA"
- !ELEMENT from definisce l'elemento da essere di tipo "#PCDATA"
- !ELEMENT heading definisce l'elemento intestazione essere di tipo "#PCDATA"
- !ELEMENT body definisce l'elemento del corpo per essere di tipo "#PCDATA"
Una dichiarazione DTD esterno
Se il DTD è dichiarata in un file esterno, il <!DOCTYPE> definizione deve contenere un riferimento al file DTD:
documento XML con un riferimento a un DTD esterno
<?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>
Visualizza file XML » E qui è il file "note.dtd" , che contiene il DTD:
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>