Keyhole Markup Language (KML) je aplikací metajazykaXML. Primárně je určeno pro publikaci, distribuci geografických dat (geodat). Ke dni 16. 4. 2008 se stal KML ve verzi 2.2 standardemOpen Geospatial Consortium (OGC).
KML byl vyvinut firmou Keyhole, Inc. jakoAPI pro její virtuální glóbusEarth Viewer. V roce 2004 firmu koupila společnost Google, Inc. a produkt přejmenovala naGoogle Earth.
Geoprvky standardu KML (bod, linie, plocha, aj.) využívají pro lokalizaci souřadnicový systémWGS84 ve tvaru celých stupňů. Výšky vztažných bodů prvků nejsou povinné (H = 0 m)[ujasnit] a pokud jsou uvedeny, tak je jejich vztažný systémEGM96.
Primární využití KML ze strany Google je pro její mapové aplikaceGoogle Earth (virtuální glóbus),Google Maps (webový mapový server) aGoogle Mobile (přístup ke geodatům-mapám v mobilních zařízení). Díky tomu, že se verze KML 2.2 stala standardem OGC, získává KML popularitu a tvůrci nejenGIS software se ho snaží začlenit do svých produktů. Na internetu již existují zajímavé aplikace využití KML pro prezentaci geografických informací (geodat). Nejvýznamnějším příkladem jevizualizace intenzity zemětřesení pomocí KML (geograficky a časově lokalizované).
Primárním formátem je soubor KML (aplikace XML), jenž máMIME typapplication/vnd.google-earth.kml+xml. Existuje i rozšiřující verze textového souboru KML, jímž je formát KMZ sMIMEapplication/vnd.google-earth.kmz. KMZ je ve skutečnostipřejmenovaná přípona archívuZIP. Obsahuje kořenový KML soubordoc.kml a vedle něho mohou být ještě dodatečné soubory (JPEG, aj.) pro textury. Nejznámější využití KMZ je pro prezentaci vizualizace 3D objektů vytvořených např. v softwareGoogle SketchUp, v prostředíGoogle Earth.
<?xml version='1.0' encoding='UTF-8'?><kmlxmlns='http://www.opengis.net/kml/2.2'><Placemark><name>Plzeň</name><description>Plzeňjehlavníměstopivanasvětě.</description><Point><coordinates>13.3775,49.7475,0</coordinates></Point></Placemark></kml>