Il "Document Type Definition" (DTD)

La prima riga di una pagina HTML prevede l'impiego di una descrizione invisibile (un commento) riguardante le specifiche tecniche del documento stesso, diventata sempre piu importante con l'aumentare delle versioni e dei tipi di documento aventi caratteristiche proprie piu o meno avanzate; nelle recenti versioni di browser il DOCTYPE utilizzato commuta in anticipo il metodo di visualizzazione della pagina: tale tecnica è detta "<!DOCTYPE> switch".

I DOCTYPE fanno riferimento a dei documenti disponibili in rete dove sono elencati i tags che sono da ritenersi validi per quel certo tipo di documento, una specie di "grammatica" ad uso del browser. Giusto per curiosità possiamo vedere come sono fatti...

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
http://www.w3.org/TR/html4/loose.dtd>

Le informazioni possono essere lette in questo modo:

  • HTML: il tipo di linguaggio utilizzato è l'HTML
  • PUBLIC: il documento è pubblico
  • W3C: il documento fa riferimento alle specifiche rilasciate dal W3C
  • - (è il segno "meno"): le specifiche non sono registrate all'ISO (organizzazione di standardizzazione nternazionale). Se lo fossero state, ci sarebbe stato un "+"
  • DTD HTML 4.01 Transitional: il documento fa riferimento a una DTD ("Document Type Definition" cioè "Definizione del tipo di documento"); la versione di HTML supportata è la 4.01 "transitional"
  • EN: la lingua con cui è scritta la DTD è l'inglese

Inoltre - se necessario - è possibile specificare l'indirizzo di riferimento a cui è possibile trovare la DTD: può trattarsi di un server aziendale o di pubblico dominio, per l'HTML non lo si fa quasi mai, perché gli URL a cui trovare la documentazione sono universalmente noti (W3C).

Per quel che riguarda l'HTML le indicazioni possibili sono tre:

  • Strict: è una DTD particolarmente rigorosa: esclude ogni elemento che riguarda il layout (la cui formattazione è affidata all'utilzzo dei CSS) e non è consentito l'uso degli elementi deprecati:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN"
    http://www.w3.org/TR/html4/strict.dtd>


  • Transitional: è una versione temporanea, per consentire il passaggio da una specifica all'altra. Nella DTD transitionali tag deprecati sono ammessi.
    Questa DTD andrà bene nella maggior parte dei casi

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    http://www.w3.org/TR/html4/loose.dtd>


  • Frameset. È la DTD che riguarda i frames:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
    http://www.w3.org/TR/html4/frameset.dtd>

Questo sito è stato realizzato dai digileaders della community