KMZ

Wat is een KMZ-bestand?

Een KML-bestand samen met zijn afbeeldingen en pictogrammen, ingepakt in één bestand.

Wat KMZ is

KMZ is een container: een omhulsel voor stromen die door iets anders zijn gecodeerd. Het wordt gebruikt voor kaarten.

De extensie is .kmz en de volledige naam Zipped KML. Allebei zeggen ze minder dan wat het bestand kan bevatten, en daar gaat de rest van deze pagina over.

Waar KMZ vandaan komt

Het komt van Keyhole. De specificatie is OGC KML 2.3.

De leeftijd is om een praktische reden interessant: hoe ouder een formaat, hoe meer programma’s de tijd hebben gehad om het te leren.

De specificatie is openbaar

Ze is volledig gepubliceerd, dus wie het formaat wil uitvoeren kan dat uit het document doen in plaats van door te kijken hoe anderen het doen. Daarom duikt het in zo veel programma’s op, en daarom gaan bestanden van twintig jaar geleden nog steeds open. Openbaar is niet hetzelfde als royaltyvrij: waar een formaat een codec omhult, is de octrooilicentie een aparte vraag waarop de standaard geen antwoord geeft.

Er wordt niets weggegooid

KMZ bewaart zijn inhoud precies. Opnieuw opslaan verandert niets, dus je kunt het zo vaak openen, bewerken en wegschrijven als je wilt zonder dat er schade opstapelt — en dat is wat er een werkformaat van maakt in plaats van een afleverformaat.

Het kan een hele map bevatten

KMZ bewaart een mappenstructuur: namen, mappen en de opbouw daartussen. Daarom kan het in een mailbijlage voor een map invallen.

Wat KMZ opent

Google Earth en QGIS lezen het, en de meeste programma’s van dezelfde soort ook.

Als een bestand niet opengaat ligt het zelden aan het formaat — vaker is het programma ouder dan het formaat. Converteren naar iets ouders is de betrouwbare weg eromheen, en daarvoor is de rest van deze site bedoeld.

Het in de browser openen

Geen enkele browser leest het.

Dat is veruit de meest voorkomende reden om het te converteren: niet dat het formaat slecht is, maar dat de plek waar je het bestand wilt tonen het niet kan lezen.

Het is een werkformaat

KMZ is bedoeld om te openen en te wijzigen. Houd het bestand in dit formaat zolang het werk loopt, en exporteer eruit wanneer er een afgeronde versie nodig is.

Een ZIP met een kaart erin

Een KMZ is een gewoon ZIP-archief met daarin één KML-document en alles waar dat document naar verwijst: eigen plaatsmarkeringspictogrammen, foto’s, grondoverlaybeelden, af en toe een model. Hernoem het naar .zip en elke archieftool opent het, wat geen trucje is — het is hoe het formaat gespecificeerd is.

De KML erin heet volgens conventie doc.kml en staat aan de wortel van het archief. Al het andere leeft in mappen ernaast, waarnaar verwezen wordt met een relatief pad, wat het hele pakket draagbaar maakt op een manier die een kale KML nooit is.

Waarom Google Earth dit schrijft en geen KML

Omdat een KML die naar afbeeldingen op je eigen computer verwijst niets toont op die van iemand anders. Zodra een kaart een eigen pictogram, een foto in een ballon of een overlay gebruikt, houdt het bestand op zelfvoorzienend te zijn, en delen levert een kaart op met ontbrekende stukken en geen uitleg.

Verpakken lost het volledig op. Alles reist mee, de relatieve paden lossen nog steeds op, en de ontvanger opent één bestand. Google Earth kiest daarom standaard voor KMZ, en dat is de juiste standaard zelfs voor een kaart zonder afbeeldingen — want er komt er uiteindelijk een bij.

Het grootteverschil is niet klein

KML is uitgebreide XML, en coördinatenlijsten in het bijzonder zijn enorm redundante tekst. Zippen brengt een grote dataset doorgaans terug tot een vijfde van de grootte, soms een tiende, en dat is nog voordat er afbeeldingen bij komen.

Voor een bestand dat gemaild wordt of achter een link staat, doet dat ertoe. Voor een bestand dat bewerkt wordt, niet — pak uit, werk aan de KML in een teksteditor of in Google Earth, en verpak opnieuw. Er gaat in geen van beide richtingen iets verloren, want compressie is het enige dat de container doet.

Wanneer je het moet uitpakken

Drie situaties. Een tool die KML leest maar geen KMZ, wat gangbaarder is dan het zou moeten zijn bij GIS-hulpprogramma’s en webkijkers. Een bulkbewerking — zoeken en vervangen over tweeduizend plaatsmarkeringsbeschrijvingen is een tekstbewerking en wil het ruwe bestand. En diagnose, wanneer een kaart niets toont en je moet weten of de afbeeldingen daadwerkelijk in het pakket zitten of alleen worden verwezen.

Dat laatste is het nuttigst. Open het archief, bekijk de mappen, en vergelijk wat er staat met wat de KML vraagt. Een ontbrekend pictogram of overlay valt meteen op, en het verklaart een klasse problemen die anders onzichtbaar is vanuit Google Earth.

Wat er nog steeds kan ontbreken aan een KMZ

Verpakken beschermt lokale bestanden. Het doet niets voor externe. Een KML die een overlay ophaalt van een URL, of een netwerklink gebruikt om live data op te halen, blijft afhankelijk van die server — en een KMZ daaromheen gebouwd is een paar kilobyte die niets meer tonen zodra de bron verdwijnt.

Het andere gat is lettertypen en opmaak binnen beschrijvingsballonnen, die HTML zijn. Een ballon opgemaakt met een lettertype dat de ontvanger niet heeft, of verwijzend naar een afbeelding op het web, degradeert op dezelfde manier als elke webpagina. Moet een kaart offline en permanent werken, dan hoort alles wat hij nodig heeft een bestand in het archief te zijn.

Er zelf een bouwen

ZIP de KML en zijn assetmappen samen, met de KML aan de wortel van het archief, en hernoem het resultaat naar .kmz. Dat is het hele proces — er is geen speciale tool en geen manifest te schrijven.

Twee details die de moeite waard zijn om goed te doen. Zip de inhoud, niet de omhullende map, anders krijgt elk pad in de KML een extra mapniveau en lost niets op. En houd de relatieve paden zoals ze zijn: de verwijzingen in de KML zijn waar de archiefstructuur mee moet overeenkomen, dus de mapindeling is niet cosmetisch.

Waar een KMZ geopend kan worden

Google Earth, op het bureaublad, op mobiel en in de browserversie. Google My Maps importeert er direct eentje, wat de gangbare manier is waarop een gedeelde kaart op het web belandt. QGIS leest het voor analytisch werk, en de meeste serieuze GIS-software ook, al willen sommige het eerst omgezet zien naar GeoJSON of Shapefile.

Wat niets opent zonder hulp is een browser op zichzelf, een mailclientvoorbeeld, of een algemene bestandsviewer. Een KMZ sturen naar iemand die nog geen Google Earth gebruikt, betekent een bestand en een instructie sturen, wat de moeite waard is te weten voordat het een supportgesprek wordt — een link naar een My Maps-weergave is vaak het betere om te sturen.

gx-uitbreidingen en wat ze aan het archief toevoegen

Google voegde eigen elementen toe aan KML met de gx-namespace — gx:Track voor GPS-sporen met tijdstempels, gx:altitudeMode voor extra hoogteopties, gx:Tour voor geanimeerde vluchten door een landschap. Die zitten allemaal gewoon binnen de KML en reizen mee in het KMZ-archief zonder speciale behandeling.

Het probleem is ondersteuning buiten Google Earth. Software die alleen de basis-KML-specificatie implementeert, herkent de gx-elementen niet en negeert ze, of struikelt erover. Een KMZ vol gx:Track-gegevens die perfect werkt in Google Earth kan in ander GIS-gereedschap aankomen als een kaart zonder sporen.

De gegevens, op één plek

Kenmerken en herkomst van het formaat KMZ.
Extensie.kmz
Mediatypeapplication/vnd.google-earth.kmz
Uitgegeven doorKeyhole
SpecificatieOGC KML 2.3

KMZ-bestanden: veelgestelde vragen

Hoe open ik een KMZ-bestand?

Google Earth is de natuurlijke plek, op bureaublad, mobiel of in de browser. Google My Maps importeert er direct eentje als je hem op het web wilt, en QGIS leest hem voor analytisch werk. Geen browser opent er zelfstandig eentje.

Wat is het verschil tussen KMZ en KML?

Een KMZ is een ZIP-archief met een KML plus elk pictogram, elke foto en elk overlaybeeld waar het naar verwijst. Een kale KML die naar lokale bestanden verwijst toont niets op een andere machine, wat verklaart waarom Google Earth standaard KMZ schrijft.

Kan ik een KMZ met een archieftool openen?

Ja — hernoem het naar .zip en elke archieftool opent het. Dat is geen omweg maar hoe het formaat gedefinieerd is, en het is de snelste manier om te controleren of de afbeeldingen van een kaart daadwerkelijk in het pakket zitten.

Hoe maak ik een KMZ-bestand?

Zip de KML samen met zijn assetmappen, met de KML aan de wortel van het archief, en hernoem het resultaat naar .kmz. Zip de inhoud in plaats van de omhullende map, anders lossen de relatieve paden in de KML niet meer op.

Waarom toont mijn KMZ nog steeds ontbrekende afbeeldingen?

Verpakken dekt alleen lokale bestanden. Alles wat de KML van een URL ophaalt — een externe overlay, een afbeelding in een beschrijvingsballon, een netwerklink — blijft afhankelijk van die server. Voor een kaart die offline moet werken, hoort elk bestand in het archief te zitten.

Is een KMZ kleiner dan een KML?

Aanzienlijk. KML is uitgebreide XML en coördinatenlijsten comprimeren uitstekend, dus een grote dataset valt vaak terug tot een vijfde van de grootte of minder — nog voordat afbeeldingen zijn meegerekend.