\appendix
\chapter{Il formato XML}
\section{Generalità}
L'XML, acronimo di eXtensible Markup Language, ovvero «Linguaggio di
marcatura estensibile» è un metalinguaggio creato e gestito dal
World Wide Web Consortium (W3C). È una semplificazione e adattamento
dell'SGML, da cui è nato nel 1998, e permette di definire la
grammatica di diversi linguaggi specifici derivati.Rispetto
all'HTML, l'XML ha uno scopo ben diverso: mentre il primo è un
insieme di tag, (non è un linguaggio di programmazione), creati
principalmente per la descrizione e la formattazione di pagine web
e, più in generale, di ipertesti, il secondo è un metalinguaggio
utilizzato per creare nuovi linguaggi, atti a descrivere documenti
strutturati. Mentre l'HTML ha un insieme ben definito e ristretto di
tag, con l'XML è invece possibile definirne di propri a seconda
delle esigenze. L'XML è oggi molto utilizzato anche come mezzo per
l'esportazione di dati tra diversi DBMS. L'XML, come l'HTML,
utilizza dei marcatori, chiamati tag, per assegnare una semantica al
testo. L'XML è molto rigido sulla sintassi da seguire rispetto
all'HTML ed è pertanto necessario rispettare alcune regole:
\begin{itemize}
  \item i tag non possono iniziare con numeri o caratteri speciali e non
possono contenere spazi;
  \item i tag devono essere bilanciati, ovvero non
sono consentiti errori di annidamento;
\end{itemize}

\section{Strumenti aggiuntivi di XML} Esistono diversi strumenti
legati all'XML, ognuno con uno scopo differente:
\begin{itemize}
  \item \textcolor[rgb]{0.00,0.00,1.00}{DTD} (acronimo di \emph{Document Type Definition}): è un documento attraverso
    cui si specificano le caratteristiche strutturali di un documento XML attraverso
    una serie di "regole grammaticali". In particolare definisce l'insieme degli elementi
    del documento XML, le relazioni gerarchiche tra gli elementi, l'ordine di apparizione nel documento
    XML e quali elementi e quali attributi sono opzionali o meno.
  \item \textcolor[rgb]{0.00,0.00,1.00}{XML Schema}: come la DTD, serve a definire la struttura di un documento XML.
    Oggi il W3C consiglia di adottarlo al posto della DTD stessa,
    essendo una tecnica più nuova ed avanzata. La sua sigla è XSD,
    acronimo di XML Schema Definition.
  \item \textcolor[rgb]{0.00,0.00,1.00}{XLink}: serve a collegare in modo completo due documenti XML; al contrario dei classici collegamenti
    ipertestuali che conosciamo in HTML, XLink permette di creare link multidirezionali e semanticamente avanzati.
  \item \textcolor[rgb]{0.00,0.00,1.00}{XSL} (acronimo di \emph{eXtensible Stylesheet Language}): è il linguaggio con cui si descrive il foglio di stile di un
    documento XML. La sua versione estesa è l'XSLT (dove la T sta per Transformations).
  \item \textcolor[rgb]{0.00,0.00,1.00}{XPath}: è un linguaggio con cui è possibile individuare porzioni di un documento XML e sta alla base di altri
    strumenti per l'XML come XQuery.
\end{itemize}
