XML (ang. Extensible Markup Language, w wolnym tłumaczeniu Rozszerzalny Język Znaczników) – to uniwersalny język przeznaczony do reprezentowania różnych danych w strukturalny sposób a nie do ich prezentowania. Chociaż wszystkie liczące się przeglądarki internetowe mają w standardzie zaimplementowaną metodę prezentacji danych w formie „drzewiastej”, to sposób ten nie jest przejrzysty. XML często postrzegany jest, jako następca HTML. Nie jest to jednak prawdą, bo HTML służy do formatowania i wyświetlania danych, a XML jest tylko „pojemnikiem” do ich przechowywania.
XML nazywany jest językiem, co uznawane jest za mylące, gdyż nie jest to taki język, jak na przykład JAVA. XML to raczej meta-jezyk, czyli język opisujący dane.
Jeśli istnieje potrzeba zachowania niezależności od platformy, aplikacji, metod w przechowywaniu danych wraz z ich strukturą – XML jest do tego właściwym narzędziem. Ważne jest również bezpieczeństwo w chmurze.
Dane mogą być przechowane w różnych strukturach – tabelarycznych, drzewiastych. Można powiedzieć, że XML jest niezależnym od platformy formatem przechowywania, wymiany oraz reprezentacji danych.
Głównymi zaletami przechowywania danych w postaci XML są:
Niezależność od platformy – była główną intencja stworzenia XML. Zostaje ona osiągnięta dzięki konsekwencji oraz niewielkim restrykcjom, jakie zostały przyjęte w stosowaniu XML.
Łatwość lokalizacji elementu w strukturze dokumentu – dzięki mechanizmom walidacji mamy możliwość utrzymania „porządku” nawet w złożonych strukturach bazodanowych. Jak również pozwala na szybkie przeszukiwanie oraz modyfikację elementów zawartych w strukturze.