Baza podataka eXtensible Markup Language (XML) softverski je sustav koji dopušta pohranu podataka u XML formatu. XML je jezik meta-oznake koji se koristi za upravljanje podacima koji koristi korisničke prilagodljive oznake za organiziranje informacija. Fleksibilnost jezika, koji omogućuje stvaranje prilagođenih struktura podataka i organizacijskih sustava, dovela je do njegove široke upotrebe za razmjenu podataka u više oblika. XML baze podataka često se koriste u aplikacijama kao što su informacijski portali, razmjena dokumenata i katalozi proizvoda.
Općenito se smatra učinkovitijim u smislu troškova konverzije podataka korištenje XML baze podataka zbog raširene upotrebe ovog jezika u prijenosu podataka. Dvije su glavne kategorije ovih baza podataka: baze podataka s omogućenim XML-om i izvorne XML baze podataka (NXD). Svaka vrsta XML baze podataka koristi se za pohranu različitih vrsta podataka.
Baza podataka s omogućenom XML-om prenosi podatke u tradicionalnu relacijsku bazu podataka u XML formatu. Podaci se prevode za pohranu i nakon izlaza vraćaju u početni format. Ova vrsta baze podataka koristi se za pohranjivanje dokumenata usmjerenih na podatke koji uključuju visoko strukturirane informacije, kao što su kartoni pacijenata, i koriste samo XML za prijenos podataka.
Izvorne XML baze podataka pohranjuju XML dokumente kao cjelinu, umjesto da odvajaju podatke unutar njih, a dizajnirane su za pohranu polustrukturiranih informacija, kao što su marketinške brošure ili zdravstveni podaci. XML dokumenti koji sadrže polustrukturirane podatke nazivaju se dokumentocentričnima. Izvorna XML baza podataka nije usklađena s određenim fizičkim modelom pohrane, budući da može koristiti relacijske, hijerarhijske ili objektno orijentirane strukture kao i prilagođene formate za pohranu. Upravlja dokumentima grupirajući ih u logičke zbirke, a može postaviti i upravljati s više zbirki istovremeno. Ova vrsta baze podataka dopušta korisniku pohranjivanje bilo koje vrste XML dokumenta, bez obzira na strukturu, unutar iste zbirke. Upiti se mogu konstruirati u cijeloj zbirci, općenito čineći organizaciju podataka i manipulaciju fleksibilnijim.
XML baza podataka koristi poseban programski jezik dizajniran posebno za izdvajanje i manipuliranje XML dokumentima, poznat kao XQuery. Svrha XQueryja je omogućiti izgradnju fleksibilnih upita koji mogu izdvojiti i manipulirati informacijama iz XML dokumenata, kao i drugih izvora koji se mogu prevesti u XML. Neke aplikacije u kojima se XQuery može koristiti uključuju pretraživanje tekstualnih dokumenata na webu za relevantne podatke i sastavljanje rezultata, izdvajanje podataka iz baza podataka koji će se koristiti u integraciji aplikacija i generiranje izvješća o podacima sadržanim u XML bazi podataka.
XML baze podataka često koriste organizacije koje moraju upravljati složenim i raznolikim sadržajem, dopuštajući im učinkovitu obradu i ponovnu upotrebu podataka za različite poslovne ciljeve. Fleksibilnost XML dokumenata i baza podataka omogućuje organizacijama da pohranjuju i manipuliraju podacima na različitim softverskim platformama i okruženjima. Dokumenti se mogu kreirati i njima upravljati tako da se iste informacije mogu koristiti u različitim projektima, kao što su priručnici ili katalozi proizvoda, kao i pružanje više izlaznih formata koji odgovaraju različitim zahtjevima krajnjih korisnika.