Файл KML (.kml)
Стандарт СтандартKeyhole Markup Language (KML) - это открытый стандарт XML для описания географических аннотаций и визуализации, первоначально разработанный для Keyhole Earth Viewer (Google Earth) и стандартизированный Консорциумом OGC (Open Geospatial Consortium).
Конвертировать из GEOJSON в KML
Бесплатный конвертер из GEOJSON в KML прямо в браузере. Конвертируйте файлы мгновенно на вашем устройстве.
Анализ и метаданные
Операционные системы и анализаторы файлов идентифицируют файлы KML по начальной двоичной последовательности байтов:
Сигнатура заголовка на уровне байтов (Magic Bytes)
Операционные системы и анализаторы файлов идентифицируют файлы KML по начальной двоичной последовательности байтов:
HEX-СИГНАТУРА (СМЕЩЕНИЕ 0):
3C 6B 6D 6CПРЕДСТАВЛЕНИЕ ASCII: <kml
Стандартизация: Стандарт OGC KML 2.3
Технические спецификации
| Архитектура контейнера | Грамматика географической визуализации на основе XML, определяющая точки (Placemarks), наложения (GroundOverlays), 3D-модели и ракурсы камеры |
| Сжатие | Несжатый XML-текст (сжимается с помощью ZIP в файлы .kmz) |
| Порядок байтов (Endianness) | Текстовый поток UTF-8 / Unicode |
| Цветовые пространства | Шестнадцатеричные строки цветов в формате AABBGGRR |
| Каналы и структура | Метки (Placemarks), пути, полигоны, модели 3D-зданий, наложения фотографий и траектории камер в турах |
| Макс. габариты | Координаты WGS 84: Долгота, Широта, Высота (в метрах над уровнем моря) |
| Прозрачность | Альфа-прозрачность поддерживается в строках цветов AABBGGRR и наложениях PNG |
| Потоковая передача и прогрессивная загрузка | NetworkLinks поддерживают динамические потоковые обновления с удаленных геопространственных серверов |
Техническая матрица сравнения: KML против конкурентов
| Технический атрибут | KML (Текущий) | GEOJSON | GPX | KMZ |
|---|---|---|---|---|
| 3D-камера и туры | Полный наклон камеры, курс и туры с облетом | Отсутствуют (плоские свойства геометрии) | Отслеживание высоты над уровнем моря | Полный наклон камеры и туры с облетом |
| Формат упаковки | Простой текстовый XML-документ | Простой текстовый JSON-документ | Простой текстовый XML-документ | ZIP-архив, содержащий doc.kml |
| Формат цвета | AABBGGRR (Альфа-Синий-Зеленый-Красный) | Стандарт CSS / Hex | Отсутствует | AABBGGRR |
| Основное назначение | Google Earth и 3D-ГИС | Веб-карты (Mapbox, Leaflet) | Garmin и трекинг фитнес-активностей по GPS | Автономный архив Google Earth |
Типичные режимы повреждения и руководство по восстановлению в HEX
Ошибка Google Earth: 'Ошибка синтаксического анализа в строке X: несоответствующий тег'.
Первопричина: Незакрытый тег XML или незаэкранированный амперсанд в HTML-описании всплывающего балуна.
Восстановление: Исправьте синтаксис XML и оберните описание в блок <![CDATA[...]]> с помощью инструмента восстановления KML от File2File.
Анализ безопасности и векторы атак на парсер
Файлы KML поддерживают сетевые ссылки (NetworkLinks) и всплывающие окна с описаниями в формате HTML, которые могут стать причиной уязвимостей XXE, SSRF или межсайтового скриптинга (XSS).
Известные векторы атак
- Подделка запросов на стороне сервера (SSRF) через вредоносные теги <NetworkLink>, опрашивающие внутренние конечные точки интрасети.
- XSS-инъекция через неочищенный HTML внутри тегов <description>, выполняемая во всплывающих окнах настольных или веб-клиентов Earth.
- Инъекция внешних сущностей XML (XXE) при автоматизированной обработке KML.
Защитные лучшие практики: Отключите загрузку данных из внешних сетей и очищайте содержимое HTML во всплывающих окнах с помощью DOMPurify.
Исторические истоки и вехи
Ключевые преимущества и плюсы
- Наглядная визуализация 3D-Земли: описывает не просто точки, но и углы обзора 3D-камеры, азимут, наклон, высоту и виртуальные туры с облетом.
- Нативная поддержка в Google Earth, Google Maps, ArcGIS и всем профессиональном программном обеспечении для настольных ГИС.
- Поддержка NetworkLinks, позволяющая Google Earth динамически транслировать данные о погоде в реальном времени, трекинге полетов и сейсмической активности.
Технические ограничения и минусы
- Громоздкий синтаксис XML приводит к большим размерам файлов по сравнению с компактными форматами вроде GeoJSON.
- Цвета используют нестандартный шестнадцатеричный порядок AABBGGRR (Альфа-Синий-Зеленый-Красный) вместо стандартного RGBA.
- Сложные 3D-функции (туры, модели) редко поддерживаются на легковесных платформах веб-картографирования.
Интересные технические факты
- Компания Keyhole Inc. получила название в честь исторических разведывательных спутников-шпионов серии KH (Keyhole), запущенных США во время Холодной войны.
- В KML значения цветов записываются в обратном порядке как AABBGGRR: первые два символа отвечают за альфа-канал, затем синий, зеленый и красный.
- Файл .kmz - это буквально стандартный ZIP-архив, содержащий один файл 'doc.kml' и любые встроенные изображения или 3D-модели.
Часто задаваемые технические вопросы
В чем разница между KML и KMZ?
KML - это простой текстовый XML-файл. KMZ - это сжатый ZIP-файл, который содержит файл KML вместе со всеми пользовательскими значками карт, текстурами или изображениями 3D-наложений.
Как конвертировать KML в GeoJSON?
Вы можете преобразовать файлы KML от Google Earth в чистый GeoJSON для веб-картографирования в один клик с помощью File2File.app прямо в своем браузере.
Могу ли я открыть файл KML в Google Maps?
Да! В Google Maps перейдите в «Сохраненные» -> «Карты» -> «Создать карту» (Google My Maps) и нажмите «Импорт», чтобы загрузить ваш файл KML.
Связанные пары конвертации KML
Конвертация векторных данных GeoJSON в Google KML переводит легковесные массивы координат JSON в структурированные XML-документы, оптимизированные для Google Earth и Google Maps.
Конвертация файлов Google KML в формат GeoJSON преобразует иерархические географические данные XML в легкий векторный формат JavaScript Object Notation для современных веб-карт.
Конвертация данных треков GPS GPX в формат Google KML позволяет мгновенно отображать сырые журналы наружного отслеживания внутри Google Earth и пользовательских веб-приложений маппинга.
Конвертация географической разметки Google KML в стандарт GPS Track GPX стандартизирует проприетарные картографические функции в универсальные путевые точки и данные треков.