Keyhole Markup Language

Keyhole Markup Language (KML) is an XML notation for expressing geographic annotation and visualization within Internet-based, 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. Other projects such as Marble have also started to develop KML support.[3]

Keyhole Markup Language
Keyhole Markup Language
Filename extensions.kml, .kmz
Internet media type
  • application/
  • application/
Developed byKeyhole, Inc., Google
Type of formatGeographic information system
Extended fromXML


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. 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" along with a timestamp or timespan. KML shares some of the same structural grammar as GML. Some KML information cannot be viewed in Google Maps or Mobile.[4]

KML files are very often distributed in KMZ files, which are zipped KML files with a .kmz extension. These must be legacy (ZIP 2.0) compression compatible (i.e. stored or deflate method), otherwise the .kmz file might not uncompress in all geobrowsers.[5] 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 images).[6]

An example KML document is:

<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="">
  <name>New York City</name>
  <description>New York City</description>

The MIME type associated with KML is application/; the MIME type associated with KMZ is application/

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 if the altitude data is available. The longitude, latitude components (decimal degrees) are as defined by the World Geodetic System of 1984 (WGS84). The vertical component (altitude) 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.[7]

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

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

See also


  1. ^ "OGC® Approves KML as Open Standard | OGC(R)". 2008-04-14. Retrieved 2018-11-20.
  2. ^ "Kml | Ogc(R)". Retrieved 2018-11-20.
  3. ^ "KML Support in Marble". Retrieved 2018-11-20.
  4. ^ "Can Google Maps read the KML files I've made for Google Earth?". Google. Retrieved 2009-06-15.
  5. ^ "Viewing data from Google Earth". Google. Retrieved 2013-04-07.
  6. ^ "KMZ Files". Google. Retrieved 2009-12-16.
  7. ^ Wilson, Tim, ed. (2008-04-14). OGC KML. Open Geospatial Consortium, Inc. p. 14. Retrieved 9 June 2015.
  8. ^ "The OGC Seeks Comment on OGC Candidate KML 2.2 Standard" (Press release). Open Geospatial Consortium, Inc. 2007-12-04. Retrieved 2007-12-10.
  9. ^ Shankland, Stephen (2008-04-14). "Google mapping spec now an industry standard". CNET. Retrieved 2008-04-14.
  10. ^ "OGC KML 2.3 SWG". OGC. Retrieved 2013-10-07.
  11. ^ "OGC KML 2.3 Standard". OGC. Retrieved 2015-08-04.

External links

ArcGIS Server

ArcGIS Server is the core server geographic information system (GIS) software made by Esri. ArcGIS Server is used for creating and managing GIS Web services, applications, and data. ArcGIS Server is typically deployed on-premises within the organization’s service-oriented architecture (SOA) or off-premises in a cloud computing environment.ArcGIS Server services supply mapping and GIS capabilities via ArcGIS Online for Esri Web and client applications, such as ArcGIS Desktop, ArcLogistics, the Viewer, ArcGIS Explorer, ArcGIS Explorer Online, ArcGIS Viewer for Flex, ArcGIS Mapping for SharePoint, Esri Business Analyst Online (BAO), and applications built with ArcGIS for iOS or BAO for iOS. Numerous third-party applications are licensed to use ArcGIS Server services, as well.

ArcGIS Server extensions allow GIS functionality available within a subset of ArcGIS Desktop extensions to be deployed as Web Services. ArcGIS Server extensions include 3D, Spatial, Geostatistical, Network, Geoportal, Image, Data Interoperability, Workflow Manager, and Schematics.

Typical customer applications include using ArcGIS Server mapping and spatial analysis services in geoportals and spatial data infrastructure, integration with the organization’s asset, customer relationship, natural resource, or work order management system, development of situational awareness or common operating picture solutions, online store and resource locators, public-facing Web portals for government transparency, online tracking of weather events, resource movement, or visualizing change over time, sharing of scientific research and modeling, management and delivery of remote sensing data, collaborative mapping and user-generated content applications, as well as managing data collection projects using mobile devices and global positioning system (GPS) and supporting mobile data intelligence.

ArcGIS Server is available for the Microsoft Windows .NET Framework and the Java Platform. ArcGIS Server ships in three functional editions, Basic, Standard, and Advanced, with the Advanced edition providing the most functionality. ArcGIS Server Basic edition is used primarily to manage multiuser geodatabases and geodata services. Both ArcGIS Server Standard and Advanced editions support the following types of Web services: Feature (for Web editing), Geodata (for geodatabase replication), Geocode (for finding and displaying addresses/locations on a map), Geometry (for geometric calculations such as calculating areas and lengths), Geoprocessing (for scientific modeling and spatial data analysis), Globe (for 3D and globe rendering), Image (for serving raster data and providing control over imagery delivery, such as satellite imagery or orthophotos), Keyhole Markup Language (KML), Map (for cached and optimized map services), Mobile (for running services on field devices), Network Analyst (for routing, closest facility location, or service area analysis), Search (for enterprise search of GIS assets), Web Coverage Service (WCS), Web Feature Service (WFS) and Transactional Web Feature Service (WFS-T), and Web Map Service (WMS).

In addition, ArcGIS Server editions are available at two levels, scaled according to capacity: Workgroup and Enterprise. ArcGIS Server Workgroup can be deployed on a single machine to support a maximum of 10 simultaneous connections to a multiuser geodatabase. With Workgroup, the multiuser geodatabase storage capacity cannot exceed ten gigabytes. ArcGIS Server Enterprise supports distributed deployment of ArcGIS Server components, unlimited simultaneous connections to a multiuser geodatabase, and unlimited multiuser geodatabase storage capacity.

ArcGIS Server is also used to manage multiuser geodatabases. Multiuser geodatabases leverage ArcSDE technology, implemented on a relational database management system (RDBMS). ArcGIS Server Enterprise supports IBM DB2, IBM Informix Dynamic Server, Microsoft SQL Server, Oracle, and PostgreSQL. ArcGIS Server Workgroup supports Microsoft SQL Server Express R1 and R2.

ArcGIS Server is used by the software developer and Web developer to create Web, desktop, and mobile applications. Esri provides developers with application development framework (ADF) and application programming interface (API) including, ArcGIS API for JavaScript, ArcGIS API for Flex, ArcGIS API for Microsoft Silverlight/WPF, ArcGIS API for iOS, BAO API, BAO for iOS, as well as the ArcGIS Mobile software development kit (SDK), and ArcGIS Server REST and SOAP APIs.

Bing Maps

Bing Maps (previously Live Search Maps, Windows Live Maps, Windows Live Local, and MSN Virtual Earth) is a web mapping service provided as a part of Microsoft's Bing suite of search engines and powered by the Bing Maps for Enterprise framework.

Bing Maps Platform

Bing Maps Platform (previously Microsoft Virtual Earth) is a geospatial mapping platform produced by Microsoft. It allows developers to create applications that layer location-relevant data on top of licensed map imagery. The imagery includes samples taken by satellite sensors, aerial cameras (including 45 degree oblique "bird's eye" aerial imagery licensed from Pictometry International), Streetside imagery, 3D city models and terrain.

Bing Maps Platform also provides a point-of-interest database including a search capability. Microsoft uses the Bing Maps Platform to power its Bing Maps product.

Key features of the Bing Maps Platform include:

Photo-based images with features such as Streetside and 45 degree oblique "bird’s eye" views (nominally including 4 views at 90 degree viewpoint increments) that present data in context while simplifying orientation and navigation.

The ability to overlay standard or custom data points and layers with different themes.

Building-level geocoding for more than 70 million addresses in the United States.

Developer support options available.

Set of APIs available upon which developers can build applications.


BlooSee was a web- and mobile-based social mapping platform for ocean recreation and conservation. The platform was designed to host a combination of crowdsourced and institutional media, forecasts, charts, and location-based points of interest, safety, navigation, conservation, and cruising routes.

BlooSee is owned by BlooSee, Inc. a Silicon Valley startup company founded in 2010 by Internet entrepreneurs Pedro Valdeolmillos (originator of the idea) and Marc Puig. It closed in 2015.

Family tree mapping

Family tree mapping is the process of geocoding places in family tree files to produce geospatial data suitable for viewing with a virtual globe or 2D mapping program.

Google Earth

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 to see cities and landscapes from various angles. Users can explore the globe by entering addresses and coordinates, or by using a keyboard or mouse. The program can also be downloaded on a smartphone or tablet, using a touch screen or stylus to navigate. Users may use the program to add their own data using Keyhole Markup Language and upload them through various sources, such as forums or blogs. Google Earth is able to show various kinds of images overlaid on the surface of the earth and is also a Web Map Service client.

In addition to Earth navigation, Google Earth provides a series of other tools through the desktop application. Additional globes for the Moon and Mars are available, as well as a tool for viewing the night sky. A flight simulator game is also included. Other features allow users to view photos from various places uploaded to Panoramio, information provided by Wikipedia on some locations, and Street View imagery. The web-based version of Google Earth also includes Voyager, a feature that periodically adds in-program tours, often presented by scientists and documentarians.

Google Earth has been viewed by some as a threat to privacy and national security, leading to the program being banned in multiple countries. Some countries have requested that certain areas be obscured in Google's satellite images, usually areas containing military facilities.

Google Maps

Google Maps is a web mapping service developed by Google. It offers satellite imagery, aerial photography, street maps, 360° panoramic views of streets (Street View), real-time traffic conditions (Google Traffic), and route planning for traveling by foot, car, bicycle and air (in beta), or public transportation.

Google Maps began as a C++ desktop program at Where 2 Technologies. In October 2004, the company was acquired by Google, which converted it into a web application. After additional acquisitions of a geospatial data visualization company and a realtime traffic analyzer, Google Maps was launched in February 2005. The service's front end utilizes JavaScript, XML, and Ajax. Google Maps offers an API that allows maps to be embedded on third-party websites, and offers a locator for urban businesses and other organizations in numerous countries around the world. Google Map Maker allowed users to collaboratively expand and update the service's mapping worldwide but was discontinued from March 2017. However, crowdsourced contributions to Google Maps were not discontinued as the company announced those features will be transferred to the Google Local Guides program.Google Maps' satellite view is a "top-down" or "birds eye" view; most of the high-resolution imagery of cities is aerial photography taken from aircraft flying at 800 to 1,500 feet (240 to 460 m), while most other imagery is from satellites. Much of the available satellite imagery is no more than three years old and is updated on a regular basis. Google Maps used a variant of the Mercator projection, and therefore cannot accurately show areas around the poles. However, in August 2018, the desktop version of Google Maps was updated to show a 3D globe.

The current redesigned version of the desktop application was made available in 2013, alongside the "classic" (pre-2013) version. Google Maps for Android and iOS devices was released in September 2008 and features GPS turn-by-turn navigation along with dedicated parking assistance features. In August 2013, it was determined to be the world's most popular app for smartphones, with over 54% of global smartphone owners using it at least once.In 2012, Google reported having over 7,100 employees and contractors directly working in mapping.

KML (disambiguation)

KML or kml may refer to:

Kamileroi Airport (IATA airport code), Queensland, Australia

Keyhole Markup Language, an XML geospatial data file format

Korean Mountaineering League, an organization that focuses on the conservation of Korea's mountain environments

Lower Tanudan Kalinga (ISO 639-3 language code), a language used in Tanudan, Kalinga, Philippines

Korvpalli Meistriliiga, the Estonian Basketball League

KiSS Markup Language, an html-like file format used by certain KiSS and Linksys products


KMZ may refer to:

Keyhole Markup Language files when compressed

Leaflet (software)

Leaflet is a widely used open source JavaScript library used to build web mapping applications. First released in 2011, it supports most mobile and desktop platforms, supporting HTML5 and CSS3. Along with OpenLayers, and the Google Maps API, it is one of the most popular JavaScript mapping libraries and is used by major web sites such as FourSquare, Pinterest and Flickr.

Leaflet allows developers without a GIS background to very easily display tiled web maps hosted on a public server, with optional tiled overlays. It can load feature data from GeoJSON files, style it and create interactive layers, such as markers with popups when clicked.

It is developed by Vladimir Agafonkin, who joined Mapbox in 2013.

List of document markup languages

The following is a list of document markup languages. You may also find the List of markup languages of interest.

Location API for Java ME

The Location API for Java ME is a compact and generic Java 2 ME API that produces information about the device's present physical location to Java applications. This API can be optionally supported by mobile phone and PDA manufacturers, with the minimum Java platform required for this API being CLDC v1.1.

The Location API was developed under the Java Community Process as JSR 179, released in September 2003 and updated to version 1.0.1 in March 2006. Nokia is the main author and maintainer of this JSR.

OpenLAPI is an LGPL implementation for use in emulator environments where the Nokia reference implementation does not exist and for devices which can access a GPS device over Bluetooth.

Map My Ancestors

Map My Ancestors is an application for converting GEDCOM files produced by genealogy software into Keyhole Markup Language (KML) files for viewing with KML-compatible programs such as Google Earth or Google Maps. It can also convert comma-separated values (CSV) files produced by spreadsheet or database software into KML files.

The application identifies places in the source data and Geocodes them to produce a list of latitudes and longitudes. The user has the opportunity to confirm map locations before viewing the data with Google Earth.

Marble (software)

Marble is a virtual globe application which allows the user to choose among the Earth, the Moon, Venus, Mars and other planets to display as a 3-D model. It is free software under the terms of the GNU LGPL, developed by KDE for use on personal computers and smart phones. It is written in C++ and uses Qt.

Marble is intended to be very flexible; beyond its cross-platform design, the core components can easily be integrated into other programs. It is designed to run without the need for hardware acceleration, but it can be extended to use OpenGL. An important user-experience objective being that the application start fairly quickly, it ships with a minimal but useful off-line dataset (5–10MB).Contributors have added support for on-line mapping sources such as OpenStreetMap and the ability to interpret KML files. Marble also provides route planning capabilities. A navigation mode called MarbleToGo was developed as part of Google Summer of Code 2010. It was later partially rewritten and renamed to Marble Touch.Geothek is a fork of Marble adding a statistics module, pixel maps, and a 3D view. It is developed and used by Austrian publisher Ed. Hölzel as atlas software for classrooms.

NASA WorldWind

WorldWind is an open-source (released under the NOSA license) virtual globe. 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.The original version relied on .NET Framework, which ran only on Microsoft Windows. The more recent Java version, WorldWind Java, is cross platform, a software development kit (SDK) aimed at developers and, unlike the old .NET version, not a standalone virtual globe application in the style of Google Earth. The SDK includes a suite of basic demos, available at The WorldWind Java version was awarded NASA Software of the Year in November 2009. The program overlays NASA and USGS satellite imagery, aerial photography, topographic maps, Keyhole Markup Language (KML) and Collada files.

On April 5, 2019, WorldWind will be shut down and all servers will be unavailable after that date. The SDK will still be available on Github, but without any technical support.


OpenLayers is an open-source (provided under the 2-clause BSD License) 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.

Open Geospatial Consortium

The Open Geospatial Consortium (OGC), an international voluntary consensus standards organization, originated in 1994. In the OGC, more than 500 commercial, governmental, nonprofit and research organizations worldwide collaborate in a consensus process encouraging development and implementation of open standards for geospatial content and services, sensor web and Internet of Things, GIS data processing and data sharing.


Wikimapia is a privately owned internet company that provides an open-content collaborative mapping project. The project implements an interactive "clickable" web map with a geographically-referenced wiki system, with the aim to mark and describe all geographical objects in the world.

Wikimapia was created by Alexandre Koriakine and Evgeniy Saveliev in May 2006. The data, a crowdsourced collection of places marked by registered users and guests, has grown to just under 28,000,000 objects as of November 2017, and is released under the Creative Commons License Attribution-ShareAlike (CC BY-SA). Although the project's name is reminiscent of that of Wikipedia, and the creators share the "wiki" philosophy, it is not a part of the non-profit Wikimedia Foundation family of wikis.

Yahoo! Pipes

Yahoo! Pipes was a web application from Yahoo! that provided a graphical user interface for building data mashups that aggregate web feeds, web pages, and other services, creating Web-based apps from various sources, and publishing those apps. The application worked by enabling users to "pipe" information from different sources and then set up rules for how that content should be modified (for example, filtering). Other than the pipe editing page, the website had a documentation page and a discussion page. The documentation page contained information about pipes including guides for the pipe editor and troubleshooting. The discussion page enabled users to discuss the pipes with other users.

Standards of the Open Geospatial Consortium (OGC)

This page is based on a Wikipedia article written by authors (here).
Text is available under the CC BY-SA 3.0 license; additional terms may apply.
Images, videos and audio are available under their respective licenses.