Dichiarazione di Attributi

<!ATTLIST name  att-name att-type att-default  att-name2 att-type2 att-default2  ...> 

Si possono dichiarare un numero arbitrario di attributi in ogni ATTLIST.

Tipi

I tipi predefiniti da XML sono molto “poveri”. I valori ammissibili per il campo att-type sono:

CDATA
testo generico
ID
id univoci
  • Un elemento può avere al più un attributo di tipo ID.
  • I valori degli attributi ID di tutti gli elementi in un documento XML devono essere univoci.
IDREF
riferimento a valore ID
  • Un attributo di questo tipo può avere come valore solo uno dei valori degli attributi di tipo ID dello stesso documento.
IDREFS
riferimenti a valori id
  • IDREF separati da spazi.
ENTITY
nome di una entità
  • I valori devono essere quelli di entità unparsed dichiarate nel DTD.
ENTITIES
nomi di più entità
NMTOKEN
parola ‘nmtoken’
  • Può contenere solo lettere, numeri e i simboli ‘-’, ‘_’, ‘.’ e ‘:’.
NMTOKENS
sequenza nmtoken
(nmtoken | …)
lista valori
  • Il valore dell’attributo deve essere uno di quelli della lista in or.
NOTATION (nt-ref)
entità unparsed
  • nt-ref è una notazione che specifica il tipo dell’entità esterna unparsed.

Default

att-default deve avere una delle forme seguenti:

#REQUIRED
L’attributo è obbligatorio, e deve essere sempre specificato.
#IMPLIED
L’attributo è facolattivo.
“valore”
L’attributo è facoltativo.
Se non viene specificato il parser XML si comporta come se fosse stato specificato col valore di default dato.
#FIXED “valore”
L’attributo può assumere solo il valore di default.
Se viene specificato, deve avere questo valore. Se non viene specificato, il parser XML assume che abbia il valore dichiarato.