Gli ultimi tutorial di sviluppo web
 

XML DTD


Un documento XML con sintassi corretta è chiamato "Well Formed" .

Un documento XML convalidato contro un DTD è sia "Well Formed" e "Valid" .


Validi documenti XML

Un "Valid" documento XML è un "Well Formed" documento XML, conforme anche alle regole di una 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>

La dichiarazione DOCTYPE, nell'esempio di cui sopra, è un riferimento a un file DTD esterno. Il contenuto del file è mostrato nel paragrafo seguente.


DTD XML

Lo scopo di un DTD è definire la struttura di un documento XML. Si definisce la struttura con una lista di elementi legali:

<!DOCTYPE note
[
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
]>

Il DTD sopra è interpretato in questo modo:

  • ! DOCTYPE nota definisce che l'elemento radice del documento è nota
  • ! Nota elemento definisce che l'elemento nota deve contenere gli elementi: "to, from, heading, body"
  • ! ELEMENT alla definisce l'elemento ad essere di tipo "#PCDATA"
  • ! ELEMENT dal definisce l'elemento da essere di tipo "#PCDATA"
  • ! ELEMENT voce definisce l'elemento intestazione essere di tipo "#PCDATA"
  • ! ELEMENT corpo definisce l'elemento del corpo per essere di tipo "#PCDATA"

#PCDATA Significa dati di testo parse-grado.


Utilizzando DTD per dichiarazione di entità

Una dichiarazione doctype può anche essere utilizzata per definire i caratteri speciali e stringhe di caratteri, utilizzati nel documento:

Esempio

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE note [
<!ENTITY nbsp "&#xA0;">
<!ENTITY writer "Writer: Donald Duck.">
<!ENTITY copyright "Copyright: w3ii.">
]>

<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
<footer>&writer;&nbsp;&copyright;</footer>
</note>
Prova tu stesso "

Un'entità ha tre parti: una e commerciale (&) , un nome di entità, e un punto e virgola (;) .


Quando utilizzare un DTD / Schema?

Con un DTD, gruppi indipendenti di persone possono accordarsi per utilizzare una DTD standard per l'interscambio dei dati.

Con un DTD, è possibile verificare che i dati che riceve dal mondo esterno è valido.

È inoltre possibile utilizzare una DTD per verificare i propri dati.

Se si vuole studiare DTD, si prega di leggere la nostra DTD Tutorial .


Quando non usare un DTD / Schema?

XML non richiede un DTD / Schema.

Quando si stanno sperimentando con XML, o quando si lavora con i file XML di piccole dimensioni, la creazione di DTD può essere una perdita di tempo.

Se si sviluppano applicazioni, attendere che la specifica è stabile prima di aggiungere una definizione di documento. In caso contrario, il software potrebbe non funzionare a causa di errori di convalida.