Chemical Markup Language, CML – format zapisu różnorodnych informacji o związkach chemicznych i ich reakcjach, formalnie jeden z języków znaczników zdefiniowanych za pomocą składni XML. Inicjatorami tego formatu są Peter Murray-Rust i Henry Rzepa[1]. Obecnie rozwój tego języka jest prowadzony jako jeden z projektów Sourceforge.
Tradycyjnie informacje o związkach chemicznych i reakcjach są zapisywane w wielu różnych formatach, które nie są z sobą wzajemnie zgodne. CML jest zbiorem znaczników i zasad ich użycia umożliwiających jednolite i niezależne od oprogramowania zapisywanie tego rodzaju informacji. Dzięki temu, że jest to format zgodny z XML do jego obróbki można adaptować programy pierwotnie napisane do obsługi innych formatów z rodziny XML. Np: informacje o strukturze cząsteczek zapisanych w XML można łatwo wizualizować za pomocą zmodyfikowanych programów wyświetlających pliki SVG. Dokumenty CML można bez trudu łączyć z innymi dokumentami XML - np. XHTML, dzięki czemu można je bezpośrednio wpisywać do kodu stron WWW.
Język CML umożliwia jednolite zapisywanie następujących informacji: