HOME

TheInfoList



OR:

Keyhole Markup Language (KML) is an
XML Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing arbitrary data. It defines a set of rules for encoding documents in a format that is both human-readable and machine-readable ...
notation for expressing geographic annotation and visualization within two-dimensional maps and three-dimensional
Earth Earth is the third planet from the Sun and the only astronomical object known to harbor life. While large volumes of water can be found throughout the Solar System, only Earth sustains liquid surface water. About 71% of Earth's surfa ...
browsers. KML was developed for use with Google Earth, which was originally named Keyhole Earth Viewer. It was created by
Keyhole, Inc Google Earth is a computer program that renders a 3D representation of Earth based primarily on satellite imagery. The program maps the Earth by superimposing satellite images, aerial photography, and GIS data onto a 3D globe, allowing users ...
, which was acquired by
Google Google LLC () is an American Multinational corporation, multinational technology company focusing on Search Engine, search engine technology, online advertising, cloud computing, software, computer software, quantum computing, e-commerce, ar ...
in 2004. KML became an international standard of the
Open Geospatial Consortium The Open Geospatial Consortium (OGC), an international voluntary consensus standards organization for geospatial content and location-based services, sensor web and Internet of Things, GIS data processing and data sharing. It originated in 199 ...
in 2008. Google Earth was the first program able to view and graphically edit KML files, but other projects such as
Marble Marble is a metamorphic rock composed of recrystallized carbonate minerals, most commonly calcite or dolomite. Marble is typically not foliated (layered), although there are exceptions. In geology, the term ''marble'' refers to metamorphose ...
have added KML support.


Structure

The KML file specifies a set of features (place marks, images, polygons, 3D models, textual descriptions, etc.) that can be displayed on maps in geospatial software implementing the KML encoding. Every place has a
longitude Longitude (, ) is a geographic coordinate that specifies the east– west position of a point on the surface of the Earth, or another celestial body. It is an angular measurement, usually expressed in degrees and denoted by the Greek lette ...
and a
latitude In geography, latitude is a coordinate that specifies the north– south position of a point on the surface of the Earth or another celestial body. Latitude is given as an angle that ranges from –90° at the south pole to 90° at the north pol ...
. Other data can make a view more specific, such as tilt, heading, or altitude, which together define a "camera view" along with a timestamp or timespan. KML shares some of the same structural grammar as
Geography Markup Language The Geography Markup Language (GML) is the XML grammar defined by the Open Geospatial Consortium (OGC) to express geographical features. GML serves as a modeling language for geographic systems as well as an open interchange format for geographi ...
(GML). Some KML information cannot be viewed in Google Maps or Mobile. KML files are very often distributed as KMZ files, which are zipped KML 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
COLLADA COLLADA (for ''COLLA''borative ''D''esign ''A''ctivity) is an interchange file format for interactive 3D applications. It is managed by the nonprofit technology consortium, the Khronos Group, and has been adopted by ISO as a publicly available ...
3D models referenced in the KML including network-linked KML files. The root KML document by convention is a file named "doc.kml" at the root directory level, which is the file loaded upon opening. By convention the root KML document is at root level and referenced files are in subdirectories (e.g. images for overlay). An example KML document is: New York City New York City -74.006393,40.714172,0 The MIME type associated with KML is ''application/vnd.google-earth.kml+xml''; the MIME type associated with KMZ is ''application/vnd.google-earth.kmz''.


Geodetic reference systems in KML

For its reference system, KML uses 3D geographic coordinates: longitude, latitude, and altitude, in that order, with negative values for west, south, and below mean sea level. The longitude/latitude components (decimal degrees) are as defined by the World Geodetic System of 1984 (WGS84). Altitude, the vertical component, is measured in meters from the WGS84 EGM96 Geoid vertical datum. If altitude is omitted from a coordinate string, e.g. (-77.03647, 38.89763) then the default value of 0 (approximately sea level) is assumed for the altitude component, i.e. (-77.03647, 38.89763, 0). A formal definition of the coordinate reference system (encoded as GML) used by KML is contained in the OGC KML 2.2 Specification. This definition references well-known EPSG CRS components.


OGC standard process

The KML 2.2 specification was submitted to the Open Geospatial Consortium to assure its status as an open standard for all geobrowsers. In November 2007 a new KML 2.2 Standards Working Group was established within OGC to formalize KML 2.2 as an OGC standard. Comments were sought on the proposed standard until January 4, 2008, and it became an official OGC standard on April 14, 2008. The OGC KML Standards Working Group finished working on change requests to KML 2.2 and incorporated accepted changes into the KML 2.3 standard. The official OGC KML 2.3 standard was published on August 4, 2015.


See also

*
CityGML CityGML is an open standardised data model and exchange format to store digital 3D models of cities and landscapes. It defines ways to describe most of the common 3D features and objects found in cities (such as buildings, roads, rivers, bridges, ...
*
Geospatial content management system A geospatial content management system (GeoCMS) is a content management system where objects (users, images, articles, blogs..) can have a latitude, longitude position to be displayed on an online interactive map. In addition the online maps link ...
* GPS eXchange Format * Point of interest *
Waypoint A waypoint is an intermediate point or place on a route or line of travel, a stopping point or point at which course is changed, the first use of the term tracing to 1880. In modern terms, it most often refers to coordinates which specify one's posi ...


References


External links


OGC KML 2.2 Standard

OGC Official KML 2.2 Schema

Google's KML Documentation
{{Authority control Articles with example code GIS file formats Google Open formats Open Geospatial Consortium XML-based standards XML markup languages