XML
XML sta per eXtensible Markup Language. È un metalinguaggio estensibile di tag (un linguaggio che viene usato per dire qualcosa su un altro) che è stato sviluppato dal Word Wide Web Consortium (W3C), una società commerciale internazionale che sviluppa raccomandazioni per il World Wide Web.
XML è un adattamento di SGML (Standard Generalized Markup Language), un linguaggio che permette di organizzare e taggare i documenti. Questo significa che XML non è un linguaggio in sé, ma un sistema che permette di definire i linguaggi secondo le proprie esigenze. XHTML, MathML e SVG sono alcuni dei linguaggi che XML ha la capacità di definire.
Base di dati, documenti di testo, fogli di calcolo e pagine web sono alcuni dei campi di applicazione di XML. Il metalinguaggio appare come uno standard che struttura lo scambio di informazioni tra diverse piattaforme.
Gli esperti sottolineano diversi vantaggi dell'uso di XML, come: è estensibile (si possono aggiungere nuovi tag dopo che il documento è stato progettato); il suo parser è standard (non sono necessari cambiamenti per ogni versione del metalinguaggio); facilita il parsing e il trattamento di documenti XML creati da terzi.
Tra i linguaggi creati con XML, spiccano XSL (Extensible Stylesheet Language) e XLINK (che cerca di trascendere le limitazioni dei link ipertestuali in HTML).
La validità dei documenti (cioè, che la loro struttura sintattica sia sviluppata correttamente) dipende dalla relazione specificata tra i diversi elementi da una definizione o documento esterno.
Da un lato, XML presenta una serie di vantaggi molto attraenti per gli sviluppatori, soprattutto perché permette di mettere in relazione applicazioni di diversi linguaggi e piattaforme; tuttavia, questo può essere visto come un'arma a doppio taglio, poiché non incoraggia la ricerca della compatibilità. L'universalità perseguita da XML non potrà mai essere raggiunta se, invece di approfittarne per risolvere problemi, se ne generano di nuovi sapendo che avranno una soluzione.
Utilità di XML
Siccome, in larga misura, l'utilità di uno strumento dipende dalla creatività dell'utente, è impossibile riassumere tutte le applicazioni di XML. In poche parole, offre la capacità di strutturare e rappresentare i dati. Al giorno d'oggi, è comune per i programmi includere file di configurazione in questo formato; è il caso di Apache e delle applicazioni create con la tecnologia .NET (di Microsoft).
Quando si sviluppa un programma con un'interfaccia grafica è necessario organizzare tutte le immagini in modo che vengano caricate quando servono, e XML è un grande aiuto in questi casi: permette di raggrupparle, etichettarle, specificare la loro posizione e metterle in relazione con altri dati, secondo le necessità dei progettisti.
Ma oltre a facilitare l'organizzazione delle risorse e la configurazione di un programma, XML svolge un ruolo molto importante che è, senza dubbio, il suo punto forte: permette di comunicare con altre applicazioni, da diverse piattaforme e indipendentemente dall'origine delle informazioni in comune. Si può avere, per esempio, un programma che gira su Windows con un database SQL Server, e un altro su Linux con Oracle, entrambi condividendo i dati grazie a una struttura XML.
I servizi web, un concetto molto comune in quest'epoca, sono componenti web che forniscono la possibilità di eseguire una varietà di operazioni, attraverso metodi concreti che sfruttano il metalinguaggio XML per le loro comunicazioni, grazie al quale qualsiasi piattaforma può sfruttare i suoi vantaggi.
Infine, XML è uno di quegli strumenti che, nonostante la sua bassa complessità, nasconde un grande potenziale, grazie alla sua facilità d'uso e innegabilmente utile.