Nell’articolo precedente abbiamo visto l’elemento fondamentale della costituzione di una DTD, si tratta in particolare di .
Può essere necessario, al fine di specificare meglio le caratteristiche di un certo elemento contenuto nel documento XML, utilizzare il concetto di “attributo”.
Un attributo è una coppia nome=”valore” che si associa ad un elemento XML, la sua sintassi è la seguente:
…/
vediamo un esempio:
…
/
Per ottenere la validazione di un elemento dotato di attributi, si utilizza, all’interno della DTD, la sintessi seguente:
/
L’esempio associato al frammento di XML precedente è il seguente:
/
Il TipoAttributo può avere le seguenti impostazioni:
- CDATA: consente l’utilizzo di dati di tipo carattere
- ENTITY: consente l’utilizzo di un’entità esterna
- ENTITIES: più entità esterne valori separate da spazi
- ID: identificatore univoco, se nel documento ci sono più attributi con lo stesso ID verrà generato un errore
- IDREF: un riferimento ad un ID esistente nel documento
- NMTOKEN: una combinazione di lettere, numeri, punti, trattini ecc.
- NMTOKENS: più valori NMTOKEN separati da spazi
- NOTATION: un riferimento ad una annotazione esistente nel documento
Le opzioni disponibili invece sono le seguenti:
- #REQUIRED: l’attributo è obbligatorio, se non è presente viene generato un errore
- #IMPLIED: attributo opzionale
- #FIXED valore: l’attributo ha il valore fisso “valore”
- Default: se l’elemento non ha l’attributo, viene utilizzato un valore di default
Utilizzando gli attributi è possibile ottenere una miglior definizione della grammatica e, di conseguenza, una qualità superiore nel documento XML da validare.