Linguaggio di Markup: XML e XML Schema

Linguaggio di Markup: XML e XML Schema

XML (eXtension Markup Language) è un linguaggio di markup destinato alla descrizione di documenti, strutturati in maniera arbitraria. A differenza di HTML, che è utilizzato per descrivere la modalità con cui documenti ipertestuali con strutture fisse sono visualizzati, XML separa il contenuto del documento dalla sua modalità di visualizzazione. E’ dunque uno standard elaborato per garantire l’interoperabilità sintattica, ossia per fare in modo che le informazioni non siano semplicemente formattate per facilitarne il reperimento per un utente umano, ma anche facilmente elaborate da agenti software.

Linguaggio di Markup - XML e XML Schema

XML definisce una struttura ad albero per i documenti dove ciascun nodo individua un tag ben definito (elemento) mediante il quale è possibile in qualche modo interpretare le informazioni che esso racchiude (attributi).
E’ possibile imporre delle restrizioni con cui i tag XML possono essere usati e quali annidamenti di tali tag sono permessi mediante l’uso di due tecnologie:

  • DTD (Document Type Definition): Contengono le regole che definiscono i tag usati nel documento XML, in altre parole ne definiscono la struttura. Questi possono essere dei file esterni o specificati direttamente all’interno del documento.
  • XML Schema: Spesso i documenti condividono una struttura specifica per un certo dominio, per consentire sia al software sia agli umani di riconoscere il contenuto dell’XML si richiede che tali strutture siano documentate in un formato comprensibile ad entrambi. A tal scopo è stato introdotto XML Schema, il quale permette di definire un vocabolario utilizzabile per descrivere documenti XML facendo uso della loro stessa sintassi. Le sue specifiche assumono che si faccia uso di almeno due documenti, un’istanza ed uno schema. La prima contiene le informazioni che interessano realmente, mentre il secondo descrive struttura e tipo della precedente.

XML, tuttavia, non gestisce la semantica dei contenuti: essa non è specificata in modo esplicito, ma è “incorporata” nei nomi dei tag, ossia il vocabolario degli elementi e le loro combinazioni non sono prefissati ma possono essere definiti ad hoc per ogni applicazione. Tale semantica, quindi, non è definita formalmente e può risultare eventualmente comprensibile solo all’uomo e non alla macchina: un’entità software riconosce i contenuti, ma non è in grado di attribuire loro un significato.
XML, quindi, fornisce l’interoperabilità sintattica ma non riesce a garantire quella semantica né a fornire meccanismi di classificazione o ragionamento; pertanto, deve necessariamente essere affiancato ad altri linguaggi più potenti.

Esempio di file XML
Esempio di file XML

Pubblicato da Vito Lavecchia

Lavecchia Vito Ingegnere Informatico (Politecnico di Bari) Email: [email protected] Sito Web: https://vitolavecchia.altervista.org

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *