  |
Dichiarazione di struttura documento XML: |
I documenti XML devono avere un formato. Questo perchè
l'XML in sè è un meta-formato, che permette di specificare
documenti dal significato molto diverso. Per esempio, sia un
foglio elettronico che un articolo possono essere descritti in
XML. Le informazioni contenute in un articolo sono però
molto diverse da quelle contenute in un foglio
elettronico. Per questo motivo le informazioni di formato
vengono specificate usando tag diversi.
L'insieme dei tag usati in un documento definiscono il suo
tipo. Un programma di foglio elettronico può usare l'XML
come formato per i suoi file ma può fare lo stesso anche un
programma di elaborazione di testi. Per esempio i programmi
per Linux Gnumeric e AbiWord salvano entrambi i propri file in
XML, ma ovviamente Gnumeric non legge i file di AbiWord e
viceversa. Infatti i file sono di tipo diverso. Per
formalizzare le differenza tra un file Gnumeric e uno AbiWord
si usa appunto un Document Type Definition, o
DTD.
  |
DTD: sequenza di dichiarazioni |
I DTD sono file, composti da una serie di dicharazioni. Le
dichiarazioni sono simili ai tag, ma cominciano con
<! e la loro sintassi si discosta da quella
dell'XML, visto la volta precedente. Vedremo questa sintassi
caso per caso.
  |
Le entità e il testo di sostituzione |
I DTD che vengono utilizzati da vari strumenti di analisi
di file XML per controllare che la loro struttura corrisponda
a quella che ci si aspetta. Essi definiscono innanzitutto le
entità, ovvero quelle sequenze speciali che
abbreviano elementi di testo più lunghi e complessi. Le
entità esistono anche in HTML, e sono quelle sequenze che
vengono utilizzate per inserire in maniera intelligibile
simboli speciali come quello di copyright (©),
le lettere accentate (à, è,...),
eccetera.
  |
I tag (element) e il loro annidamento |
La cosa più importante sono però tag. Con un DTD è
possibile definire quali tag possono essere contenuti in un documento,
e come i tag si compongono tra di loro: quali tag possono essere
contenuti dentro un altro tag e in che ordine. I tag possono avere
degli attributi, e infatti il DTD permette di definire quali attributi
sono legali per ogni tag.
  |
Gli attributi dei tag |
Ogni tag ha anche degli attributi, che sono opzioni
contenute all'interno del tag. Per esempio, in HTML i tag di
paragrafi o celle di tabelle hanno degli attributi che
specificano se il paragrafo deve essere centrato, allineato a
destra o sinistra, eccetera.
  |
Il futuro: XSchema |
La definizione dei DTD è tutto sommato piuttosto
semplice, ed è anche considerata da molti limitata. È attualmente
in corso di discussione una specifica, chiamata XSchema, che
dovrebbe sostituire i DTD, ampliando le possibilità di definizione e
i vincoli che possono essere imposti ai documenti XML. Inoltre
dovrebbe avere una sintassi più leggibile e conforme ad XML
stesso.
|