KML-naar-GeoJSON-converter
Het converteren van Google KML-bestanden naar GeoJSON zet hiërarchische geografische XML-data om in lichtgewicht vectorgegevens in JavaScript Object Notation voor moderne webkaarten.
Formaatvergelijking en technische specificaties
| Specificatie | KML | GEOJSON |
|---|---|---|
| MIME-type | application/ | application/ |
| Type | geografische XML-notatie | geografische vector-JSON |
| Compressie | XML-tekst (KMZ bij ZIP-compressie) | geen (JSON-tekst) |
| Standaardspecificatie | OGC KML 2.3 | IETF RFC 7946 |
| Bestandshandtekening (magic bytes) | 3C 3F 78 6D 6C ... 3C 6B 6D 6C (<kml) | 7B 22 74 79 70 65 22 3A 20 22 ({"type": ") JSON header |
Formaatoverzicht en toepassingen
Geografische data wordt vaak uitgewisseld tussen kaarttools voor de desktop en webapplicaties. Google KML is het standaardformaat dat door Google Earth wordt gebruikt en structureert punten, lijnen en polygonen binnen een XML-boomstructuur. Moderne webbrowsers en kaartbibliotheken zoals Mapbox en Leaflet geven de voorkeur aan GeoJSON omdat dit naadloos aansluit bij de datastructuren die native door JavaScript worden gebruikt. Ontwikkelaars en GIS-analisten converteren KML naar GeoJSON om kaartlagen snel op webpagina's te laden zonder dat daarvoor gespecialiseerde desktopsoftware nodig is. Webapplicaties verwerken JSON snel in vergelijking met het parsen van grote XML-documenten. Wanneer gebruikers een webkaart laden, wordt een GeoJSON-bestand direct ingevoerd in vectorrenderingengines. Deze conversie elimineert de overhead van het vertalen van XML-tags tijdens runtime. Hierdoor kunnen kaarten duizenden objecten soepel weergeven met behoud van nauwkeurige coördinatengeometrie.
Technische specificaties en codec-overzicht
Google KML gebruikt het MIME-type application/vnd.google-earth.kml+xml en maakt gebruik van XML-tekstsyntaxis, of een ZIP-container die bekendstaat als KMZ wanneer deze is gecomprimeerd. GeoJSON gebruikt het MIME-type application/geo+json en bestaat uit ongecomprimeerde platte tekst gestructureerd als een JSON-object. KML-bestanden beginnen vaak met standaard XML-declaratiebytes, terwijl KMZ-archieven beginnen met de lokale ZIP-bestandsheaderbytes 50 4B 03 04. GeoJSON-bestanden beginnen met het ASCII-teken '{' dat het hoofd-JSON-object vertegenwoordigt. Het conversieproces parseert de XML-documentboom, haalt coördinatenarrays en metadata-tags op en herschrijft deze naar RFC 7946-compatibele JSON-featurecollecties zonder verlies van coördinatennauwkeurigheid.
Besturingssysteem- en browserondersteuning
Beide formaten werken op de meeste moderne besturingssystemen, waaronder Windows, macOS, Linux, iOS en Android. GeoJSON draait native in de meeste moderne webbrowsers zoals Chrome, Firefox, Safari en Edge omdat browsers JSON native parsen. Google KML vereist gespecialiseerde desktopsoftware zoals Google Earth of conversietools zoals QGIS om correct weer te geven, aangezien webbrowsers KML-bestanden niet native kunnen weergeven zonder parseerbibliotheken van derden.
Handige informatie
Controleer altijd of uw bron-KML gebruikmaakt van geografische WGS 84-coördinaten voordat u deze naar GeoJSON converteert, om ruimtelijke afwijkingen op uw webkaarten te voorkomen.
Veelgestelde vragen
Hoe converteert u Google KML naar GeoJSON zonder kwaliteitsverlies?
De conversie is wiskundig verliesvrij voor coördinatendata. Beide formaten slaan geografische coördinaten op met behulp van het ruimtelijke referentiesysteem WGS 84. Specifieke stijlspecificaties in KML, zoals aangepaste pictogram-URL's en complexe hoogte-extrusies van polygonen, hebben echter mogelijk geen direct equivalent in standaard GeoJSON en vereisen mogelijk handmatige nabewerking.
Wat is het verschil tussen Google KML en GeoJSON?
Google KML is een op XML gebaseerde taal ontworpen voor Earth-browsers, met een hiërarchische knooppuntstructuur die ondersteuning biedt voor rijke stijlen, camerastandpunten en 3D-elementen. GeoJSON is een lichtgewicht formaat gebaseerd op JSON, geoptimaliseerd voor web-API's en vectorafbeeldingen met een platte structuur die featurecollecties, geometrieën en eenvoudige eigenschappen bevat.