  |
Elementi base |
  |
Marcatori: Tag con Attributi |
I documenti XML sono essenzialmente testo
arricchito, nel senso che mescolano al testo tradizionale degli
elementi, detti tag (in italiano, marcatori, ma useremo
nel seguito il termine inglese che è di uso comune). I tag indicano
i componenti non testuali ma di formato: per esempio quale testo è
in grassetto, quale in corsivo e così via. Per distinguere il testo
dai tag, i tag cominciano sempre per < e finiscono per
>. Per ogni marcatore si possono specificare informazioni
supplementari utilizzando degli attributi. Come esempio
consideriamo il seguente esempio preso dall'HTML che definisce un
testo di colore rosso tramite un tag e un attributo.
<font color="red">Prova<font>
  |
Testo: PCDATA CDATA |
  |
Entità: á, abbreviazioni |
  |
Quoting: <[[CDATA ... ]]> |
All'interno di un tag è contenuto il testo vero e
proprio. Il testo all'interno di un tag può essere di due tipi:
CDATA e PCDATA. Nel primo caso, più raro, (Character
Data), il testo non ha ulteriore struttura: per cui eventuali tag
contenuti dentro vengono ignorati. Nel secondo caso (Parsed Character
Data), abbiamo invece a che fare con testo che può contenere altri
tag.
Abbiamo un problema: siccome il simbolo di minore viene
utilizzato per indicare l'inizio di un tag, questo non può comparire
normalmente all'interno di un documento XML. Questo vale anche per
altri caratteri che hanno un uso speciale. Per inserire questi
caratteri così come sono, esiste una sintassi che li sostituisce con
sequenze più lunghe, che iniziano con la & e finiscono
con il ;. Ovviamente esiste anche una sequenza per inserire lo
stesso &. Nella Tabella 1 sono riassunte queste
sequenze.
| Carattere |
Entità |
| & |
& |
| < |
< |
| > |
> |
| " |
" |
| ' |
' |
Infine citiamo il fatto che è possibile trasformare un
testo PCDATA in CDATA. Questo avviene quando si vuole
inserire del testo che può contenere dei caratteri come
< senza doversi preoccupare di trasformarli uno
per uno in <. In questo caso si può
ricorrere alla sequenza che inizia per <[CDATA[
e finisce per ]]>. Questa sequenza si dice di
escape nel senso che consente di "sfuggire" la
intrpretazione usale dei caratteri speciali (che
identificano i tag in un testo PCDATA), considerando il
tutto come un blocco di CDATA.
|