<!--
Questa è la DTD Rigorosa dell'HTML 4.0, che esclude gli attributi
e gli elementi di rappresentazione che il W3C ritiene saranno
soppiantati appena maturerà il supporto per i fogli di stile.
Gli autori dovrebbero usare la DTD Rigorosa
quando possibile, ma possono usare la DTD Transitoria quando
è richiesto il supporto per gli attributi e gli elementi di
rappresentazione.
L'HTML 4.0 include meccanismi per fogli di stile, programmazione,
inclusione di oggetti, supporto migliorato per
il testo scritto da destra a sinistra o a direzione mista,
e miglioramenti ai moduli per fornire una migliore
accessibilità alle persone disabili.
Draft: $Date: 1997/12/18 09:36:02 $
Autori:
Dave Raggett <dsr@w3.org>
Arnaud Le Hors <lehors@w3.org>
Ian Jacobs <ij@w3.org>
Ulteriori informazioni circa l'HTML 4.0 si possono trovare presso:
http://www.w3.org/TR/REC-html40
-->
<!--
Uso tipico:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
"http://www.w3.org/TR/REC-html40/strict.dtd">
<html>
<head>
...
</head>
<body>
...
</body>
</html>
L'URI usato come identificatore di sistema
insieme all'identificatore pubblico consente
all'inteprete HTML di prelevare la DTD e le liste
delle entità appena necessario.
L'FPI per la DTD Transitoria dell'HTML 4.0 è:
"-//W3C//DTD HTML 4.0 Transitional//EN
ed il suo URI è:
http://www.w3.org/TR/REC-html40/loose.dtd
Se state scrivendo un documento che include i frame, usate il
seguente FPI:
"-//W3C//DTD HTML 4.0 Frameset//EN"
con l'URI:
http://www.w3.org/TR/REC-html40/frameset.dtd
Possono essere usati i seguenti URI in relazione all'HTML 4.0:
"http://www.w3.org/TR/REC-html40/strict.dtd" (DTD Rigorosa)
"http://www.w3.org/TR/REC-html40/loose.dtd" (DTD Allargata)
"http://www.w3.org/TR/REC-html40/frameset.dtd" (DTD basata su Frame)
"http://www.w3.org/TR/REC-html40/HTMLlat1.ent" (Entità Latin-1)
"http://www.w3.org/TR/REC-html40/HTMLsymbol.ent" (Entità Symbol)
"http://www.w3.org/TR/REC-html40/HTMLspecial.ent" (Entità Special)
Questi URI si riferiscono alla versione più recente di ogni file.
Per referenziare questa specifica revisione usate i seguenti URI:
"http://www.w3.org/TR/REC-html40-971218/strict.dtd"
"http://www.w3.org/TR/REC-html40-971218/loose.dtd"
"http://www.w3.org/TR/REC-html40-971218/frameset.dtd"
"http://www.w3.org/TR/REC-html40-971218/HTMLlat1.ent"
"http://www.w3.org/TR/REC-html40-971218/HTMLsymbol.ent"
"http://www.w3.org/TR/REC-html40-971218/HTMLspecial.ent"
-->
<!--================== Nomi Importati ====================================-->
<!ENTITY % ContentType "CDATA"
-- tipo di media, come secondo [RFC2045]
-->
<!ENTITY % ContentTypes "CDATA"
-- lista separata con virgole di tipi di media , come secondo [RFC2045]
-->
<!ENTITY % Charset "CDATA"
-- un insieme di caratteri, come secondo [RFC2045]
-->
<!ENTITY % Charsets "CDATA"
-- una lista separata con spazi di insieme di caratteri, come
secondo [RFC2045] -->
<!ENTITY % LanguageCode "NAME"
-- un codice di lingua, come secondo [RFC1766]
-->
<!ENTITY % Character "CDATA"
-- un singolo carattere da [ISO10646]
-->
<!ENTITY % LinkTypes "CDATA"
-- lista di tipi di collegamenti separata con spazi
-->
<!ENTITY % MediaDesc "CDATA"
-- singolo o lista separata con virgole di descrittori di media
(o "media descriptors") -->
<!ENTITY % URI "CDATA"
-- un Uniform Resource Identifier (o "Identificatore Uniforme di Risorsa"),
consultare [URI] -->
<!ENTITY % Datetime "CDATA" -- informazione su data ed orario. Formato data ISO -->
<!ENTITY % Script "CDATA" -- enunciati di programma -->
<!ENTITY % StyleSheet "CDATA" -- dati dei fogli di stile -->
<!ENTITY % Text "CDATA">
<!-- Entità parametro -->
<!ENTITY % head.misc "SCRIPT|STYLE|META|LINK|OBJECT" -- elementi ripetibili dell'intestazione -->
<!ENTITY % heading "H1|H2|H3|H4|H5|H6">
<!ENTITY % list "UL | OL">
<!ENTITY % preformatted "PRE">
<!--=================== Entità Carattere =================================-->
<!ENTITY % HTMLlat1 PUBLIC
"-//W3C//ENTITIES Latin1//EN//HTML"
"http://www.w3.org/TR/REC-html40-971218/HTMLlat1.ent">
%HTMLlat1;
<!ENTITY % HTMLsymbol PUBLIC
"-//W3C//ENTITIES Symbols//EN//HTML"
"http://www.w3.org/TR/REC-html40-971218/HTMLsymbol.ent">
%HTMLsymbol;
<!ENTITY % HTMLspecial PUBLIC
"-//W3C//ENTITIES Special//EN//HTML"
"http://www.w3.org/TR/REC-html40-971218/HTMLspecial.ent">
%HTMLspecial;
<!--=================== Attributi Generici ===============================-->
<!ENTITY % coreattrs
"id ID #IMPLIED -- id univoco nell'intero documento --
class CDATA #IMPLIED -- lista di classi separata con spazi --
style %StyleSheet; #IMPLIED -- informazione connessa ai fogli di stile --
title %Text; #IMPLIED -- titolo introduttivo/chiarimento --"
>
<!ENTITY % i18n
"lang %LanguageCode; #IMPLIED -- codice di lingua --
dir (ltr|rtl) #IMPLIED -- direzione per testo debole/neutrale --"
>
<!ENTITY % events
"onclick %Script; #IMPLIED -- un pulsante del puntatore è stato cliccato --
ondblclick %Script; #IMPLIED -- un pulsante del puntatore è stato cliccato due volte--
onmousedown %Script; #IMPLIED -- un pulsante del puntatore è stato abbassato --
onmouseup %Script; #IMPLIED -- un pulsante del puntatore è stato alzato --
onmouseover %Script; #IMPLIED -- il puntatore è stato mosso sopra --
onmousemove %Script; #IMPLIED -- il puntatore è stato mosso all'interno di --
onmouseout %Script; #IMPLIED -- il puntatore è stato mosso via da --
onkeypress %Script; #IMPLIED -- un tasto è stato premuto e rilasciato --
onkeydown %Script; #IMPLIED -- un tasto è stato premuto --
onkeyup %Script; #IMPLIED -- un tasto è stato rilasciato --"
>
<!-- Enunciati riservati per il futuro-->
<!ENTITY % HTML.Reserved "IGNORE">
<!-- I seguenti attributi sono riservati per un possibile utilizzo futuro -->
<![ %HTML.Reserved; [
<!ENTITY % reserved
"datasrc %URI; #IMPLIED -- una sorgente di dati singola o tabulare --
datafld CDATA #IMPLIED -- la proprietà o il nome della colonna --
dataformatas (plaintext|html) plaintext -- testo o html --"
>
]]>
<!ENTITY % reserved "">
<!ENTITY % attrs "%coreattrs; %i18n; %events;">
<!--=================== Impaginazione Testo ==============================-->
<!ENTITY % fontstyle
"TT | I | B | BIG | SMALL">
<!ENTITY % phrase "EM | STRONG | DFN | CODE |
SAMP | KBD | VAR | CITE | ABBR | ACRONYM" >
<!ENTITY % special
"A | IMG | OBJECT | BR | SCRIPT | MAP | Q | SUB | SUP | SPAN | BDO">
<!ENTITY % formctrl "INPUT | SELECT | TEXTAREA | LABEL | BUTTON">
<!-- %inline; comprende elementi in linea o a livello del testo -->
<!ENTITY % inline "#PCDATA | %fontstyle; | %phrase; | %special; | %formctrl;">
<!ELEMENT (%fontstyle;|%phrase;) - - (%inline;)*>
<!ATTLIST (%fontstyle;|%phrase;)
%attrs; -- %coreattrs, %i18n, %events --
>
<!ELEMENT (SUB|SUP) - - (%inline;)* -- pedice, apice -->
<!ATTLIST (SUB|SUP)
%attrs; -- %coreattrs, %i18n, %events --
>
<!ELEMENT SPAN - - (%inline;)* -- contenitore generico di linguaggio/stile -->
<!ATTLIST SPAN
%attrs; -- %coreattrs, %i18n, %events --
%reserved; -- riservato per possibile uso futuro --
>
<!ELEMENT BDO - - (%inline;)* -- I18N BiDi over-ride -->
<!ATTLIST BDO
%coreattrs; -- id, class, style, title --
lang %LanguageCode; #IMPLIED -- codice di lingua --
dir (ltr|rtl) #REQUIRED -- direzione --
>
<!ELEMENT BR - O EMPTY -- interruzione forzata della linea -->
<!ATTLIST BR
%coreattrs; -- id, class, style, title --
>
<!--================== Modelli di contenuto dell'HTML ====================-->
<!--
L'HTML ha due modelli di contenuto di base:
%inline; elementi in linea e delle stringhe di testo
%block; elementi a livello blocco ad es. paragrafi e liste
-->
<!ENTITY % block
"P | %heading; | %list; | %preformatted; | DL | DIV | NOSCRIPT |
BLOCKQUOTE | FORM | HR | TABLE | FIELDSET | ADDRESS">
<!ENTITY % flow "%block; | %inline;">
<!--================== Corpo del documento ===============================-->
<!ELEMENT BODY O O (%block;|SCRIPT)+ +(INS|DEL) -- corpo del documento -->
<!ATTLIST BODY
%attrs; -- %coreattrs, %i18n, %events --
onload %Script; #IMPLIED -- il documento è stato caricato --
onunload %Script; #IMPLIED -- il documento è stato rimosso --
>
<!ELEMENT ADDRESS - - (%inline;)* -- informazioni sull'autore -->
<!ATTLIST ADDRESS
%attrs; -- %coreattrs, %i18n, %events --
>
<!ELEMENT DIV - - (%flow;)* -- contenitore generico di linguaggio/stile -->
<!ATTLIST DIV
%attrs; -- %coreattrs, %i18n, %events --
%reserved; -- riservato per possibile uso futuro --
>
<!--================== L'Elemento Ancora =================================-->
<!ENTITY % Shape "(rect|circle|poly|default)">
<!ENTITY % Coords "CDATA" -- lista di lunghezze separate con virgole -->
<!ELEMENT A - - (%inline;)* -(A) -- ancora -->
<!ATTLIST A
%attrs; -- %coreattrs, %i18n, %events --
charset %Charset; #IMPLIED -- insieme di caratteri della risorsa referenziata --
type %ContentType; #IMPLIED -- tipo di contenuto --
name CDATA #IMPLIED -- nome della destinazione di un collegamento --
href %URI; #IMPLIED -- URI per la risorsa referenziata --
hreflang %LanguageCode; #IMPLIED -- codice di lingua --
rel %LinkTypes; #IMPLIED -- tipi di link forward (o "riferimento successivo") --
rev %LinkTypes; #IMPLIED -- tipi di link reverse (o "riferimento precedente") --
accesskey %Character; #IMPLIED -- carattere di un tasto di scelta rapida --
shape %Shape; rect -- da usare con le mappe per immagini gestite dal client --
coords %Coords; #IMPLIED -- da usare con le mappe per immagini gestite dal client --
tabindex NUMBER #IMPLIED -- posizione nell'ordine di selezione --
onfocus %Script; #IMPLIED -- l'elemento è stato selezionato --
onblur %Script; #IMPLIED -- l'elemento è stato deselezionato --
>
<!--================== Mappe per immagini gestite dal client =============-->
<!-- Queste sono poste nello stesso documento o raggruppate in un documento
separato sebbene ciò non sia ancora diffusamente implementato -->
<!ELEMENT MAP - - ((%block;)+ | AREA+) -- mappa per immagini gestita dal client -->
<!ATTLIST MAP
%attrs; -- %coreattrs, %i18n, %events --
name CDATA #REQUIRED -- per essere referenziato da usemap --
>
<!ELEMENT AREA - O EMPTY -- area della mappa gestita dal client -->
<!ATTLIST AREA
%attrs; -- %coreattrs, %i18n, %events --
shape %Shape; rect -- controlla l'interpretazione delle coordinate --
coords %Coords; #IMPLIED -- lista di lunghezze separate con virgole --
href %URI; #IMPLIED -- URI per la risorsa referenziata --
nohref (nohref) #IMPLIED -- questa regione non ha azione --
alt %Text; #REQUIRED -- breve descrizione --
tabindex NUMBER #IMPLIED -- posizione nell'ordine di selezione --
accesskey %Character; #IMPLIED -- carattere di un tasto di scelta rapida --
onfocus %Script; #IMPLIED -- l'elemento è stato selezionato --
onblur %Script; #IMPLIED -- l'elemento è stato deselezionato --
>
<!--================== L'Elemento LINK ===================================-->
<!--
I valori di relazione possono essere usati di norma:
a) Per toolbar/menu proprie del documento quando usate insieme
all'elemento Link nell'intestazione ad es.
inizio, sommario, precedente, successivo, indice, fine, guida
b) per referenziare un foglio di stile esterno (rel=stylesheet)
c) per referenziare uno script esterno (rel=script)
d) dai fogli di stile per controllare come le collezioni di nodi html
sono mostrati nei documenti stampati
e) per referenziare una versione stampabile del documento
ad es. una versione postscript o pdf (rel=alternate media=print)
-->
<!ELEMENT LINK - O EMPTY -- un collegamento indipendente dai media -->
<!ATTLIST LINK
%attrs; -- %coreattrs, %i18n, %events --
charset %Charset; #IMPLIED -- insieme di caratteri della risorsa referenziata --
href %URI; #IMPLIED -- URI per la risorsa referenziata --
hreflang %LanguageCode; #IMPLIED -- codice di lingua --
type %ContentType; #IMPLIED -- tipo di contenuto --
rel %LinkTypes; #IMPLIED -- tipi di collegamento successivo --
rev %LinkTypes; #IMPLIED -- tipi di collegamento precedente --
media %MediaDesc; #IMPLIED -- per essere mostrati su questi media --
>
<!--=================== Immagini =========================================-->
<!-- Lunghezza definita nella DTD rigorosa per cellpadding/cellspacing -->
<!ENTITY % Length "CDATA" -- nn per lunghezze in pixel o nn% per quelle percentuali -->
<!ENTITY % MultiLength "CDATA" -- in pixel, percentuale, o relativa -->
<!ENTITY % MultiLengths "CDATA" -- lista separata con virgole di MultiLength -->
<!ENTITY % Pixels "CDATA" -- intero che rappresenta una lunghezza in pixel -->
<!-- Per evitare problemi con interpreti solo testo
come pure per rendere il contenuto dell'immagine navigabile
e comprensibile per gli utenti di interpreti non visuali,
è necessario fornire una descrizione con ALT, ed evitare
mappe per immagini gestite dal server -->
<!ELEMENT IMG - O EMPTY -- Immagine inclusa -->
<!ATTLIST IMG
%attrs; -- %coreattrs, %i18n, %events --
src %URI; #REQUIRED -- URI dell'immagine da includere --
alt %Text; #REQUIRED -- breve descrizione --
longdesc %URI; #IMPLIED -- collegamento ad una descrizione estesa (completa alt) --
height %Length; #IMPLIED -- reimposta l'altezza --
width %Length; #IMPLIED -- reimposta la larghezza --
usemap %URI; #IMPLIED -- usa una mappa per immagini gestita dal client --
ismap (ismap) #IMPLIED -- usa una mappa per immagini gestita dal server --
>
<!-- USEMAP referenzia un elemento MAP che può trovarsi nello stesso
documento o in uno esterno, sebbene l'ultima possibilità non sia
diffusamente implementata -->
<!--==================== OBJECT ======================================-->
<!--
OBJECT è usato per inserire oggetti come parte delle pagine HTML.
Gli elementi PARAM dovrebbero precedere l'altro contenuto.
Il modello SGML per contenuti misti
preclude tecnicamente che ciò possa essere specificato formalmente...
-->
<!ELEMENT OBJECT - - (PARAM | %flow;)* -- generico oggetto incluso -->
<!ATTLIST OBJECT
%attrs; -- %coreattrs, %i18n, %events --
declare (declare) #IMPLIED -- impone di dichiarare e di non instanziare --
classid %URI; #IMPLIED -- identifica un'implementazione --
codebase %URI; #IMPLIED -- URI di base per classid, data, archive --
data %URI; #IMPLIED -- riferimento ad i dati dell'oggetto --
type %ContentType; #IMPLIED -- tipo di contenuto per i dati --
codetype %ContentType; #IMPLIED -- tipo di contenuto per il codice --
archive %URI; #IMPLIED -- lista di archivi separata con spazi --
standby %Text; #IMPLIED -- messaggio da mostrare durante il caricamento --
height %Length; #IMPLIED -- reimposta l'altezza --
width %Length; #IMPLIED -- reimposta la larghezza --
usemap %URI; #IMPLIED -- usa una mappa per immagini gestita dal client --
name CDATA #IMPLIED -- invia come parte di un modulo --
tabindex NUMBER #IMPLIED -- posizione nell'ordine di tabulazione --
%reserved; -- riservato per possibile uso futuro --
>
<!ELEMENT PARAM - O EMPTY -- valore di una proprietà con nome simbolico -->
<!ATTLIST PARAM
id ID #IMPLIED -- id univoco nell'intero documento --
name CDATA #REQUIRED -- nome della proprietà --
value CDATA #IMPLIED -- valore della proprietà --
valuetype (DATA|REF|OBJECT) DATA -- come interpretare il valore --
type %ContentType; #IMPLIED -- tipo di contenuto quando valuetype=ref --
>
<!--=================== Divisore orizzontale ================================-->
<!ELEMENT HR - O EMPTY -- divisore orizzontale -->
<!ATTLIST HR
%coreattrs; -- id, class, style, title --
%events;
>
<!--=================== Paragrafi ========================================-->
<!ELEMENT P - O (%inline;)* -- paragrafo -->
<!ATTLIST P
%attrs; -- %coreattrs, %i18n, %events --
>
<!--=================== Titoli ===========================================-->
<!--
Ci sono sei livelli di titolazione da H1 (il più importante)
ad H6 (il meno importante).
-->
<!ELEMENT (%heading;) - - (%inline;)* -- titolo -->
<!ATTLIST (%heading;)
%attrs; -- %coreattrs, %i18n, %events --
>
<!--=================== Testo precomposto ==============================-->
<!-- Esclude l'inserimento di immagini e variazioni nella dimensione dei font -->
<!ENTITY % pre.exclusion "IMG|OBJECT|BIG|SMALL|SUB|SUP">
<!ELEMENT PRE - - (%inline;)* -(%pre.exclusion;) -- testo precomposto -->
<!ATTLIST PRE
%attrs; -- %coreattrs, %i18n, %events --
>
<!--===================== Citazioni brevi ================================-->
<!ELEMENT Q - - (%inline;)* -- citazione breve -->
<!ATTLIST Q
%attrs; -- %coreattrs, %i18n, %events --
cite %URI; #IMPLIED -- URI per la fonte --
>
<!--=================== Citazioni estese =================================-->
<!ELEMENT BLOCKQUOTE - - (%block;|SCRIPT)+ -- citazione estesa -->
<!ATTLIST BLOCKQUOTE
%attrs; -- %coreattrs, %i18n, %events --
cite %URI; #IMPLIED -- URI per la fonte --
>
<!--=================== Testo Inserito/Eliminato =========================-->
<!-- INS/DEL sono gestiti per mezzo della inclusione nel corpo del testo -->
<!ELEMENT (INS|DEL) - - (%flow;)* -- testo inserito, testo eliminato -->
<!ATTLIST (INS|DEL)
%attrs; -- %coreattrs, %i18n, %events --
cite %URI; #IMPLIED -- informazioni sul motivo della modifica --
datetime %Datetime; #IMPLIED -- data ed ora della modifica --
>
<!--=================== Liste ============================================-->
<!-- Liste di definizioni - DT per i termini, DD per le loro definizioni -->
<!ELEMENT DL - - (DT|DD)+ -- lista di definizioni -->
<!ATTLIST DL
%attrs; -- %coreattrs, %i18n, %events --
>
<!ELEMENT DT - O (%inline;)* -- termine di definizione -->
<!ELEMENT DD - O (%flow;)* -- descrizione della definizione -->
<!ATTLIST (DT|DD)
%attrs; -- %coreattrs, %i18n, %events --
>
<!ELEMENT OL - - (LI)+ -- lista ordinata -->
<!ATTLIST OL
%attrs; -- %coreattrs, %i18n, %events --
>
<!-- lista non ordinata (UL) stili con pallini -->
<!ELEMENT UL - - (LI)+ -- lista non ordinata -->
<!ATTLIST UL
%attrs; -- %coreattrs, %i18n, %events --
>
<!ELEMENT LI - O (%flow;)* -- elemento della lista -->
<!ATTLIST LI
%attrs; -- %coreattrs, %i18n, %events --
>
<!--================ Moduli ==============================================-->
<!ELEMENT FORM - - (%block;|SCRIPT)+ -(FORM) -- modulo interattivo -->
<!ATTLIST FORM
%attrs; -- %coreattrs, %i18n, %events --
action %URI; #REQUIRED -- gestore della scheda sul server --
method (GET|POST) GET -- metodo HTTP usato per inviare il modulo --
enctype %ContentType; "application/x-www-form-urlencoded"
onsubmit %Script; #IMPLIED -- il modulo è stato inviato --
onreset %Script; #IMPLIED -- il modulo è stato annullato --
accept-charset %Charsets; #IMPLIED -- lista di insieme di caratteri gestiti --
>
<!-- Ogni etichetta non deve contenere più di UN campo -->
<!ELEMENT LABEL - - (%inline;)* -(LABEL) -- testo di un'etichetta di un campo del modulo -->
<!ATTLIST LABEL
%attrs; -- %coreattrs, %i18n, %events --
for IDREF #IMPLIED -- corrisponde al valore ID del campo --
accesskey %Character; #IMPLIED -- carattere di un tasto di scelta rapida --
onfocus %Script; #IMPLIED -- l'elemento è stato selezionato --
onblur %Script; #IMPLIED -- l'elemento è stato deselezionato --
>
<!ENTITY % InputType
"(TEXT | PASSWORD | CHECKBOX |
RADIO | SUBMIT | RESET |
FILE | HIDDEN | IMAGE | BUTTON)"
>
<!-- nome dell'attributo richiesto per tutti tranne che per submit & reset -->
<!ELEMENT INPUT - O EMPTY -- elemento del modulo -->
<!ATTLIST INPUT
%attrs; -- %coreattrs, %i18n, %events --
type %InputType; TEXT -- che tipo di componente è richiesto --
name CDATA #IMPLIED -- invia come parte del modulo --
value CDATA #IMPLIED -- richiesto per radio e checkbox --
checked (checked) #IMPLIED -- per radio e checkbox --
disabled (disabled) #IMPLIED -- non utilizzabile in questo contesto --
readonly (readonly) #IMPLIED -- per testo e password --
size CDATA #IMPLIED -- specifico per ogni tipo di campo --
maxlength NUMBER #IMPLIED -- numero massimo di caratteri per il campo di testo --
src %URI; #IMPLIED -- per campi con immagini --
alt CDATA #IMPLIED -- descrizione breve --
usemap %URI; #IMPLIED -- usa mappa per immagini gestita dal client --
tabindex NUMBER #IMPLIED -- posizione nell'ordine di tabulazione --
accesskey %Character; #IMPLIED -- carattere di un tasto di scelta rapida --
onfocus %Script; #IMPLIED -- l'elemento è stato selezionato --
onblur %Script; #IMPLIED -- l'elemento è stato deselezionato --
onselect %Script; #IMPLIED -- del testo è stato selezionato --
onchange %Script; #IMPLIED -- il valore dell'elemento è stato cambiato --
accept %ContentTypes; #IMPLIED -- lista di tipi MIME per l'invio del file --
%reserved; -- riservato per possibile uso futuro --
>
<!ELEMENT SELECT - - (OPTGROUP|OPTION)+ -- selettore di opzioni -->
<!ATTLIST SELECT
%attrs; -- %coreattrs, %i18n, %events --
name CDATA #IMPLIED -- nome del campo --
size NUMBER #IMPLIED -- righe visibili --
multiple (multiple) #IMPLIED -- è predefinita la selezione singola --
disabled (disabled) #IMPLIED -- non utilizzabile in questo contesto --
tabindex NUMBER #IMPLIED -- posizione nell'ordine di tabulazione --
onfocus %Script; #IMPLIED -- l'elemento è stato selezionato --
onblur %Script; #IMPLIED -- l'elemento è stato deselezionato --
onchange %Script; #IMPLIED -- il valore dell'elemento è stato cambiato --
%reserved; -- riservato per possibile uso futuro --
>
<!ELEMENT OPTGROUP - - (OPTION)+ -- gruppo di opzioni -->
<!ATTLIST OPTGROUP
%attrs; -- %coreattrs, %i18n, %events --
disabled (disabled) #IMPLIED -- non utilizzabile in questo contesto --
label %Text; #REQUIRED -- da usare in menu gerarchici --
>
<!ELEMENT OPTION - O (#PCDATA) -- scelta selezionabile -->
<!ATTLIST OPTION
%attrs; -- %coreattrs, %i18n, %events --
selected (selected) #IMPLIED
disabled (disabled) #IMPLIED -- non utilizzabile in questo contesto --
label %Text; #IMPLIED -- da usare in menu gerarchici --
value CDATA #IMPLIED -- l'opzione predefinita è il contenuto dell'elemento --
>
<!ELEMENT TEXTAREA - - (#PCDATA) -- campo di testo multiriga -->
<!ATTLIST TEXTAREA
%attrs; -- %coreattrs, %i18n, %events --
name CDATA #IMPLIED
rows NUMBER #REQUIRED
cols NUMBER #REQUIRED
disabled (disabled) #IMPLIED -- non utilizzabile in questo contesto --
readonly (readonly) #IMPLIED
tabindex NUMBER #IMPLIED -- posizione nell'ordine di selezione --
accesskey %Character; #IMPLIED -- carattere di un tasto di scelta rapida --
onfocus %Script; #IMPLIED -- l'elemento è stato selezionato --
onblur %Script; #IMPLIED -- l'elemento è stato deselezionato --
onselect %Script; #IMPLIED -- del testo è stato selezionato --
onchange %Script; #IMPLIED -- il valore dell'elemento è stato cambiato --
%reserved; -- riservato per possibile uso futuro --
>
<!--
#PCDATA deve risolvere il problema del contenuto misto,
secondo la specifica solo spazi bianchi
sono consentiti qui!
-->
<!ELEMENT FIELDSET - - (#PCDATA,LEGEND,(%flow;)*) -- gruppo di componenti del modulo -->
<!ATTLIST FIELDSET
%attrs; -- %coreattrs, %i18n, %events --
>
<!ELEMENT LEGEND - - (%inline;)* -- legenda di un insieme di campi -->
<!ENTITY % LAlign "(top|bottom|left|right)">
<!ATTLIST LEGEND
%attrs; -- %coreattrs, %i18n, %events --
accesskey %Character; #IMPLIED -- carattere di un tasto di scelta rapida --
>
<!ELEMENT BUTTON - -
(%flow;)* -(A|%formctrl;|FORM|FIELDSET)
-- pulsante a pressione -->
<!ATTLIST BUTTON
%attrs; -- %coreattrs, %i18n, %events --
name CDATA #IMPLIED
value CDATA #IMPLIED -- inviato al server quando il modulo è spedito --
type (button|submit|reset) submit -- da usare come pulsante del modulo --
disabled (disabled) #IMPLIED -- non utilizzabile in questo contesto --
tabindex NUMBER #IMPLIED -- posizione nell'ordine di tabulazione --
accesskey %Character; #IMPLIED -- carattere di un tasto di scelta rapida --
onfocus %Script; #IMPLIED -- l'elemento è stato selezionato --
onblur %Script; #IMPLIED -- l'elemento è stato deselezionato --
%reserved; -- riservato per possibile uso futuro --
>
<!--======================= Tabelle ======================================-->
<!-- Tabella standard IETF HTML, consultare [RFC1942] -->
<!--
L'attributo BORDER imposta lo spessore della cornice intorno
alla tabella. L'unità predefinita sono pixel.
L'attributo FRAME specifica quale parte della cornice intorno
alla tabella dovrebbe essere mostrata. I valori non sono gli stessi di
CALS per evitare conflitti di nome con l'attributo VALIGN.
Il valore "border" è incluso per compatibilità con il sorpassato
<TABLE BORDER> che consente frame=border e border=implied .
Per <TABLE BORDER=1> il risultato è border=1 e frame=implied. In
questo case, è appropriato trattare questo come frame=border
per compatibilità con i browser diffusi.
-->
<!ENTITY % TFrame "(void|above|below|hsides|lhs|rhs|vsides|box|border)">
<!--
L'attributo RULES definisce quali divisori disegnare tra le celle:
Se RULES è assente allora è assunto:
"none" se BORDER è assente o BORDER=0 altrimenti "all"
-->
<!ENTITY % TRules "(none | groups | rows | cols | all)">
<!-- posizione orizzontale della tabella relativa al documento -->
<!ENTITY % TAlign "(left|center|right)">
<!-- attributi di allineamento orizzontale per i contenuti delle celle -->
<!ENTITY % cellhalign
"align (left|center|right|justify|char) #IMPLIED
char %Character; #IMPLIED -- carattere di allineamento, ad es. char=':' --
charoff %Length; #IMPLIED -- distanza per il carattere di allineamento --"
>
<!-- attributi di allineamento verticale per i contenuti delle celle -->
<!ENTITY % cellvalign
"valign (top|middle|bottom|baseline) #IMPLIED"
>
<!ELEMENT TABLE - -
(CAPTION?, (COL*|COLGROUP*), THEAD?, TFOOT?, TBODY+)>
<!ELEMENT CAPTION - - (%inline;)* -- didascalia della tabella -->
<!ELEMENT THEAD - O (TR)+ -- intestazione della tabella -->
<!ELEMENT TFOOT - O (TR)+ -- note della tabella -->
<!ELEMENT TBODY O O (TR)+ -- corpo della tabella -->
<!ELEMENT COLGROUP - O (col)* -- gruppo di colonne della tabella -->
<!ELEMENT COL - O EMPTY -- colonna della tabella -->
<!ELEMENT TR - O (TH|TD)+ -- fila della tabella -->
<!ELEMENT (TH|TD) - O (%flow;)* -- cella dell'intestazione della tabella, cella dei dati della tabella -->
<!ATTLIST TABLE -- elemento tabella --
%attrs; -- %coreattrs, %i18n, %events --
summary %Text; #IMPLIED -- scopo/struttura per emissione vocale --
width %Length; #IMPLIED -- larghezza tabella --
border %Pixels; #IMPLIED -- controlla lo spessore della cornice frame intorno alla tabella --
frame %TFrame; #IMPLIED -- quale parte della cornice mostrare --
rules %TRules; #IMPLIED -- griglia tra colonne e file --
cellspacing %Length; #IMPLIED -- distanza tra le celle --
cellpadding %Length; #IMPLIED -- distanza all'interno delle celle --
%reserved; -- riservato per possibile uso futuro
datapagesize CDATA #IMPLIED -- riservato per possibile uso futuro --
>
<!ENTITY % CAlign "(top|bottom|left|right)">
<!ATTLIST CAPTION
%attrs; -- %coreattrs, %i18n, %events --
>
<!--
COLGROUP raggruppa un insieme di elementi COL. Permette di raggruppare
più colonne semanticamente collegate insieme.
-->
<!ATTLIST COLGROUP
%attrs; -- %coreattrs, %i18n, %events --
span NUMBER 1 -- numero predefinito di colonne nel gruppo --
width %MultiLength; #IMPLIED -- larghezza predefinita delle COL incluse --
%cellhalign; -- allineamento orizzontale nelle celle --
%cellvalign; -- allineamento verticale nelle celle --
>
<!--
Gli elementi COL definiscono le proprietà dell'allineamento
per le celle in una o più colonne.
L'attributo width specifica la larghezza delle colonne, ad es.
width=64 larghezza in pixel
width=0.5* larghezza relativa in 0.5
L'attributo SPAN fa in modo che gli attributi di un elemento
COL siano applicati a più di una colonna.
-->
<!ATTLIST COL -- gruppi di colonne e proprietà --
%attrs; -- %coreattrs, %i18n, %events --
span NUMBER 1 -- gli attributi COL si riferiscono a N colonne --
width %MultiLength; #IMPLIED -- specifica la larghezza della colonna --
%cellhalign; -- allineamento orizzontale nelle celle --
%cellvalign; -- allineamento verticale nelle celle --
>
<!--
Usa THEAD per duplicare le intestazioni quando si interrompe
la tabella a cavallo di una pagina, o per intestazioni statiche quando
le sezioni TBODY sono visualizzate nel pannello scorrevole.
Usa TFOOT per duplicare le note quando si interrompe
la tabella a cavallo di una pagina, o per note statiche quando
le sezioni TBODY sono visualizzate nel pannello scorrevole.
Usa multiple sezioni TBODY quando sono necessarie griglie
tra gruppi di file della tabella.
-->
<!ATTLIST (THEAD|TBODY|TFOOT) -- sezione della tabella --
%attrs; -- %coreattrs, %i18n, %events --
%cellhalign; -- allineamento orizzontale nelle celle --
%cellvalign; -- allineamento verticale nelle celle --
>
<!ATTLIST TR -- riga della tabella --
%attrs; -- %coreattrs, %i18n, %events --
%cellhalign; -- allineamento orizzontale nelle celle --
%cellvalign; -- allineamento verticale nelle celle --
>
<!-- Scope è più semplice che l'attributo axes per le tabelle comuni-->
<!ENTITY % Scope "(row|col|rowgroup|colgroup)">
<!-- TH è per le intestazioni, TD per i dati,
ma per celle che hanno la funzione di entrambi bisogna usare TD -->
<!ATTLIST (TH|TD) -- cella di dati o dell'intestazione --
%attrs; -- %coreattrs, %i18n, %events --
abbr %Text; #IMPLIED -- abbreviazione per la cella di intestazione --
axis CDATA #IMPLIED -- nomi dei gruppi di intestazioni correlate --
headers IDREFS #IMPLIED -- lista di id per le celle di intestazione --
scope %Scope; #IMPLIED -- portata coperta dalle celle di intestazione --
rowspan NUMBER 1 -- numero di righe coperto dalle celle --
colspan NUMBER 1 -- numero di colonne coperto dalle celle --
%cellhalign; -- allineamento orizzontale nelle celle --
%cellvalign; -- allineamento verticale nelle celle --
>
<!--================ Intestazione del documento ==========================-->
<!-- %head.misc; definito precedentemente come
"SCRIPT|STYLE|META|LINK|OBJECT" -->
<!ENTITY % head.content "TITLE & BASE?">
<!ELEMENT HEAD O O (%head.content;) +(%head.misc;) -- intestazione del documento -->
<!ATTLIST HEAD
%i18n; -- lang, dir --
profile %URI; #IMPLIED -- dizionario con nome di metainformazioni --
>
<!-- L'elemento TITLE non è considerato parte del flusso di testo.
Dovrebbe essere mostrato, per esempio come titolo
della pagina della finestra. È richiesto esattamente
un title per documento.
-->
<!ELEMENT TITLE - - (#PCDATA) -(%head.misc;) -- titolo del documento -->
<!ATTLIST TITLE %i18n>
<!ELEMENT BASE - O EMPTY -- URI base del documento -->
<!ATTLIST BASE
href %URI; #REQUIRED -- URI che funge da URI base --
>
<!ELEMENT META - O EMPTY -- metainformazione generica -->
<!ATTLIST META
%i18n; -- lang, dir, da usare con il contenuto --
http-equiv NAME #IMPLIED -- nome dell'intestazione della risposta HTTP --
name NAME #IMPLIED -- nome della metainformazione --
content CDATA #REQUIRED -- informazione associata --
scheme CDATA #IMPLIED -- seleziona la forma del contenuto --
>
<!ELEMENT STYLE - - %StyleSheet -- informazione connessa ai fogli di stile -->
<!ATTLIST STYLE
%i18n; -- lang, dir, da usare con il titolo --
type %ContentType; #REQUIRED -- tipo di contenuto del linguaggio dello stile --
media %MediaDesc; #IMPLIED -- per essere mostrati su questi media --
title %Text; #IMPLIED -- titolo introduttivo --
>
<!ELEMENT SCRIPT - - %Script; -- enunciati di programma -->
<!ATTLIST SCRIPT
charset %Charset; #IMPLIED -- insieme di caratteri della risorsa referenziata --
type %ContentType; #REQUIRED -- tipo di contenuto del linguaggio dello script --
language CDATA #IMPLIED -- nome del linguaggio predefinito del programma --
src %URI; #IMPLIED -- URI per uno script esterno --
defer (defer) #IMPLIED -- l'interprete può differire l'esecuzione del programma --
event CDATA #IMPLIED -- riservato per possibile uso futuro --
for %URI; #IMPLIED -- riservato per possibile uso futuro --
>
<!ELEMENT NOSCRIPT - - (%block;)+
-- contenitore del contenuto alternativo da mostrare in caso di mancato supporto allo script -->
<!ATTLIST NOSCRIPT
%attrs; -- %coreattrs, %i18n, %events --
>
<!--================ Struttura del documento =============================-->
<!ENTITY % html.content "HEAD, BODY">
<!ELEMENT HTML O O (%html.content;) -- elemento radice del documento -->
<!ATTLIST HTML
%i18n; -- lang, dir --
>