Google KML (.kml)

Estándar Estándar

Keyhole Markup Language (KML) es un estándar XML abierto para describir anotaciones y visualizaciones geográficas. Se creó para Keyhole Earth Viewer (Google Earth) y lo estandarizó el Open Geospatial Consortium (OGC).

Convertir de GEOJSON a KML

Convertidor gratuito de GEOJSON a KML en el navegador. Convierte archivos al instante en tu dispositivo.

Inspección y metadatos

Los sistemas operativos y analizadores de archivos identifican los archivos de KML inspeccionando la secuencia de bytes binarios inicial:

Selecciona o arrastra archivos aquí

Privado - los archivos nunca salen de tu dispositivo

o pega Ctrl+V
Garantía de privacidad sin transmisión de red: 0 bytes subidos a servidores externos. Todo el procesamiento se realizó de forma local en el entorno seguro de tu navegador.

Firma de cabecera a nivel de bytes (bytes mágicos)

Los sistemas operativos y analizadores de archivos identifican los archivos de KML inspeccionando la secuencia de bytes binarios inicial:

FIRMA HEXADECIMAL (DESPLAZAMIENTO 0):

3C 6B 6D 6C

REPRESENTACIÓN ASCII: <kml

Estandarización: Estándar OGC KML 2.3

Especificaciones técnicas

Arquitectura del contenedorGramática de visualización geográfica basada en XML que define marcas de posición, superposiciones del terreno, modelos 3D y perspectivas de cámara
CompresiónTexto XML sin comprimir (comprimido con ZIP en archivos .kmz)
Orden de bytes (Endianness)Flujo de texto UTF-8/Unicode
Espacios de colorCadenas de color hexadecimal AABBGGRR
Canales y estructuraMarcas de posición, rutas, polígonos, modelos de edificios 3D, superposiciones fotográficas y recorridos de cámara
Dimensiones máximasCoordenadas WGS 84: longitud, latitud y altitud (en metros sobre el nivel del mar)
TransparenciaTransparencia alfa admitida en cadenas de color AABBGGRR y superposiciones PNG
Streaming y progresivoLos enlaces de red (NetworkLinks) permiten recibir actualizaciones en tiempo real desde servidores geoespaciales remotos

Matriz de comparación técnica: KML frente a la competencia

Atributo técnicoKML (Actual)GEOJSONGPXKMZ
Cámara 3D y recorridosInclinación y rumbo completos de cámara, y recorridos a vista de pájaroNinguna (solo propiedades de geometría plana)Seguimiento de la elevaciónInclinación completa de cámara y recorridos a vista de pájaro
Formato del archivoDocumento XML de texto planoDocumento JSON de texto planoDocumento XML de texto planoArchivo ZIP que contiene doc.kml
Formato de colorAABBGGRR (Alfa-Azul-Verde-Rojo)Estándar CSS / hexadecimalNingunoAABBGGRR
Uso principalGoogle Earth y SIG 3DMapas web (Mapbox, Leaflet)Seguimiento de actividad física con Garmin y GPSArchivo independiente de Google Earth

Modos de corrupción comunes y guía de recuperación hexadecimal

Error de Google Earth: «Error de análisis en la línea X: etiqueta no coincidente».

Causa raíz: Hay una etiqueta XML sin cerrar o un signo «&» sin escapar en el HTML de la descripción emergente.

Recuperación: Repare la sintaxis XML y encierre la descripción entre <![CDATA[...]]> con KML Repair de File2File.app.

Análisis de seguridad y vectores de ataque al analizador

Los archivos KML admiten enlaces de red y descripciones HTML que pueden facilitar ataques XXE, SSRF o XSS.

Vectores de ataque conocidos

  • Falsificación de solicitudes del lado del servidor (SSRF) mediante etiquetas <NetworkLink> maliciosas que consultan direcciones internas de la intranet.
  • Inyección XSS mediante HTML sin sanear dentro de etiquetas <description>, que se ejecuta en los globos informativos de Earth para escritorio o web.
  • Inyección de entidades externas XML (XXE) durante el procesamiento automatizado de KML.

Mejores prácticas defensivas: Desactiva las solicitudes a redes externas y sanea con DOMPurify el HTML de las descripciones emergentes.

Orígenes históricos e hitos

2008El Open Geospatial Consortium (OGC) adopta KML 2.2 como estándar geoespacial internacional.
2005Google adquiere Keyhole Inc. y cambia el nombre de Keyhole Earth Viewer a Google Earth, con lo que KML llega a un público global.
2001Keyhole Inc. crea KML para anotar imágenes satelitales en 3D.

Ventajas principales

  • Permite visualizar la Tierra en 3D: además de puntos, define el ángulo, rumbo, inclinación y altitud de la cámara, así como recorridos a vista de pájaro.
  • La compatibilidad con KML depende de la aplicación; las funciones disponibles varían entre herramientas GIS de escritorio y de mapas.
  • Los enlaces NetworkLink pueden recuperar recursos KML vinculados; la actualización depende de la configuración del documento y del visor.

Limitaciones técnicas

  • La sintaxis XML verbosa genera archivos más grandes que los formatos compactos, como GeoJSON.
  • Los colores usan el orden hexadecimal poco habitual AABBGGRR (alfa, azul, verde, rojo), en lugar del estándar RGBA.
  • Las plataformas ligeras de cartografía web rara vez admiten funciones 3D complejas, como recorridos y modelos.

Curiosidades técnicas interesantes

  • Keyhole Inc. recibió su nombre de los satélites espía de reconocimiento KH (Keyhole), que Estados Unidos lanzó durante la Guerra Fría.
  • En KML, los colores se escriben al revés como AABBGGRR: los dos primeros caracteres corresponden al alfa, seguidos del azul, el verde y el rojo.
  • Un archivo KMZ contiene al menos un archivo KML y puede incluir archivos auxiliares. doc.kml es el nombre convencional del archivo principal, pero se permiten otros nombres.

Preguntas técnicas frecuentes

¿Cuál es la diferencia entre KML y KMZ?

KML es un archivo XML de texto plano. KMZ es un archivo ZIP comprimido que contiene un KML y los iconos personalizados, texturas o imágenes de superposición 3D asociados.

¿Cómo puedo convertir KML a GeoJSON?

Puedes convertir archivos KML de Google Earth a GeoJSON para cartografía web con un solo clic en File2File.app, directamente desde el navegador.

¿Puedo abrir un archivo KML en Google Maps?

¡Sí! En Google Maps, ve a «Guardados» → «Mapas» → «Crear mapa» (Google My Maps) y haz clic en «Importar» para cargar el archivo KML.