Se ricordate, qualche settimana or sono, ci siamo imbattuti nel seguente esempio:
Steven Holzner
XML Tutto&Oltre
Apogeo
98.000
50,61 /
all’interno del quale, per referenziare il carattere speciale “& “, è stata utilizzata la sequenza di caratteri “&”.
L’obiettivo era chiaro, poter utilizzare all’interno del documento XML alcuni caratteri particolari che in caso contrario non potrebbero essere visualizzati perché si confonderebbero con i simboli speciali del linguaggio.
Questo, in senso generale, è il concetto di entità.
Un’entità XML è un nome astratto, che deve obbligatoriamente iniziare con il carattere “&” oppure “%” e terminare con il carattere “;”.
L’obiettivo di un’entità è poter essere utilizzata, all’interno del documento XML, in sostituzione di un altro oggetto, sia esso un carattere speciale, una stringa di testo personalizzata dall’utente, un oggetto di carattere binario.Esistono due famiglie di entità XML: le entità generali e le entità parametriche.
Entità generali
Queste entità sono predefinite e permettono, come abbiamo visto, l’utilizzo di caratteri speciali all’interno del documento XML.
La sintassi di un’entità generale è la seguente: &nome_entity;Esempi di entità generali sono le classiche:
- && e-commerciale
- &pos; apice
- < maggiore
- < minore
Entità parametriche
Le entità parametriche costituiscono uno strumento per indicare con una certa sintassi un oggetto che debba essere referenziato all’interno di un documento XML.
La sintassi per utilizzare un’entità parametrica all’interno di un documento XML è la seguente: %nome_entity;
Prima di poter utilizzare un’entità parametrica è necessario naturalmente dichiararla all’interno di un DTD.
Per effettuare una dichiarazione di questo tipo si utilizza la sintassi seguente:
/
A questo punto, se abbiamo un documento XML associato al DTD precedente, sarà possibile referenziare direttamente l’oggetti MYEMAIL, vediamo come:
Mario
Rossi
Viale Monza 256 – Milano
20100
02-1234567
333-1234567
%MYEMAIL;
Elemento1>/
Il risultato dell’elaborazione di questo documento XML all’interno di un browser in grado di visualizzarlo sarà il seguente:
Mario
Rossi
Viale Monza 256 – Milano
20100
02-1234567
333-1234567
[email protected]
Elemento1>/
Attraverso le entità, quindi, è possibile utilizzare all’interno di documenti XML dei caratteri speciali che non potrebbero in caso contrario essere visualizzati, oppure degli oggetti di vario tipo magari di dimensioni troppo elevate per essere ripetuti molte volte nel documento stesso.
L’unione di elementi, entità ed attributi costituisce la base per poter scrivere grammatiche anche complesse da applicare per la validazione a documenti XML.