<!--
Questa è la DTD Transitoria di HTML 4.01, che include attributi ed
elementi di presentazione, che il W3C attende che siano gruadualmente
eliminati mentre si sviluppa il supporto per i fogli di stile. Gli
autori dovrebbero usare la DTD Rigorosa quando possibile, ma possono
usare la DTD Transitoria quando occorre il supporto per attributi ed
elementi di presentazione.
HTML 4 include meccanismi per fogli di stile, linguaggi di script,
oggetti incorporati, supporto migliorato per testo con direzione da
destra a sinistra e mista, e miglioramenti ai moduli per una
maggiore accessibilità per le persone con disabilità.
Prima stesura: $Date: 1999/12/24 22:40:35 $
Autori:
Dave Raggett <dsr@w3.org>
Arnaud Le Hors <lehors@w3.org>
Ian Jacobs <ij@w3.org>
Ulteriori informazioni su HTML 4.01 sono disponibili presso:
http://www.w3.org/TR/1999/REC-html401-19991224
Le specifiche HTML 4.01 comprendono vincoli sintattici
aggiuntivi che non possono essere espressi all'interno
delle DTD.
-->
<!ENTITY % HTML.Version "-//W3C//DTD HTML 4.01 Transitional//EN"
-- Impiego tipico:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
...
</head>
<body>
...
</body>
</html>
L'URI usato come un identificatore di sistema con l'identificatore
pubblico consente al programma utente di scaricare la DTD e gli
insiemi di entità necessari.
Lo FPI per la DTD Rigorosa HTML 4.01 è:
"-//W3C//DTD HTML 4.01//EN"
Tale versione della DTD Rigorosa è:
http://www.w3.org/TR/1999/REC-html401-19991224/strict.dtd
Gli autori dovrebbero usare la DTD Rigorosa a meno che non abbiano
bisogno di un controllo della presentazione per i programmi utente
che non supportano (adeguatamente) i fogli di stile.
Se state scrivendo un documento che include frame, usate il
seguente FPI:
"-//W3C//DTD HTML 4.01 Frameset//EN"
Tale versione della DTD organizzata a frame è:
http://www.w3.org/TR/1999/REC-html401-19991224/frameset.dtd
Usate i seguenti URI (relativi) per riferirvi alle
DTD e alle definizioni di entità di queste specifiche:
"strict.dtd"
"loose.dtd"
"frameset.dtd"
"HTMLlat1.ent"
"HTMLsymbol.ent"
"HTMLspecial.ent"
-->
<!--================== Nomi importati ===================================-->
<!-- Commutatore di configurazione per documenti organizzati a frame -->
<!ENTITY % HTML.Frameset "IGNORE">
<!ENTITY % ContentType "CDATA"
-- tipo di mezzo, come da [RFC2045]
-->
<!ENTITY % ContentTypes "CDATA"
-- elenco separato da virgole di tipi di mezzo, come da [RFC2045]
-->
<!ENTITY % Charset "CDATA"
-- una codifica di carattere, come da [RFC2045]
-->
<!ENTITY % Charsets "CDATA"
-- un elenco di codifiche di carattere separato da spazi, come da [RFC2045]
-->
<!ENTITY % LanguageCode "NAME"
-- un codice di lingua, come da [RFC1766]
-->
<!ENTITY % Character "CDATA"
-- un singolo carattere tratto da [ISO10646]
-->
<!ENTITY % LinkTypes "CDATA"
-- elenco separato da spazi di tipi di collegamento
-->
<!ENTITY % MediaDesc "CDATA"
-- singolo descrittore di mezzo o elenco separato da virgole
-->
<!ENTITY % URI "CDATA"
-- un Identificatore Uniforme di Risorsa,
si veda [URI]
-->
<!ENTITY % Datetime "CDATA" -- informazioni su data e ora. Formato di data ISO -->
<!ENTITY % Script "CDATA" -- espressione di script -->
<!ENTITY % StyleSheet "CDATA" -- dati di foglio di stile -->
<!ENTITY % FrameTarget "CDATA" -- riproduce in questo frame -->
<!ENTITY % Text "CDATA">
<!-- Entità Parametro -->
<!ENTITY % head.misc "SCRIPT|STYLE|META|LINK|OBJECT" -- elementi di intestazione ripetibili -->
<!ENTITY % heading "H1|H2|H3|H4|H5|H6">
<!ENTITY % list "UL | OL | DIR | MENU">
<!ENTITY % preformatted "PRE">
<!ENTITY % Color "CDATA" -- un colore che usa sRGB: #RRGGBB come valori Esa -->
<!-- Esistono anche 16 nomi di colore largamente conosciuti, con i loro valori sRGB:
Black = #000000 Green = #008000
Silver = #C0C0C0 Lime = #00FF00
Gray = #808080 Olive = #808000
White = #FFFFFF Yellow = #FFFF00
Maroon = #800000 Navy = #000080
Red = #FF0000 Blue = #0000FF
Purple = #800080 Teal = #008080
Fuchsia= #FF00FF Aqua = #00FFFF
-->
<!ENTITY % bodycolors "
bgcolor %Color; #IMPLIED -- colore di sfondo di un documento --
text %Color; #IMPLIED -- colore del testo di un documento --
link %Color; #IMPLIED -- colore dei collegamenti --
vlink %Color; #IMPLIED -- colore dei collegamenti visitati --
alink %Color; #IMPLIED -- colore dei collegamenti selezionati --
">
<!--================ Entità carattere mnemoniche =========================-->
<!ENTITY % HTMLlat1 PUBLIC
"-//W3C//ENTITIES Latin1//EN//HTML"
"HTMLlat1.ent">
%HTMLlat1;
<!ENTITY % HTMLsymbol PUBLIC
"-//W3C//ENTITIES Symbols//EN//HTML"
"HTMLsymbol.ent">
%HTMLsymbol;
<!ENTITY % HTMLspecial PUBLIC
"-//W3C//ENTITIES Special//EN//HTML"
"HTMLspecial.ent">
%HTMLspecial;
<!--=================== Attributi generici ===============================-->
<!ENTITY % coreattrs
"id ID #IMPLIED -- id unico nell'ambito del documento --
class CDATA #IMPLIED -- elenco di classi separato da spazi --
style %StyleSheet; #IMPLIED -- informazioni di stile associate --
title %Text; #IMPLIED -- titolo di suggerimento --"
>
<!ENTITY % i18n
"lang %LanguageCode; #IMPLIED -- codice di lingua --
dir (ltr|rtl) #IMPLIED -- direzione per testo debole/indeterminato --"
>
<!ENTITY % events
"onclick %Script; #IMPLIED -- un pulsante di puntatore è stato cliccato --
ondblclick %Script; #IMPLIED -- un pulsante di puntatore è stato cliccato due volte --
onmousedown %Script; #IMPLIED -- un pulsante di puntatore è stato premuto --
onmouseup %Script; #IMPLIED -- un pulsante di puntatore è stato rilasciato --
onmouseover %Script; #IMPLIED -- un puntatore è stato mosso sopra --
onmousemove %Script; #IMPLIED -- un puntatore è stato mosso all'interno --
onmouseout %Script; #IMPLIED -- un puntatore è stato mosso via --
onkeypress %Script; #IMPLIED -- un tasto è stato premuto e rilasciato --
onkeydown %Script; #IMPLIED -- un tasto è stato premuto --
onkeyup %Script; #IMPLIED -- un tasto è stato rilasciato --"
>
<!-- Commutatore di Caratteristica Riservata -->
<!ENTITY % HTML.Reserved "IGNORE">
<!-- I seguenti attributi sono riservati per possibili usi futuri -->
<![ %HTML.Reserved; [
<!ENTITY % reserved
"datasrc %URI; #IMPLIED -- una Sorgente di Dati singola o tabellare --
datafld CDATA #IMPLIED -- il nome di proprietà o di colonna --
dataformatas (plaintext|html) plaintext -- testo o html --"
>
]]>
<!ENTITY % reserved "">
<!ENTITY % attrs "%coreattrs; %i18n; %events;">
<!ENTITY % align "align (left|center|right|justify) #IMPLIED"
-- left è predefinito per paragrafi ltr, right per quelli rtl --
>
<!--=================== Marcatura del testo ==============================-->
<!ENTITY % fontstyle
"TT | I | B | U | S | STRIKE | BIG | SMALL">
<!ENTITY % phrase "EM | STRONG | DFN | CODE |
SAMP | KBD | VAR | CITE | ABBR | ACRONYM" >
<!ENTITY % special
"A | IMG | APPLET | OBJECT | FONT | BASEFONT | BR | SCRIPT |
MAP | Q | SUB | SUP | SPAN | BDO | IFRAME">
<!ENTITY % formctrl "INPUT | SELECT | TEXTAREA | LABEL | BUTTON">
<!-- %inline; copre gli elementi in riga 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 lingua/stile -->
<!ATTLIST SPAN
%attrs; -- %coreattrs, %i18n, %events --
%reserved; -- riservato per un possibile uso futuro --
>
<!ELEMENT BDO - - (%inline;)* -- sovrascrive l'algoritmo bidirezionale -->
<!ATTLIST BDO
%coreattrs; -- id, class, style, title --
lang %LanguageCode; #IMPLIED -- codice di lingua --
dir (ltr|rtl) #REQUIRED -- direzionalità --
>
<!ELEMENT BASEFONT - O EMPTY -- grandezza di base dei caratteri -->
<!ATTLIST BASEFONT
id ID #IMPLIED -- id unico nell'ambito del documento --
size CDATA #REQUIRED -- grandezza di base dei caratteri per elementi FONT --
color %Color; #IMPLIED -- colore del testo --
face CDATA #IMPLIED -- elenco di nomi di carattere separato da virgole --
>
<!ELEMENT FONT - - (%inline;)* -- modifica locale del carattere -->
<!ATTLIST FONT
%coreattrs; -- id, class, style, title --
%i18n; -- lang, dir --
size CDATA #IMPLIED -- [+|-]nn es.: size="+1", size="4" --
color %Color; #IMPLIED -- colore del testo --
face CDATA #IMPLIED -- elenco di nomi di carattere separato da virgole --
>
<!ELEMENT BR - O EMPTY -- interruzione di riga forzata -->
<!ATTLIST BR
%coreattrs; -- id, class, style, title --
clear (left|all|right|none) none -- controllo del flusso di testo --
>
<!--================== Modelli di contenuto per HTML =====================-->
<!--
L'HTML possiede due modelli di contenuto fondamentali:
%inline; elementi a livello di carattere e stringhe di testo
%block; elementi a livello di blocco come ad es. paragrafi ed elenchi
-->
<!ENTITY % block
"P | %heading; | %list; | %preformatted; | DL | DIV | CENTER |
NOSCRIPT | NOFRAMES | BLOCKQUOTE | FORM | ISINDEX | HR |
TABLE | FIELDSET | ADDRESS">
<!ENTITY % flow "%block; | %inline;">
<!--=================== Corpo del Documento ==============================-->
<!ELEMENT BODY O O (%flow;)* +(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 --
background %URI; #IMPLIED -- riquadro di motivo grafico per sfondo di
documento --
%bodycolors; -- bgcolor, text, link, vlink, alink --
>
<!ELEMENT ADDRESS - - ((%inline;)|P)* -- informazioni sull'autore -->
<!ATTLIST ADDRESS
%attrs; -- %coreattrs, %i18n, %events --
>
<!ELEMENT DIV - - (%flow;)* -- contenitore generico di lingua/stile -->
<!ATTLIST DIV
%attrs; -- %coreattrs, %i18n, %events --
%align; -- allinea, allineamento del testo --
%reserved; -- riservato per un possibile uso futuro --
>
<!ELEMENT CENTER - - (%flow;)* -- abbreviazione per DIV align=center -->
<!ATTLIST CENTER
%attrs; -- %coreattrs, %i18n, %events --
>
<!--================== L'elemento Ancora ================================-->
<!ENTITY % Shape "(rect|circle|poly|default)">
<!ENTITY % Coords "CDATA" -- elenco di lunghezze separato da virgole -->
<!ELEMENT A - - (%inline;)* -(A) -- àncora -->
<!ATTLIST A
%attrs; -- %coreattrs, %i18n, %events --
charset %Charset; #IMPLIED -- codifica del carattere di risorsa collegata --
type %ContentType; #IMPLIED -- avviso sul tipo di contenuto --
name CDATA #IMPLIED -- destinazione di collegamento denominata --
href %URI; #IMPLIED -- URI di risorsa collegata --
hreflang %LanguageCode; #IMPLIED -- codice di lingua --
target %FrameTarget; #IMPLIED -- riproduce in questo frame --
rel %LinkTypes; #IMPLIED -- tipi di collegamento in avanti --
rev %LinkTypes; #IMPLIED -- tipi di collegamento all'indietro --
accesskey %Character; #IMPLIED -- carattere chiave per l'accessibilità --
shape %Shape; rect -- da usare con mappe immagine sul lato cliente --
coords %Coords; #IMPLIED -- da usare con mappe immagine sul lato server --
tabindex NUMBER #IMPLIED -- posizione nell'ordine di selezione --
onfocus %Script; #IMPLIED -- l'elemento ha ottenuto il fuoco --
onblur %Script; #IMPLIED -- l'elemento ha perduto il fuoco --
>
<!--================== Mappe immagine sul lato cliente ===================-->
<!-- Queste possono essere posizionate nello stesso documento o raggruppate in
un documento separato, benché ciò non sia ancora largamente supportato -->
<!ELEMENT MAP - - ((%block;) | AREA)+ -- mappa immagine sul lato cliente -->
<!ATTLIST MAP
%attrs; -- %coreattrs, %i18n, %events --
name CDATA #REQUIRED -- per riferimento da usemap --
>
<!ELEMENT AREA - O EMPTY -- area di mappa immagine sul lato cliente -->
<!ATTLIST AREA
%attrs; -- %coreattrs, %i18n, %events --
shape %Shape; rect -- controlla l'interpretazione delle coordinate --
coords %Coords; #IMPLIED -- elenco di lunghezze separato da virgole --
href %URI; #IMPLIED -- URI di risorsa collegata --
target %FrameTarget; #IMPLIED -- riproduce in questo frame --
nohref (nohref) #IMPLIED -- questa regione non è attiva --
alt %Text; #REQUIRED -- descrizione breve --
tabindex NUMBER #IMPLIED -- posizione nell'ordine di selezione --
accesskey %Character; #IMPLIED -- carattere chiave per l'accessibilità --
onfocus %Script; #IMPLIED -- l'elemento ha ottenuto il fuoco --
onblur %Script; #IMPLIED -- l'elemento ha perduto il fuoco --
>
<!--================== L'elemento Link ===================================-->
<!--
In linea di principio i valori di relazione possono essere usati:
a) per barre di navigazione/menu specifici di un documento, quando usati
con l'elemento LINK nella testata del documento; es.: inizio, sommario,
precedente, successivo, indice, fine, aiuto
b) per richiamare un foglio di stile separato (rel=stylesheet)
c) per creare un collegamento ad uno script (rel=script)
d) da fogli di stile per controllare come collezioni di nodi html
sono riprodotti all'interno di documenti stampati
e) per creare un collegamento ad una versione stampabile di questo documento
es: una versione postscript o pdf (rel=alternate media=print)
-->
<!ELEMENT LINK - O EMPTY -- un collegamento indipendente dal mezzo -->
<!ATTLIST LINK
%attrs; -- %coreattrs, %i18n, %events --
charset %Charset; #IMPLIED -- codifica del carattere di risorsa collegata --
href %URI; #IMPLIED -- URI di risorsa collegata --
hreflang %LanguageCode; #IMPLIED -- codice di lingua --
type %ContentType; #IMPLIED -- avviso sul tipo di contenuto --
rel %LinkTypes; #IMPLIED -- tipi di collegamento in avanti --
rev %LinkTypes; #IMPLIED -- tipi di collegamento all'indietro --
media %MediaDesc; #IMPLIED -- per la riproduzione con questi media --
target %FrameTarget; #IMPLIED -- riproduce in questo frame --
>
<!--=================== Immagini =========================================-->
<!-- Lunghezza definita in DTD Rigorosa per cellpadding/cellspacing -->
<!ENTITY % Length "CDATA" -- nn per pixel o nn% per lunghezza percentuale -->
<!ENTITY % MultiLength "CDATA" -- pixel, percentuale o relativa -->
<![ %HTML.Frameset; [
<!ENTITY % MultiLengths "CDATA" -- elenco separato da virgole di MultiLength -->
]]>
<!ENTITY % Pixels "CDATA" -- intero rappresentante una lunghezza in pixel -->
<!-- Per evitare problemi con i PU solo testuali, come pure
per rendere il contenuto dell'immagine comprensibile e navigabile
agli utenti di PU non visuali, occorre fornire una descrizione
con ALT ed evitare le mappe immagine sul lato server -->
<!ELEMENT IMG - O EMPTY -- Immagine incorporata -->
<!ATTLIST IMG
%attrs; -- %coreattrs, %i18n, %events --
src %URI; #REQUIRED -- URI di immagine da incorporare --
alt %Text; #REQUIRED -- descrizione breve --
longdesc %URI; #IMPLIED -- collegamento ad una descrizione lunga
(integra alt) --
name CDATA #IMPLIED -- nome di immagine per script --
height %Length; #IMPLIED -- sovrascrive l'altezza --
width %Length; #IMPLIED -- sovrascrive la larghezza --
usemap %URI; #IMPLIED -- da usare con una mappa immagine sul lato cliente --
ismap (ismap) #IMPLIED -- da usare con una mappa immagine sul lato server --
align %IAlign; #IMPLIED -- allineamento verticale o orizzontale --
border %Pixels; #IMPLIED -- ampiezza del bordo di collegamento --
hspace %Pixels; #IMPLIED -- margine interno orizzontale --
vspace %Pixels; #IMPLIED -- margine interno verticale --
>
<!-- USEMAP punta ad un elemento MAP che può essere in questo documento o in un
documento esterno, benché la seconda opzione non sia sufficientemente supportata -->
<!--==================== OBJECT ======================================-->
<!--
OBJECT è usato per incorporare oggetti come parte di pagine HTML.
Gli elementi PARAM dovrebbero avere la precedenza su altro contenuto.
Dettagli tecnici del modello di contenuto misto SGML impediscono di
specificare ciò formalmente ...
-->
<!ELEMENT OBJECT - - (PARAM | %flow;)*
-- oggetto generico incorporato -->
<!ATTLIST OBJECT
%attrs; -- %coreattrs, %i18n, %events --
declare (declare) #IMPLIED -- per dichiarare ma non istanziare l'oggetto --
classid %URI; #IMPLIED -- identifica un'implementazione --
codebase %URI; #IMPLIED -- URI di base per classid, data, archive --
data %URI; #IMPLIED -- riferimento a dati di oggetto --
type %ContentType; #IMPLIED -- tipo di contenuto per dati --
codetype %ContentType; #IMPLIED -- tipo di contenuto per codice --
archive CDATA #IMPLIED -- elenco separato da spazi di URI --
standby %Text; #IMPLIED -- messaggio da mostrare durante il caricamento --
height %Length; #IMPLIED -- sovrascrive l'altezza --
width %Length; #IMPLIED -- sovrascrive la larghezza --
usemap %URI; #IMPLIED -- da usare con mappe immagine sul lato cliente --
name CDATA #IMPLIED -- inoltra come parte di un modulo --
tabindex NUMBER #IMPLIED -- posizione in ordine di selezione --
align %IAlign; #IMPLIED -- allineamento orizzontale o verticale --
border %Pixels; #IMPLIED -- ampiezza del bordo di collegamento --
hspace %Pixels; #IMPLIED -- margine interno orizzontale --
vspace %Pixels; #IMPLIED -- margine interno verticale --
%reserved; -- riservato per un possibile uso futuro --
>
<!ELEMENT PARAM - O EMPTY -- valore di proprietà denominata -->
<!ATTLIST PARAM
id ID #IMPLIED -- id unico nell'ambito del documento --
name CDATA #REQUIRED -- nome di proprietà --
value CDATA #IMPLIED -- valore di proprietà --
valuetype (DATA|REF|OBJECT) DATA -- Come interpretare un valore --
type %ContentType; #IMPLIED -- tipo di contenuto per value
quando valuetype=ref --
>
<!--=================== APPLET Java ==================================-->
<!--
Uno tra gli attributi code o object deve essere presente.
Inserite gli elementi PARAM prima di altro contenuto.
-->
<!ELEMENT APPLET - - (PARAM | %flow;)* -- applet Java -->
<!ATTLIST APPLET
%coreattrs; -- id, class, style, title --
codebase %URI; #IMPLIED -- URI di base facoltativo per applet --
archive CDATA #IMPLIED -- elenco di archivi separato da virgole --
code CDATA #IMPLIED -- file class di applet --
object CDATA #IMPLIED -- file di applet serializzato --
alt %Text; #IMPLIED -- descrizione breve --
name CDATA #IMPLIED -- permette agli applet di trovarsi reciprocamente --
width %Length; #REQUIRED -- larghezza iniziale --
height %Length; #REQUIRED -- altezza iniziale --
align %IAlign; #IMPLIED -- allineamento orizzontale o verticale --
hspace %Pixels; #IMPLIED -- margine interno orizzontale --
vspace %Pixels; #IMPLIED -- margine interno verticale --
>
<!--=================== Linea orizzontale ================================-->
<!ELEMENT HR - O EMPTY -- linea orizzontale -->
<!ATTLIST HR
%attrs; -- %coreattrs, %i18n, %events --
align (left|center|right) #IMPLIED
noshade (noshade) #IMPLIED
size %Pixels; #IMPLIED
width %Length; #IMPLIED
>
<!--=================== Paragrafi ========================================-->
<!ELEMENT P - O (%inline;)* -- paragrafo -->
<!ATTLIST P
%attrs; -- %coreattrs, %i18n, %events --
%align; -- allinea, allineamento del testo --
>
<!--=================== Intestazioni =====================================-->
<!--
Esistono sei livelli di intestazione, da H1 (il più importante)
fino ad H6 (il meno importante).
-->
<!ELEMENT (%heading;) - - (%inline;)* -- intestazione -->
<!ATTLIST (%heading;)
%attrs; -- %coreattrs, %i18n, %events --
%align; -- allinea, allineamento del testo --
>
<!--=================== Testo preformattato ==============================-->
<!-- esclude la marcatura per le immagini e cambiamenti nella grandezza dei caratteri -->
<!ENTITY % pre.exclusion "IMG|OBJECT|APPLET|BIG|SMALL|SUB|SUP|FONT|BASEFONT">
<!ELEMENT PRE - - (%inline;)* -(%pre.exclusion;) -- testo preformattato -->
<!ATTLIST PRE
%attrs; -- %coreattrs, %i18n, %events --
width NUMBER #IMPLIED
>
<!--===================== Citazioni incorporate ==========================-->
<!ELEMENT Q - - (%inline;)* -- breve citazione incorporata -->
<!ATTLIST Q
%attrs; -- %coreattrs, %i18n, %events --
cite %URI; #IMPLIED -- URI per documento sorgente o msg --
>
<!--=================== Citazioni del tipo a blocco ======================-->
<!ELEMENT BLOCKQUOTE - - (%flow;)* -- citazione lunga -->
<!ATTLIST BLOCKQUOTE
%attrs; -- %coreattrs, %i18n, %events --
cite %URI; #IMPLIED -- URI per documento sorgente o msg --
>
<!--=================== Testo inserito/cancellato ========================-->
<!-- INS/DEL sono usati per aggiunte su BODY -->
<!ELEMENT (INS|DEL) - - (%flow;)* -- testo inserito, testo cancellato -->
<!ATTLIST (INS|DEL)
%attrs; -- %coreattrs, %i18n, %events --
cite %URI; #IMPLIED -- info sul motivo del cambiamento --
datetime %Datetime; #IMPLIED -- data e ora della modifica --
>
<!--=================== Elenchi ==========================================-->
<!-- elenchi di definizioni - DT per il termine, DD per la sua definizione -->
<!ELEMENT DL - - (DT|DD)+ -- elenco di definizioni -->
<!ATTLIST DL
%attrs; -- %coreattrs, %i18n, %events --
compact (compact) #IMPLIED -- spaziatura ridotta tra le voci --
>
<!ELEMENT DT - O (%inline;)* -- termine della definizione -->
<!ELEMENT DD - O (%flow;)* -- descrizione della definizione -->
<!ATTLIST (DT|DD)
%attrs; -- %coreattrs, %i18n, %events --
>
<!-- Elenchi ordinati (OL) Stile di numerazione
1 numeri arabi 1, 2, 3, ...
a alfab. minuscoli a, b, c, ...
A alfab. maiuscoli A, B, C, ...
i romani minuscoli i, ii, iii, ...
I romani maiuscoli I, II, III, ...
Lo stile è applicato al numero nella sequenza, che per impostazione
predefinita è riportato ad 1 per la prima voce di un elenco ordinato.
Ciò non può essere espresso direttamente in SGML a causa dell'incrociarsi
dei casi.
-->
<!ENTITY % OLStyle "CDATA" -- vincolato a: "(1|a|A|i|I)" -->
<!ELEMENT OL - - (LI)+ -- elenco ordinato -->
<!ATTLIST OL
%attrs; -- %coreattrs, %i18n, %events --
type %OLStyle; #IMPLIED -- stile di numerazione --
compact (compact) #IMPLIED -- spaziatura ridotta tra le voci --
start NUMBER #IMPLIED -- numero iniziale della sequenza --
>
<!-- Elenchi non ordinati (UL) stili per i pallini -->
<!ENTITY % ULStyle "(disc|square|circle)">
<!ELEMENT UL - - (LI)+ -- elenco non ordinato -->
<!ATTLIST UL
%attrs; -- %coreattrs, %i18n, %events --
type %ULStyle; #IMPLIED -- stile del pallino --
compact (compact) #IMPLIED -- spaziatura ridotta tra le voci --
>
<!ELEMENT (DIR|MENU) - - (LI)+ -(%block;) -- elenco di directory, elenco di menu -->
<!ATTLIST DIR
%attrs; -- %coreattrs, %i18n, %events --
compact (compact) #IMPLIED -- spaziatura ridotta tra le voci --
>
<!ATTLIST MENU
%attrs; -- %coreattrs, %i18n, %events --
(compact) #IMPLIED -- spaziatura ridotta tra le voci --
>
<!ENTITY % LIStyle "CDATA" -- vincolato a: "(%ULStyle;|%OLStyle;)" -->
<!ELEMENT LI - O (%flow;)* -- voce di elenco -->
<!ATTLIST LI
%attrs; -- %coreattrs, %i18n, %events --
type %LIStyle; #IMPLIED -- stile della voce di elenco --
value NUMBER #IMPLIED -- reimposta il numero nella sequenza --
>
<!--================ Moduli ==============================================-->
<!ELEMENT FORM - - (%flow;)* -(FORM) -- modulo interattivo -->
<!ATTLIST FORM
%attrs; -- %coreattrs, %i18n, %events --
action %URI; #REQUIRED -- gestore di moduli sul lato server --
method (GET|POST) GET -- metodo HTTP usato per inoltrare il modulo --
enctype %ContentType; "application/x-www-form-urlencoded"
accept %ContentTypes; #IMPLIED -- elenco di tipi MIME per l'invio di file --
name CDATA #IMPLIED -- nome di modulo per script --
onsubmit %Script; #IMPLIED -- il modulo è stato inoltrato --
onreset %Script; #IMPLIED -- il modulo è stato riportato alla condizione iniziale --
target %FrameTarget; #IMPLIED -- riproduce in questo frame --
accept-charset %Charsets; #IMPLIED -- elenco di insiemi di caratteri supportati --
>
<!-- Ciascuna etichetta non deve contenere più di UN SOLO campo -->
<!ELEMENT LABEL - - (%inline;)* -(LABEL) -- etichetta di testo per campo di modulo -->
<!ATTLIST LABEL
%attrs; -- %coreattrs, %i18n, %events --
for IDREF #IMPLIED -- corrisponde al valore ID del campo --
accesskey %Character; #IMPLIED -- carattere chiave per l'accessibilità --
onfocus %Script; #IMPLIED -- l'elemento ha ottenuto il fuoco --
onblur %Script; #IMPLIED -- l'elemento ha perduto il fuoco --
>
<!ENTITY % InputType
"(TEXT | PASSWORD | CHECKBOX |
RADIO | SUBMIT | RESET |
FILE | HIDDEN | IMAGE | BUTTON)"
>
<!-- nome di attributo obbligatorio per tutti tranne che per submit e reset -->
<!ELEMENT INPUT - O EMPTY -- controllo di modulo -->
<!ATTLIST INPUT
%attrs; -- %coreattrs, %i18n, %events --
type %InputType; TEXT -- che tipo di arnese è necessario --
name CDATA #IMPLIED -- da inoltrare come parte di un modulo --
value CDATA #IMPLIED -- da specificare per radiocomandi e caselle di spunta --
checked (checked) #IMPLIED -- per radiocomandi e caselle di spunta --
disabled (disabled) #IMPLIED -- non disponibile in questo contesto --
readonly (readonly) #IMPLIED -- per testo e codice segreto --
size CDATA #IMPLIED -- specifico di ogni tipo di campo --
maxlength NUMBER #IMPLIED -- massimo numero di caratteri per campi di testo --
src %URI; #IMPLIED -- per campi con immagini --
alt CDATA #IMPLIED -- descrizione breve --
usemap %URI; #IMPLIED -- da usare con mappe immagine sul lato cliente --
ismap (ismap) #IMPLIED -- da usare con mappe immagine sul lato server --
tabindex NUMBER #IMPLIED -- posizione in ordine di selezione --
accesskey %Character; #IMPLIED -- carattere chiave per l'accessibilità --
onfocus %Script; #IMPLIED -- l'elemento ha ottenuto il fuoco --
onblur %Script; #IMPLIED -- l'elemento ha perduto il fuoco --
onselect %Script; #IMPLIED -- del testo è stato selezionato --
onchange %Script; #IMPLIED -- il valore dell'elemento è stato cambiato --
accept %ContentTypes; #IMPLIED -- elenco di tipi MIME per l'invio di file --
align %IAlign; #IMPLIED -- allineamento orizzontale o verticale --
%reserved; -- riservato per un possibile uso futuro --
>
<!ELEMENT SELECT - - (OPTGROUP|OPTION)+ -- selettore di alternative -->
<!ATTLIST SELECT
%attrs; -- %coreattrs, %i18n, %events --
name CDATA #IMPLIED -- nome di campo --
size NUMBER #IMPLIED -- righe visibili --
multiple (multiple) #IMPLIED -- la selezione singola è predefinita --
disabled (disabled) #IMPLIED -- non disponibile in questo contesto --
tabindex NUMBER #IMPLIED -- posizione in ordine di selezione --
onfocus %Script; #IMPLIED -- l'elemento ha ottenuto il fuoco --
onblur %Script; #IMPLIED -- l'elemento ha perduto il fuoco --
onchange %Script; #IMPLIED -- il valore dell'elemento è stato cambiato --
%reserved; -- riservato per un possibile uso futuro --
>
<!ELEMENT OPTGROUP - - (OPTION)+ -- gruppo di opzioni -->
<!ATTLIST OPTGROUP
%attrs; -- %coreattrs, %i18n, %events --
disabled (disabled) #IMPLIED -- non disponibile in questo contesto --
label %Text; #REQUIRED -- per l'uso in menu gerarchici --
>
<!ELEMENT OPTION - O (#PCDATA) -- scelta selezionabile -->
<!ATTLIST OPTION
%attrs; -- %coreattrs, %i18n, %events --
selected (selected) #IMPLIED
disabled (disabled) #IMPLIED -- non disponibile in questo contesto --
label %Text; #IMPLIED -- per l'uso in menu gerarchici --
value CDATA #IMPLIED -- assume per difetto 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 disponibile in questo contesto --
readonly (readonly) #IMPLIED
tabindex NUMBER #IMPLIED -- posizione nell'ordine di selezione --
accesskey %Character; #IMPLIED -- carattere chiave per l'accessibilità --
onfocus %Script; #IMPLIED -- l'elemento ha ottenuto il fuoco --
onblur %Script; #IMPLIED -- l'elemento ha perduto il fuoco --
onselect %Script; #IMPLIED -- del testo è stato selezionato --
onchange %Script; #IMPLIED -- il valore dell'elemento è stato cambiato --
%reserved; -- riservato per un possibile uso futuro --
>
<!--
#PCDATA è per risolvere il problema del contenuto misto,
in base alle specifiche ivi è consentito soltanto lo spazio bianco!
-->
<!ELEMENT FIELDSET - - (#PCDATA,LEGEND,(%flow;)*) -- gruppo di controlli di modulo -->
<!ATTLIST FIELDSET
%attrs; -- %coreattrs, %i18n, %events --
>
<!ELEMENT LEGEND - - (%inline;)* -- didascalia per un gruppo di controlli -->
<!ENTITY % LAlign "(top|bottom|left|right)">
<!ATTLIST LEGEND
%attrs; -- %coreattrs, %i18n, %events --
accesskey %Character; #IMPLIED -- carattere chiave per l'accessibilità --
align %LAlign; #IMPLIED -- relativo ad un insieme di campi --
>
<!ELEMENT BUTTON - -
(%flow;)* -(A|%formctrl;|FORM|ISINDEX|FIELDSET|IFRAME)
-- pulsante di comando -->
<!ATTLIST BUTTON
%attrs; -- %coreattrs, %i18n, %events --
name CDATA #IMPLIED
value CDATA #IMPLIED -- inviato al server con l'inoltro --
type (button|submit|reset) submit -- da usare come pulsante di un modulo --
disabled (disabled) #IMPLIED -- non disponibile in questo contesto --
tabindex NUMBER #IMPLIED -- posizione nell'ordine di selezione --
accesskey %Character; #IMPLIED -- carattere chiave per l'accessibilità --
onfocus %Script; #IMPLIED -- l'elemento ha ottenuto il fuoco --
onblur %Script; #IMPLIED -- l'elemento ha perduto il fuoco --
%reserved; -- riservato per un possibile uso futuro --
>
<!--======================= Tabelle ======================================-->
<!-- Standard IETF HTML per tabelle, si veda [RFC1942] -->
<!--
L'attributo BORDER imposta lo spessore del bordo intorno alla tabella.
L'unità di misura predefinita sono i pixel dello schermo.
L'attributo FRAME specifica quale parte del bordo che circonda la tabella
dovrebbe essere riprodotta. I valori non sono gli stessi di CALS per
evitare un conflitto di nomi con l'attributo VALIGN.
Il valore "border" è incluso per ragioni di compatibilità all'indietro con
<TABLE BORDER>, che cede il posto a frame=border e border=implicito
Per <TABLE BORDER=1> si ha border=1 e frame=implicito. In tal caso,
è appropriato trattare ciò come frame=border per mantenere la compatibilità
all'indietro con i browser in campo.
-->
<!ENTITY % TFrame "(void|above|below|hsides|lhs|rhs|vsides|box|border)">
<!--
L'attributo RULES definisce quali filetti tracciare tra le celle:
Se RULES è assente si assume allora:
"none" se BORDER è assente o BORDER=0, altrimenti "all"
-->
<!ENTITY % TRules "(none | groups | rows | cols | all)">
<!-- posizionamento orizzontale di una tabella relativamente al documento -->
<!ENTITY % TAlign "(left|center|right)">
<!-- attributi di allineamento orizzontale per contenuti di cella -->
<!ENTITY % cellhalign
"align (left|center|right|justify|char) #IMPLIED
char %Character; #IMPLIED -- carattere di allineamento, es.: char=':' --
charoff %Length; #IMPLIED -- spostamento per carattere di allineamento --"
>
<!-- attributi di allineamento verticale per contenuti di cella -->
<!ENTITY % cellvalign
"valign (top|middle|bottom|baseline) #IMPLIED"
>
<!ELEMENT TABLE - -
(CAPTION?, (COL*|COLGROUP*), THEAD?, TFOOT?, TBODY+)>
<!ELEMENT CAPTION - - (%inline;)* -- didascalia di tabella -->
<!ELEMENT THEAD - O (TR)+ -- intestazione di tabella -->
<!ELEMENT TFOOT - O (TR)+ -- piede di tabella -->
<!ELEMENT TBODY O O (TR)+ -- corpo di tabella -->
<!ELEMENT COLGROUP - O (COL)* -- gruppo di colonne di tabella -->
<!ELEMENT COL - O EMPTY -- colonna di tabella -->
<!ELEMENT TR - O (TH|TD)+ -- riga di tabella -->
<!ELEMENT (TH|TD) - O (%flow;)* -- cella d'intestazione di tabella, cella di dati di tabella -->
<!ATTLIST TABLE -- elemento di tabella --
%attrs; -- %coreattrs, %i18n, %events --
summary %Text; #IMPLIED -- scopo/struttura per riproduzione vocale --
width %Length; #IMPLIED -- larghezza di tabella --
border %Pixels; #IMPLIED -- controlla la larghezza del bordo intorno alla tabella --
frame %TFrame; #IMPLIED -- quale parte del bordo riprodurre --
rules %TRules; #IMPLIED -- filetti tra righe e colonne --
cellspacing %Length; #IMPLIED -- spaziatura tra le celle --
cellpadding %Length; #IMPLIED -- spaziatura all'interno delle celle --
align %TAlign; #IMPLIED -- posizione della tabella rispetto alla finestra --
bgcolor %Color; #IMPLIED -- colore di sfondo delle celle --
%reserved; -- riservato per un possibile uso futuro --
datapagesize CDATA #IMPLIED -- riservato per un possibile uso futuro --
>
<!ENTITY % CAlign "(top|bottom|left|right)">
<!ATTLIST CAPTION
%attrs; -- %coreattrs, %i18n, %events --
align %CAlign; #IMPLIED -- relativo alla tabella --
>
<!--
COLGROUP raggruppa un insieme di elementi COL. Ciò consente di raggruppare
insieme una serie di colonne semanticamente correlate.
-->
<!ATTLIST COLGROUP
%attrs; -- %coreattrs, %i18n, %events --
span NUMBER 1 -- numero predefinito di colonne raggruppate --
width %MultiLength; #IMPLIED -- larghezza predefinita delle colonne racchiuse --
%cellhalign; -- allineamento orizzontale nelle celle --
%cellvalign; -- allineamento verticale nelle celle --
>
<!--
Gli elementi COL definiscono le proprietà di allineamento
per le celle in una o più colonne.
L'attributo WIDTH specifica la larghezza delle colonne, es.:
width=64 larghezza in pixel a schermo
width=0.5* larghezza relativa di 0,5
L'attributo SPAN fa sì che gli attributi di un elemento
COL si applichino a più di una colonna.
-->
<!ATTLIST COL -- gruppi di colonne e proprietà --
%attrs; -- %coreattrs, %i18n, %events --
span NUMBER 1 -- gli attributi COL influenzano N colonne --
width %MultiLength; #IMPLIED -- definizione della larghezza di colonna --
%cellhalign; -- allineamento orizzontale nelle celle --
%cellvalign; -- allineamento verticale nelle celle --
>
<!--
Usate THEAD per duplicare le intestazioni sulle pagine
successive quando una tabella è interrotta dai margini
della pagina, o per avere intestazioni statiche quando
le sezioni TBODY sono riprodotte all'interno di riquadri
con scorrimento.
Usate TFOOT per duplicare i pie' di pagina sulle pagine
successive quando una tabella è interrotta dai margini
della pagina, o per avere pie' di pagina statici quando
le sezioni TBODY sono riprodotte all'interno di riquadri
con scorrimento.
Usate più sezioni TBODY quando servono dei filetti per
separare gruppi di righe di tabella.
-->
<!ATTLIST (THEAD|TBODY|TFOOT) -- sezione di tabella --
%attrs; -- %coreattrs, %i18n, %events --
%cellhalign; -- allineamento orizzontale nelle celle --
%cellvalign; -- allineamento verticale nelle celle --
>
<!ATTLIST TR -- riga di tabella --
%attrs; -- %coreattrs, %i18n, %events --
%cellhalign; -- allineamento orizzontale nelle celle --
%cellvalign; -- allineamento verticale nelle celle --
bgcolor %Color; #IMPLIED -- colore di sfondo della riga --
>
<!-- Scope è più semplice dell'attributo headers per le comuni tabelle -->
<!ENTITY % Scope "(row|col|rowgroup|colgroup)">
<!-- TH è per intestazioni, TD per dati, ma per celle che svolgono entrambe le funzioni usate TD -->
<!ATTLIST (TH|TD) -- cella d'intestazione o di dati --
%attrs; -- %coreattrs, %i18n, %events --
abbr %Text; #IMPLIED -- abbreviazione per cella d'intestazione --
axis CDATA #IMPLIED -- elenco di intestazioni correlate separato da virgole --
headers IDREFS #IMPLIED -- elenco di id per celle d'intestazione --
scope %Scope; #IMPLIED -- àmbito coperto da celle d'intestazione --
rowspan NUMBER 1 -- numero di righe su cui si estende una cella --
colspan NUMBER 1 -- numero di colonne su cui si estende una cella --
%cellhalign; -- allineamento orizzontale nelle celle --
%cellvalign; -- allineamento verticale nelle celle --
nowrap (nowrap) #IMPLIED -- sopprime la suddivisione delle righe lunghe --
bgcolor %Color; #IMPLIED -- colore di sfondo della cella --
width %Length; #IMPLIED -- larghezza di cella --
height %Length; #IMPLIED -- altezza di cella --
>
<!--================== Frame nei documenti ===============================-->
<!--
Il modello di contenuto per i documenti HTML dipende da se HEAD sia seguito
da un elemento FRAMESET o da un elemento BODY. La diffusa omissione
del marcatore iniziale BODY rende irragionevole definire il modello di
contenuto senza l'uso di una sezione contrassegnata.
-->
<![ %HTML.Frameset; [
<!ELEMENT FRAMESET - - ((FRAMESET|FRAME)+ & NOFRAMES?) -- suddivisione di finestra -->
<!ATTLIST FRAMESET
%coreattrs; -- id, class, style, title --
rows %MultiLengths; #IMPLIED -- elenco di lunghezze,
predefinito: 100% (1 riga) --
cols %MultiLengths; #IMPLIED -- elenco di lunghezze,
predefinito: 100% (1 colonna) --
onload %Script; #IMPLIED -- tutti i frame sono stati caricati --
onunload %Script; #IMPLIED -- tutti i frame sono stati rimossi --
>
]]>
<![ %HTML.Frameset; [
<!-- i nomi di frame riservati cominciano con "_" altrimenti cominciano con una lettera -->
<!ELEMENT FRAME - O EMPTY -- sottofinestra -->
<!ATTLIST FRAME
%coreattrs; -- id, class, style, title --
longdesc %URI; #IMPLIED -- collegamento ad una descrizione lunga
(integra title) --
name CDATA #IMPLIED -- nome di frame per identificare la destinazione --
src %URI; #IMPLIED -- sorgente del contenuto di frame --
frameborder (1|0) 1 -- occorrono bordi per il frame? --
marginwidth %Pixels; #IMPLIED -- larghezza dei margini in pixel --
marginheight %Pixels; #IMPLIED -- altezza dei margini in pixel --
noresize (noresize) #IMPLIED -- permettere agli utenti di ridimensionare i frame? --
scrolling (yes|no|auto) auto -- barre di scorrimento oppure no --
>
]]>
<!ELEMENT IFRAME - - (%flow;)* -- sottofinestra incorporata -->
<!ATTLIST IFRAME
%coreattrs; -- id, class, style, title --
longdesc %URI; #IMPLIED -- collegamento ad una descrizione lunga
(integra title) --
name CDATA #IMPLIED -- nome di frame per identificare la destinazione --
src %URI; #IMPLIED -- sorgente del contenuto di frame --
frameborder (1|0) 1 -- occorrono bordi per il frame? --
marginwidth %Pixels; #IMPLIED -- larghezza dei margini in pixel --
marginheight %Pixels; #IMPLIED -- altezza dei margini in pixel --
scrolling (yes|no|auto) auto -- barre di scorrimento oppure no --
align %IAlign; #IMPLIED -- allineamento orizzontale o verticale --
height %Length; #IMPLIED -- altezza di frame --
width %Length; #IMPLIED -- larghezza di frame --
>
<![ %HTML.Frameset; [
<!ENTITY % noframes.content "(BODY) -(NOFRAMES)">
]]>
<!ENTITY % noframes.content "(%flow;)*">
<!ELEMENT NOFRAMES - - %noframes.content;
-- contenitore di contenuto alternativo per riproduzione non basata su frame -->
<!ATTLIST NOFRAMES
%attrs; -- %coreattrs, %i18n, %events --
>
<!--================ Testata del documento ===============================-->
<!-- %head.misc; definito prima come "SCRIPT|STYLE|META|LINK|OBJECT" -->
<!ENTITY % head.content "TITLE & ISINDEX? & BASE?">
<!ELEMENT HEAD O O (%head.content;) +(%head.misc;) -- testata di documento -->
<!ATTLIST HEAD
%i18n; -- lang, dir --
profile %URI; #IMPLIED -- dizionario designato di metainformazioni --
>
<!-- L'elemento TITLE non è considerato parte del flusso di testo.
Esso dovrebbe essere mostrato per esempio come intestazione di una
pagina o come titolo di una finestra. Uno ed un solo titolo è richiesto
per un documento.
-->
<!ELEMENT TITLE - - (#PCDATA) -(%head.misc;) -- titolo di documento -->
<!ATTLIST TITLE %i18n>
<!ELEMENT ISINDEX - O EMPTY -- prompt a riga singola -->
<!ATTLIST ISINDEX
%coreattrs; -- id, class, style, title --
%i18n; -- lang, dir --
prompt %Text; #IMPLIED -- messaggio di attesa immissione -->
<!ELEMENT BASE - O EMPTY -- URI di base del documento -->
<!ATTLIST BASE
href %URI; #IMPLIED -- URI che funge da URI di base --
target %FrameTarget; #IMPLIED -- riproduce in questo frame --
>
<!ELEMENT META - O EMPTY -- metainformazioni generiche -->
<!ATTLIST META
%i18n; -- lang, dir, da usare con il contenuto --
http-equiv NAME #IMPLIED -- nome di intestazione di risposta HTTP --
name NAME #IMPLIED -- nome di metainformazione --
content CDATA #REQUIRED -- informazioni associate --
scheme CDATA #IMPLIED -- seleziona il genere di contenuto --
>
<!ELEMENT STYLE - - %StyleSheet -- informazioni di stile -->
<!ATTLIST STYLE
%i18n; -- lang, dir, da usare con title --
type %ContentType; #REQUIRED -- tipo di contenuto del linguaggio di stile --
media %MediaDesc; #IMPLIED -- progettato per l'uso con questi media --
title %Text; #IMPLIED -- titolo di suggerimento --
>
<!ELEMENT SCRIPT - - %Script; -- istruzioni di script -->
<!ATTLIST SCRIPT
charset %Charset; #IMPLIED -- codifica del carattere di risorsa collegata --
type %ContentType; #REQUIRED -- tipo di contenuto del linguaggio di script --
language CDATA #IMPLIED -- nome del linguaggio di script predefinito --
src %URI; #IMPLIED -- URI per uno script esterno --
defer (defer) #IMPLIED -- i PU possono differire l'esecuzione di uno script --
event CDATA #IMPLIED -- riservato per un possibile uso futuro --
for %URI; #IMPLIED -- riservato per un possibile uso futuro --
>
<!ELEMENT NOSCRIPT - - (%flow;)*
-- contenitore di contenuto alternativo per riproduzione non basata su script -->
<!ATTLIST NOSCRIPT
%attrs; -- %coreattrs, %i18n, %events --
>
<!--================ Struttura del Documento =============================-->
<!ENTITY % version "version CDATA #FIXED '%HTML.Version;'">
<![ %HTML.Frameset; [
<!ENTITY % html.content "HEAD, FRAMESET">
]]>
<!ENTITY % html.content "HEAD, BODY">
<!ELEMENT HTML O O (%html.content;) -- elemento radice del documento -->
<!ATTLIST HTML
%i18n; -- lang, dir --
%version;
>