Tipi di attributi nella Document Type Definition

Le DTD, ossia le Document Type Definition servono per specificare in maniera formale la struttura di un linguaggio XML. Pertanto le componenti essenziali di una DTD sono tre.

1. Devono dichiarare una notazione
Ossia devono associare un nome alle informazioni del formato, ossia .
E’ possibile anche associare una risorsa che adempia alla risuluzione della notazione.

2. Devono dichiarare delle entità
Le entità sono utilizzate per dichiarare dei riferimenti che possono essere interi o esterne al documento.
Nell

Entità Document Type Definition

Dichiarazioni di entità nella Document Type Definition


3. Bisogna dichiarare gli elementi
Ogni elemento del linguaggio deve essere dichiarato nella Document Type Definition. Ad esempio se ho un tag chiamato filename con contenuto file.jpg (file.jpg) il rispettivo binding nella Document Type Definition sarà .

Dopo questa rapida introduzione torniamo ai tipi di attributi nella Document Type Definition. Ogni tag XML, ossia ogni elemento informativo del file XML può possedere un numero arbitrario di attributi al suo interno, ogni attributo pertanto possiede nome, tipo e direttiva.

<!ATTLIST nome tipo direttiva >

Senza soffermarci sul nome che è il rispettivo nome dell’attributo nel tag XML passiamo a vedere la direttiva e la tipologia.

La direttiva indica il livello di obbligatorietà dell’attributo. Pertanto un attributo può essere:

  • #REQUIRED, obbligatorio, ossia sempre specificato.
    <!ATTLIST nome tipo #REQUIRED >
  • #IMPLIED, opzionale, ossia può essere omesso.
    <!ATTLIST nome tipo #IMPLIED >
  • “value”, opzionale con un valore di default, value nel nostro esempio.
    <!ATTLIST nome tipo "value" >
  • #IMPLIED, obbligatorio che assume sempre uno stesso valore che nel nostro esempio ipotizziamo sia value.
    <!ATTLIST nome tipo #FIXED "value" >

Invece dalla tabella sottostante sarà facile comprendere quelli che sono i tipi di attributi nella Document Type Definition.

Tipi di attributi nella Document Type Definition

Tipi di attributi nella Document Type Definition

Esempio pratico supponendo di volere un TAG XML così composto.

 <brano titolo="" genere="Pop" track="20" album="1" ID="12345" copyright="si"> ... </brano>

Dove: titolo può essere specificato oppure no, genere deve essere specificato è può assumere solo i valori Rock e Pop, ID identifica univocamente quel brano, album è un riferimento ad un ID univoco in un altro XML e copyright invece dice che tutti i brani del nostro archivio sono protetti dal copyright.
Pertanto avremo la ATTLIST per il tag brano strutturata in questo modo.

 <!ATTLIST 
          titolo #IMPLIED
          genere (Rock|Pop) #REQUIRED
          ID ID #IMPLIED
          album IDREF #IMPLIED
          copyright #FIXED "si"
 >
Tipi di attributi nella Document Type Definition ultima modidfica: 2018-02-18T16:27:13+01:00 da Gianluca Di Vincenzo
Posted in: SOA

By on 18 Febbraio 2018

Tagged: , , , ,