Un database eXtensible Markup Language (XML) è un sistema software che consente l’archiviazione dei dati in formato XML. XML è un linguaggio di meta-markup utilizzato per gestire i dati che utilizza tag personalizzabili dall’utente per organizzare le informazioni. La flessibilità del linguaggio, che consente la creazione di strutture dati e sistemi organizzativi personalizzati, ha portato al suo uso diffuso per lo scambio di dati in molteplici forme. I database XML sono spesso utilizzati in applicazioni quali portali informativi, scambi di documenti e cataloghi di prodotti.
È generalmente considerato più efficiente in termini di costi di conversione dei dati utilizzare un database XML a causa dell’uso diffuso di questo linguaggio nel trasporto dei dati. Esistono due categorie principali di questi database: database abilitati per XML e database XML nativi (NXD). Ogni tipo di database XML viene utilizzato per memorizzare diversi tipi di dati.
Un database abilitato per XML incanala i dati in un database relazionale tradizionale in un formato XML. I dati vengono tradotti per l’archiviazione e restituiti al formato iniziale al momento dell’output. Questo tipo di database viene utilizzato per archiviare documenti incentrati sui dati che includono informazioni altamente strutturate, come i record dei pazienti, e utilizzano solo XML per il trasferimento dei dati.
I database XML nativi archiviano i documenti XML nel loro insieme, invece di separare i dati al loro interno, e sono progettati per memorizzare informazioni semi-strutturate, come brochure di marketing o dati sanitari. I documenti XML che contengono dati semi-strutturati vengono definiti document-centric. Un database XML nativo non è conforme a un determinato modello di archiviazione fisica, essendo in grado di utilizzare strutture relazionali, gerarchiche o orientate agli oggetti, nonché formati di archiviazione personalizzati. Gestisce i documenti raggruppandoli in raccolte logiche e può impostare e gestire più raccolte contemporaneamente. Questo tipo di database consente all’utente di archiviare qualsiasi tipo di documento XML, indipendentemente dalla struttura, all’interno della stessa raccolta. Le query possono essere costruite nell’intera raccolta, rendendo generalmente più flessibile l’organizzazione e la manipolazione dei dati.
Un database XML utilizza uno speciale linguaggio di programmazione progettato specificamente per estrarre e manipolare documenti XML, noto come XQuery. Lo scopo di XQuery è consentire la costruzione di query flessibili in grado di estrarre e manipolare informazioni da documenti XML, nonché da altre fonti che possono essere tradotte in XML. Alcune applicazioni in cui è possibile utilizzare XQuery includono la ricerca di documenti di testo sul Web per i dati rilevanti e la compilazione dei risultati, l’estrazione di dati da database da utilizzare nell’integrazione delle applicazioni e la generazione di report sui dati contenuti in un database XML.
I database XML sono spesso utilizzati da organizzazioni che devono gestire contenuti complessi e vari, consentendo loro di elaborare e riutilizzare i dati in modo efficiente per vari obiettivi aziendali. La flessibilità dei documenti e dei database XML consente alle organizzazioni di archiviare e manipolare i dati su piattaforme e ambienti software diversi. I documenti possono essere creati e gestiti in modo che le stesse informazioni possano essere utilizzate in diversi progetti, come manuali o cataloghi di prodotti, oltre a fornire più formati di output per soddisfare le diverse esigenze dell’utente finale.