Studiando XML e XSD, mi sono imbattuto in una serie (direi una babele) di sigle diverse. In questo post cerco di fare un po’ d’ordine:
In modo molto semplificato (considerando che partiamo già da XML, che è un Markup Language derivato dall’antesignano SGML) possiamo dire che ci sono molti linguaggi, principalmente divisi nei seguenti contesti:
- La descrizione della struttura dei dati
- La descrizione dei dati
- La descrizione del formato di rappresentazione dei dati
Per la struttura abbiamo l’ XML Schema Language (di cui esiste una infinità di diverse implementazioni), tra le quali XSD (di cui ho già parlato nel mio precedente post) è l’unica implementazione raccomandata dal W3C.
Per i dati abbiamo l’XML di cui, ad esempio, XHTML e XAML sono due implementazioni assai note, ciascuna nel suo campo di applicazione (Web e WPF).
Per la rappresentazione abbiamo gli Style Language, di cui abbiamo le seguenti implementazioni:
Tra queste, CSS è assai nota agli sviluppatori Web, mentre XSL è a sua volta una famiglia di linguaggi di trasformazione, così composta:
Tra questi ultimi, XSLT sta per eXtensible Stylesheet Language Transformations e ha come obiettivo principale la trasformazione di:
- un documento XML in un altro documento XML
- un documento XML in un altro formato (ad esempio HTML, XHTML, RTF, ma anche in qualsiasi altro formato di solo testo).
Un esempio concreto è la visualizzazione di un file XML in Internet Explorer 8 che usa proprio un file XSLT per trasformare l’XML in XHTML.
E così, acronimo dopo acronimo, siamo arrivati a casa!