Skip to content
Doug Rand edited this page May 2, 2013 · 2 revisions

Description

KML stands for Keyhole Markup Language reflecting that Keyhole was the original project name for the Google Earth project. According to the OGC KML standard, "KML is the standard language for expressing geographic annotation and visualization on existing or future web-based online and mobile maps (2d) and earth browsers (3d)". KML is an XML grammar and file format for modeling and storing geographic features such as points, lines, images, and polygons. Not only is KML to be viewed in Google Earth but it has been imported to dozens of GIS applications. It is the basis for custom data integration. In other words, KML is quickly becoming the "HTML" for geospatial data.

Specifications (What does it need to work? How much does it cost?)

KML is an international open standard of the Open Geospatial Consortium (OGC), which also maintains the GML and SensorML standards in addition to other geo-related standards. Although Google Earth is the primary client application to view/create KML it is only one of many applications that support KML. Google Earth clients are available in a free-version and $400 Pro and enterprise versions.

Structure

The KML file specifies a set of features (placemarks, images, polygons, 3D models, textual descriptions, etc.) for display in Google Earth, Maps and Mobile, or any other 3D earth browser (geobrowser) implementing the KML encoding. Each place always has a longitude and a latitude. Other data can make the view more specific, such as tilt, heading, altitude, which together define a "camera view". KML shares some of the same structural grammar as Geography Markup Language (GML). Some KML information cannot be viewed in Google Maps or Mobile.

KML files are very often distributed in KMZ files, which are ZIP file formated files with a .kmz extension. The contents of a KMZ file are a single root KML document (notionally "doc.kml") and optionally any overlays, images, icons, and models referenced in the KML including network-linked KML files. The root KML document is typically a file named "doc.kml" at the root level but the first .kml file in the KMZ file is the one selected in Google Earth regardless of its name. By convention the root KML document is at root level and referenced files are in subdirectories (e.g. images for overlay images), but this is not required.

Clone this wiki locally