Creare documenti validi con le DTD Parte 2
?: il punto di domanda, il quale indica che in un documento XML possiamo inserire o nessuno oppure uno degli elementi dichiarati nella DTD;
+: il segno di addizione, il quale indica che nel documento possiamo inserire uno o più elementi dichiarati;
*: l' asterisco, che indica l' inclusione nel documento di più elementi o nessuno tra quelli dichiarati.
Passiamo adesso a vedere qualche esempio di dichiarazione valida DTD. Come nostro riferimento prendiamo sempre l' inventario dei libri. Se si dichiarasse:
<!ELEMENT AUTORE (#PCDATA)>
<!ELEMENT TITOLO (#PCDATA)>
<!ELEMENT COPERTINA (#PCDATA)>
avremo il seguente documento valido.
Dichiarazione degli attributi
In un documenmto XML valido, si devono dichiarare tutti gli attributi che si vogliono utilizzare con gli elementi del documento. La dichiarazione dell' elenco di attributi ha la seguente forma:
Nome è il nome del tipo di elemento associato all' attributo;
DefinizioneAttributi è una serie di una o più definizioni di attributo, ognuna delle quali definisce un attributo. Una definizione di attributo ha la seguente sintassi:
Nome è il nome dell' attributo;
TipoAttributo è il tipo di attributo ed indica il valore che può avere l' attributo;
Dichiarazione Predefinita indica se l' attributo è necessario più altre informazioni.
Di seguito viene presentato un esempio di dichiarazione di due attributi, dal nome Genere e Anno, per l' elemento LIBRO:
È possibile assegnare all' attributo Class qualsiasi stringa valida (CDATA); se omettiamo l' attributo di un elemento, automaticamente viene assegnato il valore thriller.
All' attributo Anno possiamo assegnare qualsiasi valore (CDATA); però a questo attributo deve essere assegnato un valore in ogni elemento LIBRO, in quanto c'è la parola chiave #REQUIRED e non può avere un valore predefinito. Si veda il seguente file di esempio xml. Nell' elemento LIBRO, all' attributo Anno è stato assegnato il valore "2000". L'attributo Class è stato omesso; poichè questo attributo ha un valore predefinito, cioèthriller, viene comunque assegnato quel valore predefinito come se fosse stato incluso e fosse stato immesso il valore.
| < Prec. | Succ. > |
|---|

