  |
XML: formato |
  |
simile ad HTML con tag arbitrari |
Ma com'è fatto un file in XML? L'XML assomiglia come
sintassi all'HTML: abbiamo i tag, gli attributi e le
entità. La principale differenza è che i tag dell'XML sono
arbitrari: ovvero non c'è un insieme predefinito di tag che possono
essere utilizzati, come avviene nell'HTML. Questo perchè l'XML
intende essere solamente un formato generico, e il significato di
ciascun documento deve venire determinato caso per caso, ma non è
compito di XML determinarlo.
  |
XSL: significato |
  |
XSLT: linguaggio di trasformazione |
  |
CSS: linguaggio di stile |
  |
Per visualizzazione nei browser |
  |
FO: linguaggio di formattazione |
  |
Per la stampa |
Il compito di dare un significato ad un documento XML,
è in generale abbastanza complesso. Abbiamo visto infatti che si
può usare XML per descrivere appunto immagini vettoriali, spartiti
musicali o formule matematiche e chimiche, e in effetti viene usato
anche per questo scopo.
Nel caso in cui un documento XML rappresenti un documenti
di testo, la visualizzazione è demandata all'XSL, l'XML Style
Language. Per la precisione l'XML può essere visualizzato in due
modi principali: il primo è l'uso di fogli di stile simili a quelli
usati nell'HTML4 (i CSS), il secondo è quello di effettuare delle
trasformazioni in formati di visualizzazione, come HTML o PDF.
Consideriamo innanzitutto il primo caso: se i tag di XML
sono arbitrari, il browser che legge un documento XML non ha modo di
sapere come debbano essere visualizzati. I CSS definiscono invece per
ogni tag cosa deve venire visualizzato: colore, margine, allineamento
e numerosi altri dettagli.
Se i fogli di stile possono essere sufficienti per la
visualizzazione in un browser, non lo sono quando un documento deve
venire stampato. Per esempio un documento stampato può avere
intestazioni e piè di pagina, indici, sommari eccetera. Per questo
motivo lo standard XSL prevede anche un altro approccio: la
trasformazione di un documento XML in un altro che specifichi
informazioni di stampa precise. Sono stati pertanto definiti l'XSLT
(XSL Transformation) che è un linguaggio che spiega come effettuare
trasformazioni di XML, e l'FO (Formatting Object) che definiscono come
un documento XML trasformato deve venire stampato. Curiosamente sia
XSLT che FO sono due formati anche essi basati su XML. Il loro scopo
però non è quello di venire stampati, ma di descrivere come
trasformare e stampare altri documenti XML che sono destinati ad
essere stampatti. Infatti in generale i file XML che sono destinati ad
essere visualizzati in un browser o stampati come documento sono solo
una piccola parte del totale.
|