cheap nfl jerseys china cheap nfl jerseys free shipping wholesale nfl jerseys china wholesale jerseys from china cheap nfl jerseys free shipping cheap nfl jerseys for sale cheap jerseys free shipping wholesale nfl jerseys from china cheap nfl jerseys sale cheap nike nfl jerseys china wholesale jerseys free shipping cheap nfl jerseys wholesale wholesale nfl jerseys online cheap nfl jerseys wholesale china jerseys wholesale cheap coach handbags outlet authentic designer handbags cheap coach handbags outlet cheap coach purses outlet discount coach bags coach bags sale coach purse outlet cheap real coach purses coach handbags sale online coach purse outlet michael kors outlet online store cheap michael kors bags cheap michael kors purse michael kors factory outlet online cheap michael kors handbags cheap michael kors purses michael kors bags outlet online cheap michael kors purse michael kors handbags discount
XML
XML
eXtensible Markup Language
eXtensible Markup Language
sistema per lo scambio di dati tra sistemi informativi

DTD: Document Type Definition

Un DTD definisce una grammatica per mezzo di dichiarazioni.
Può essere un file .DTD richiamato con la direttiva
<?xml version="1.0">
<!DOCTYPE articolo SYSTEM "articolo.dtd">

o può essere inserito all'interno del file .XML:
<?xml version="1.0">
<!DOCTYPE articolo[
... definizioni ...
]>

<!ELEMENT>

definisce gli elementi e la struttura del documento.
<!ELEMENT articolo(paragrafo+)> indica che l'elemento <articolo> ha come sottoelemento uno o pi� elementi <paragrafo>.
(+ significa una o più volte, * significa zero o più volte, ? ignifica zero o una volta)
<!ELEMENT immagine EMPTY>> indica un elemento vuoto.
<!ELEMENT testo (#PCDATA)> indica un elemento di testo.
<!ELEMENT ignoto ANY> indica un elemento che può essere vuoto o no.

<!ATTLIST>

definisce gli attributi.
<!ATTLIST elemento attributo valore> indica che l'elemento possiede un attributo. Gli atttributi possono essere: #CDATA, #REQUIRED, #IMPLIED, #FIXED valore

Esempio:

<!ELEMENT articolo(paragrafo+)>
<!ELEMENT paragrafo (immagine*, testo+, codice*)>
<!ELEMENT immagine EMPTY>
<!ELEMENT testo (#PCDATA)>
<!ELEMENT codice (#PCDATA)>
<!ATTLIST articolo titolo CDATA #REQUIRED>
<!ATTLIST paragrafo 
      titolo   CDATA #IMPLIED
      tipo     (abstract|bibliografia|note) #IMPLIED>
<!ATTLIST immagine file CDATA #REQUIRED>

I DTD hanno limiti (per esempio non consentono di specificare i tipi di dato, i numeri minimo o massimo di occorrenze, ecc.), ma soprattutto non sono scritti in XML.
È meglio usare gli XML Schema.