Capitolo III: Definizione del tipo di documento (DTD) |
Attributi Oltre alla definizione della struttura di un elemento e al tipo di contenuto, è possibile associare attributi a un elemento. Gli attributi forniscono informazioni aggiuntive relative allelemento o al contenuto dellelemento. DICHIARAZIONI DI ATTRIBUTO Nel linguaggio XML gli attributi vengono dichiarati nella DTD utilizzando la sintassi seguente: <!ATTLIST ElementName AttributeName Type Default> In questo caso <!ATTLIST> rappresenta il tag che identifica una dichiarazione di attributo. La voce ElementName rappresenta il nome dellelemento a cui vengono applicati gli attributi, La voce AttributeName rappresenta il nome dellattributo. La voce Type identifica il tipo di attributo dichiarato. La voce Default specifica le impostazioni predefinite relative allattributo. Ecco elencati i tipi di attributi disponibili per il linguaggio XML:
La parte finale della dichiarazione di attributo è limpostazione predefinita per il valore dellattributo. Le impostazioni predefinite per i quattro tipi sono:
Nel documento desempio mostriamo lutilizzo degli attributi aggiungendo alcune dichiarazioni di attributo alla DTD: <?xml version="1.0"?> <!DOCTYPE EMAIL [ <!ELEMENT EMAIL (TO+, FROM, CC*, BCC*, SUBJECT?, BODY?)> <!ATTLIST EMAIL LANGUAGE(Western|Greek|Latin|Universal) " Western" ENCRYPTED CDATA #IMPLIED PRIORITY (NORMAL|LOW|HIGH) "NORMAL"> <!ELEMENT TO (#PCDATA)> <!ELEMENT FROM (#PCDATA)> <!ELEMENT CC (#PCDATA)> <!ELEMENT BCC (#PCDATA)> <!ATTLIST BCC HIDDEN CDATA #FIXED "TRUE"> <!ELEMENT SUBJECT (#PCDATA)> <!ELEMENT BODY (#PCDATA)> ]> In questo esempio sono stati aggiunti attributi allelemento Email e al nuovo elemento Bcc. Il primo attributo aggiunto allelemento Email è LANGUAGE. Questo attributo può contenere una tra le numerose opzioni. Lattributo conterrà il valore predefinito Western se non verrà specificato un altro valore. Lattributo successivo dellelemento Email è ENCRYPTED. Questo elemento deve contenere i dati di carattere e poiché limpostazione predefinita è #IMPLIED, lelaboratore ignorerà questo attributo se non verrà specificato alcun valore. Lultimo attributo dellelemento Email è PRIORITY. Questo attributo può assumere uno dei tre valori NORMAL, LOW e HIGH. Il valore predefinito è NORMAL. Lattributo HIDDEN è stato incluso nellelemento Bcc. Questo attributo è di tipo CDATA e il valore predefinito di #FIXED viene specificato dopo la parola chiave #FIXED. Questo attributo deve sempre specificare il valore nella DTD, in questo caso TRUE. |