Wat is het KML-bestandsformaat?
Een .kml-bestand bevat geografische gegevens opgeslagen in een op XML gebaseerd formaat. KML-bestanden kunnen informatie opslaan over:
- Punten,
- Lijnen en paden,
- Polygonen,
- Afbeeldingen en overlays,
- 3D-modellen,
- Tekstbeschrijvingen en HTML-pop-ups.
Gegevens opgeslagen in .kml-bestanden worden gebruikt voor het markeren en beschrijven van geografische locaties, het toevoegen van camerapunten of het aanbrengen van overlay-texturen op kaarten. Elke locatie wordt beschreven door zijn coördinaten (breedtegraad en lengtegraad) volgens de WGS84-standaard, en optioneel met een derde coördinaat - hoogte boven het gemiddelde zeeniveau, die standaard op 0 staat. Een camerabeeld of tijdsbestek kan ook worden gedefinieerd. .kml vertoont structurele overeenkomsten met het GML-formaat.
.kml-bestanden worden vaak gedistribueerd als .kmz-archieven - met ZIP gecomprimeerde pakketten die het .kml-document bundelen met eventuele waarnaar verwezen afbeeldingen of modellen. De naam Keyhole Markup Language is afgeleid van Keyhole, Inc., het bedrijf dat het formaat oorspronkelijk ontwikkelde. Google nam Keyhole over in 2004 en integreerde de technologie in Google Earth, waardoor zowel offline als online bekijken en bewerken van .kml-gegevens mogelijk werd. In 2008 standaardiseerde het Open Geospatial Consortium (OGC) KML 2.2 als een open formaat voor geo-browsers.
Beveiliging & veiligheid
RISICO: LOWKML is platte XML zonder uitvoerbare code, dus het bestand zelf is veilig om te openen. Twee zaken om op te letten: een <NetworkLink> element kan ervoor zorgen dat een KML automatisch externe inhoud ophaalt van een URL bij het openen (een vector voor privacy/tracking en, in theorie, een manier om onverwachte gegevens binnen te halen) - wees voorzichtig met KML uit onbetrouwbare bronnen. Ook kunnen kaartgegevens privacygevoelig zijn: een gedeelde route of set spelden kan een huisadres of regelmatige bewegingen onthullen. KMZ-bestanden zijn ZIP-archieven, dus het gebruikelijke advies over het alleen uitpakken van vertrouwde archieven is van toepassing.
Formaatdetails
in een notendopProgramma's die KML-bestanden openen
Technische details
diepe specificaties| MIME-type | application/vnd.google-earth.kml+xml |
| Bestandscodering | Platte UTF-8 XML-tekst; geen binaire header of magic bytes |
| XML-root-element | `<kml>` met namespace `xmlns="http://www.opengis.net/kml/2.2"` |
| Coördinatensysteem | WGS84 (EPSG:4326) - lengtegraad, breedtegraad, optionele hoogte in meters |
| Coördinatenvolgorde | Lengtegraad vóór breedtegraad (tegenovergesteld aan de ISO 6709 / GeoJSON-conventie) |
| Hoogtemodi | `clampToGround`, `relativeToGround`, `absolute` |
| Geometrietypen | Point, LineString, LinearRing, Polygon, MultiGeometry, Model |
| Stylingsysteem | Inline `<Style>` en gedeelde `<StyleMap>` elementen bepalen icoon, kleur, lijnbreedte en label |
| Tijdselementen | `<TimeStamp>` voor een enkel moment; `<TimeSpan>` voor een interval - maakt temporele animatie in geo-browsers mogelijk |
| Overlay-typen | GroundOverlay (afbeelding op terrein), ScreenOverlay (HUD-afbeelding), PhotoOverlay (360°-foto) |
| Netwerkverbindingen | `<NetworkLink>` haalt externe KML/KMZ-gegevens dynamisch op, wat live-bijgewerkte kaartlagen mogelijk maakt |
| 3D-modelverwijzingen | Verwijst naar externe COLLADA (`.dae`) bestanden via het `<Model>` element voor 3D-objecten geplaatst op het terrein |
| Gecomprimeerde variant | `.kmz` - een ZIP-archief dat het `.kml`-bestand bundelt met waarnaar verwezen afbeeldingen en modellen |
| Standaardiseringsinstantie | Open Geospatial Consortium (OGC); KML 2.2 gestandaardiseerd in april 2008 (document OGC 07-147r2) |
| Ballon-pop-ups | Het veld `<description>` accepteert platte tekst of HTML, weergegeven als een informatieballon bij het klikken op een kenmerk |
| Uitgebracht | 2004 (Google acquired Keyhole); KML 2.2 adopted as an OGC standard in 2008 |
| Open standaard | Ja · royaltyvrij |
| Specificatie | www.ogc.org |
KML conversies
Community V&A
gevraagd door gebruikersNog geen vragen - wees de eerste om iets te vragen over KML-bestanden.