Die Extensible Markup Language (engl. «erweiterbare Auszeichnungssprache»), abgekürzt XML, ist eine Auszeichnungssprache zur Darstellung hierarchisch strukturierter Daten in Form von Textdateien. XML wird u.a. für den plattform- und implementationsunabhängigen Austausch von Daten zwischen Computersystemen eingesetzt, insbesondere über das Internet.
Die vom World Wide Web Consortium (W3C) herausgegebene XML-Spezifikation (Recommendation, erste Ausgabe vom 10. Februar 1998, aktuell ist die fünfte Ausgabe vom 26. November 2008) definiert eine Metasprache, auf deren Basis durch strukturelle und inhaltliche Einschränkungen anwendungsspezifische Sprachen definiert werden. Diese Einschränkungen werden durch Schemasprachen wie DTD oder XML Schema ausgedrückt. Beispiele für XML-Sprachen sind: RSS, MathML, GraphML, XHTML, XAML, Scalable Vector Graphics (SVG), GPX, aber auch XML-Schema.
Ein XML-Dokument besteht aus Textzeichen, im einfachsten Fall in ASCII-Kodierung. XML kann daher in Texteditoren angezeigt werden und ist häufig menschenlesbar. Wenn das XML-Dokument Binärdaten enthalten soll, z.B. Hashes, müssen diese Daten als Text kodiert werden. Sonst besteht die Gefahr, dass die XML-Datei nicht geparst werden kann, weil sie nicht XML-konform ist. Hilfreich hierbei sind zum Beispiel die Hexadezimal-Kodierung oder Base64-Kodierung.