L’XML (eXtensible Markup Language) è un linguaggio di marcatura standardizzato dal W3C, progettato per trasportare e memorizzare dati in un formato strutturato e gerarchico. A differenza dell’HTML, che ha tag predefiniti per la visualizzazione, l’XML permette di definire tag personalizzati per descrivere il significato dei dati.
Le caratteristiche ingegneristiche dell’XML sono:
- Auto-descrittività: la struttura dei dati è contenuta all’interno del file stesso.
- Gerarchia: i dati sono organizzati in una struttura ad albero con un unico elemento radice.
- Indipendenza dalla piattaforma: può essere letto ed elaborato da qualsiasi sistema operativo o linguaggio di programmazione.
- Validazione: la struttura di un file XML può essere verificata rispetto a schemi predefiniti (come DTD o XML Schema) per garantirne la correttezza.
Ingegneristicamente, l’XML è stato per decenni lo standard per lo scambio di dati tra sistemi eterogenei (Web Services SOAP), per i file di configurazione dei software e per formati di file complessi (come i documenti Office.docx o i file CAD.svg). Sebbene oggi sia spesso affiancato dal JSON per la sua maggiore leggerezza, l’XML rimane fondamentale per la sua robustezza e capacità di modellazione complessa.