Keyhole Markup Language

Last updated
Keyhole Markup Language
Keyhole Markup Language.png
Filename extensions .kml, .kmz
Internet media type
  • application/vnd.google-earth.kml+xml
  • application/vnd.google-earth.kmz
Developed by Keyhole, Inc., Google
Type of format GIS file format
Extended from XML

Keyhole Markup Language (KML) is an XML notation for expressing geographic annotation and visualization within two-dimensional maps and three-dimensional Earth browsers. KML was developed for use with Google Earth, which was originally named Keyhole Earth Viewer. It was created by Keyhole, Inc, which was acquired by Google in 2004. KML became an international standard of the Open Geospatial Consortium in 2008. [1] [2] Google Earth was the first program able to view and graphically edit KML files, but other projects such as Marble have added KML support. [3]

Contents

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 and a latitude. 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 (GML). Some KML information cannot be viewed in Google Maps or Mobile. [4]

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 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). [5]

An example KML document is:

<?xml version="1.0" encoding="UTF-8"?><kmlxmlns="http://www.opengis.net/kml/2.2"><Document><Placemark><name>NewYorkCity</name><description>NewYorkCity</description><Point><coordinates>-74.006393,40.714172,0</coordinates></Point></Placemark></Document></kml>

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. [6]

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, [7] and it became an official OGC standard on April 14, 2008. [8]

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. [9] The official OGC KML 2.3 standard was published on August 4, 2015. [10]

See also

Related Research Articles

<span class="mw-page-title-main">Geography Markup Language</span> XML grammar for geographical features

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 geographic transactions on the Internet. Key to GML's utility is its ability to integrate all forms of geographic information, including not only conventional "vector" or discrete objects, but coverages and sensor data.

In computing, the Open Geospatial Consortium Web Feature Service (WFS) Interface Standard provides an interface allowing requests for geographical features across the web using platform-independent calls. One can think of geographical features as the "source code" behind a map, whereas the WMS interface or online tiled mapping portals like Google Maps return only an image, which end-users cannot edit or spatially analyze. The XML-based GML furnishes the default payload-encoding for transporting geographic features, but other formats like shapefiles can also serve for transport. In early 2006 the OGC members approved the OpenGIS GML Simple Features Profile. This profile is designed both to increase interoperability between WFS servers and to improve the ease of implementation of the WFS standard.

A GIS file format is a standard for encoding geographical information into a computer file, as a specialized type of file format for use in geographic information systems (GIS) and other geospatial applications. Since the 1970s, dozens of formats have been created based on various data models for various purposes. They have been created by government mapping agencies, GIS software vendors, standards bodies such as the Open Geospatial Consortium, informal user communities, and even individual developers.

<span class="mw-page-title-main">NASA WorldWind</span> Open-source virtual globe

NASA WorldWind is an open-source virtual globe. According to the website, "WorldWind is an open source virtual globe API. WorldWind allows developers to quickly and easily create interactive visualizations of 3D globe, map and geographical information. Organizations around the world use WorldWind to monitor weather patterns, visualize cities and terrain, track vehicle movement, analyze geospatial data and educate humanity about the Earth." It was first developed by NASA in 2003 for use on personal computers and then further developed in concert with the open source community since 2004. As of 2017, a web-based version of WorldWind is available online. An Android version is also available.

Various binary formats have been proposed as compact representations for XML. Using a binary XML format generally reduces the verbosity of XML documents thereby also reducing the cost of parsing, but hinders the use of ordinary text editors and third-party tools to view and edit the document. There are several competing formats, but none has yet emerged as a de facto standard, although the World Wide Web Consortium adopted EXI as a Recommendation on 10 March 2011.

<span class="mw-page-title-main">Point of interest</span>

A point of interest (POI) is a specific point location that someone may find useful or interesting. An example is a point on the Earth representing the location of the Eiffel Tower, or a point on Mars representing the location of its highest mountain, Olympus Mons. Most consumers use the term when referring to hotels, campsites, fuel stations or any other categories used in modern automotive navigation systems.

Catalogue Service for the Web (CSW), sometimes seen as Catalogue Service - Web, is a standard for exposing a catalogue of geospatial records in XML on the Internet. The catalogue is made up of records that describe geospatial data, geospatial services, and related resources.

<span class="mw-page-title-main">CityGML</span>

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 and the relationships between them. It also defines different standard levels of detail (LoDs) for the 3D objects, which allows the representation of objects for different applications and purposes, such as simulations, urban data mining, facility management, and thematic inquiries.

GeoRSS is a specification for encoding location as part of a Web feed. (Web feeds are used to describe feeds of content, such as news articles, Audio blogs, video blogs and text blog entries. These web feeds are rendered by programs such as aggregators and web browsers.) The name "GeoRSS" is derived from RSS, the most known Web feed and syndication format.

Geospatial metadata is a type of metadata applicable to geographic data and information. Such objects may be stored in a geographic information system (GIS) or may simply be documents, data-sets, images or other objects, services, or related items that exist in some other native environment but whose features may be appropriate to describe in a (geographic) metadata catalog.

<span class="mw-page-title-main">OpenLayers</span> JavaScript library for displaying map data in web browsers

OpenLayers is an open-source JavaScript library for displaying map data in web browsers as slippy maps. It provides an API for building rich web-based geographic applications similar to Google Maps and Bing Maps.

GeoSciML or Geoscience Markup Language is a GML Application Schema that can be used to transfer information about geology, with an emphasis on the "interpreted geology" that is conventionally portrayed on geologic maps. Its feature-type catalogue includes Geologic Unit, Mapped Feature, Earth Material, Geologic Structure, and specializations of these, as well as Borehole and other observational artefacts. It was created by, and is governed by, the Commission for the Management and Application of Geoscience Information (CGI) to support interoperability of information served from Geologic Surveys and other data custodians. It will be used in the OneGeology project, an effort to create a geological map of the entire Earth, served live by merging data from many national geological surveys.

<span class="mw-page-title-main">Brian McClendon</span> American businessman

Brian A McClendon is an American software executive, engineer, and inventor. He was a co-founder and angel investor in Keyhole, Inc., a geospatial data visualization company that was purchased by Google in 2004 to produce Google Earth. Keyhole itself was spun off from another company called Intrinsic Graphics, of which McClendon was also a co-founder. McClendon was elected a member of the National Academy of Engineering in 2015 for strategic, technical, and managerial leadership resulting in widespread accurate and useful geographic information.

<span class="mw-page-title-main">Open Geospatial Consortium</span> Standards organization

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 1994 and involves more than 500 commercial, governmental, nonprofit and research organizations in a consensus process encouraging development and implementation of open standards.

WaterML is a technical standard and information model used to represent hydrological time series structures. The current version is WaterML 2.0, released an open standard of the Open Geospatial Consortium (OGC).

The Web Coverage Processing Service (WCPS) defines a language for filtering and processing of multi-dimensional raster coverages, such as sensor, simulation, image, and statistics data. The Web Coverage Processing Service is maintained by the Open Geospatial Consortium (OGC). This raster query language allows clients to obtain original coverage data, or derived information, in a platform-neutral manner over the Web.

The Augmented Reality Markup Language (ARML) is a data standard to describe and interact with augmented reality (AR) scenes. It has been developed within the Open Geospatial Consortium (OGC) by a dedicated ARML 2.0 Standards Working Group. ARML consists of both an XML grammar to describe the location and appearance of virtual objects in the scene, as well as ECMAScript bindings to allow dynamic access to the properties of the virtual objects, as well as event handling, and is currently published in version 2.0. ARML focuses on visual augmented reality.

<span class="mw-page-title-main">Web GIS</span> Technologies employing the World Wide Web to manage spatial data

Web GIS, or Web Geographic Information Systems, are GIS that employ the World Wide Web to facilitate the storage, visualization, analysis, and distribution of spatial information over the Internet. The World Wide Web, or the Web, is an information system that uses the internet to host, share, and distribute documents, images, and other data. Web GIS involves using the World Wide Web to facilitate GIS tasks traditionally done on a desktop computer, as well as enabling the sharing of maps and spatial data. While Web GIS and Internet GIS are sometimes used interchangeably, they are different concepts. Web GIS is a subset of Internet GIS, which is itself a subset of distributed GIS, which itself is a subset of broader Geographic information system. The most common application of Web GIS is Web mapping, so much so that the two terms are often used interchangeably in much the same way as Digital mapping and GIS. However, Web GIS and web mapping are distinct concepts, with web mapping not necessarily requiring a Web GIS.

References

  1. "OGC® Approves KML as Open Standard". Open Geospatial Consortium. 2008-04-14. Archived from the original on Nov 30, 2018. Retrieved 2018-11-20.
  2. "KML". Open Geospatial Consortium. Retrieved 2018-11-20.
  3. "KML Support in Marble". Marble. Retrieved 2018-11-20.
  4. "KML content isn't available in Google Maps". Google Help. Archived from the original on 2016-04-26. Retrieved 2020-01-26.
  5. "KMZ Files". Keyhole Markup Language. Google for Developers. Retrieved 2009-12-16.
  6. Wilson, Tim, ed. (2008-04-14). OGC KML. Open Geospatial Consortium, Inc. p. 14. Retrieved 9 June 2015.
  7. "The OGC Seeks Comment on OGC Candidate KML 2.2 Standard" (Press release). Open Geospatial Consortium. 2007-12-04. Retrieved 2007-12-10.
  8. Shankland, Stephen (2008-04-14). "Google mapping spec now an industry standard". CNET. Archived from the original on 2008-05-12. Retrieved 2008-04-14.
  9. "OGC KML 2.3 SWG". OGC. Retrieved 2013-10-07.
  10. "OGC KML 2.3 Standard". OGC. 4 August 2015. Retrieved 2015-08-04.