XML ist eine der wichtigsten Entwicklungen der letzten Jahre zur Beschreibung von Dokumenten und ihrer Syntax. Es stellt zudem einen weit verbreiteten Standard dar zum Austausch von Daten dar. Anders als HTML, das aber nur zur Präsentation uninterpretierten Inhalts dient, beschreibt man mit XML den Inhalt bezüglich Struktur und Typ. Namensräume ermöglichen dabei die Unterscheidung von gleichnamigen Elementen und Attributen in verschiedenen Anwendungsbereichen.
Um aus einem "wohlgeformten" Dokument ein "gültiges" zu machen, wird meist eine Typ-Definition benötigt, die in einer DTD oder in einem XML Schema beschrieben wird. Mittels XSLT können Transformationen auf Dokumente angewendet werden, z.B. um sie mit HTML in einem Browser auszugeben oder für eine andere XML-Applikation als Input zu filtern und umzustrukturieren.
Ein Anwendungsprogramm muß ein XML-Dokument bearbeiten um an die enthaltenen Nutzdaten zu gelangen und diese applikationsspezifisch zu verarbeiten. Hierzu dienen sogenannte Parser. Zwei populäre APIs hierzu sind SAX, eine Event-basierte Schnittstelle, sowie DOM zum Verarbeiten eines zuerst vollständig eingelesenen Dokuments. Darüber hinaus existieren sprachspezifische Data-Bindings, die aus XML-Schema z.B. Java Klassen generieren, sowie Code zum Marshalling/Unmarshalling von XML Dokumenten in entsprechende Objekt-Instanzen.
Durch einen hohen Anteil an Übungen am Rechner gewinnen die Teilnehmer praktische Erfahrungen, die es ihnen ermöglichen, das Gelernte anschließend selbständig einzusetzen. Soweit Programmiersprachen verwendet werden, kommt Java zum Einsatz.