Google KML (.kml)

OGC Стандарт

Keyhole Markup Language (KML): це відкритий стандарт XML для представлення географічних анотацій і візуалізації, спочатку розроблений для Keyhole Earth Viewer (Google Earth) та стандартизований Консорціумом відкритої геопросторової інформації (OGC).

Конвертувати з GEOJSON у KML

Безкоштовний конвертер з GEOJSON у KML у браузері. Миттєво конвертуйте файли на своєму пристрої.

Аналіз та метадані

Операційні системи та аналізатори файлів ідентифікують файли KML, перевіряючи початкову послідовність бінарних байтів:

Виберіть або перетягніть файли сюди

Приватно - файли ніколи не залишають ваш пристрій

або вставте Ctrl+V
Гарантія конфіденційності без передавання даних мережею: Жодного байта не передано на зовнішні сервери. Уся обробка відбувалася локально в ізольованому середовищі браузера.

Сигнатура заголовка на байтовому рівні (Magic Bytes)

Операційні системи та аналізатори файлів ідентифікують файли KML, перевіряючи початкову послідовність бінарних байтів:

ШІСТНАДЦЯТКОВА СИГНАТУРА (ЗСУВ 0):

3C 6B 6D 6C

ПОДАННЯ В ASCII: <kml

Стандартизація: OGC KML 2.3 Standard

Технічні характеристики

Архітектура контейнераМова географічної візуалізації на основі XML для опису міток місця (Placemarks), накладок на поверхню (GroundOverlays), 3D-моделей і ракурсів камери
СтисненняТекст XML без стиснення (стискається у ZIP-файли .kmz)
Порядок байтів (Endianness)Текстовий потік UTF-8 / Unicode
Колірні просториШістнадцяткові рядки кольорів у форматі AABBGGRR
Канали та структураМітки місця, шляхи, полігони, 3D-моделі будівель, накладки зображень і маршрути камер для турів
Максимальні розміриКоординати WGS 84: довгота, широта, висота над рівнем моря (у метрах)
ПрозорістьПрозорість альфа-каналу підтримується в рядках кольорів AABBGGRR і накладках PNG
Потокове та прогресивне завантаженняNetworkLinks підтримують динамічні потокові оновлення із зовнішніх геопросторових серверів

Технічна матриця порівняння: KML проти конкурентів

Технічний атрибутKML (Поточний)GEOJSONGPXKMZ
3D-камера та туриПовний нахил камери, курс та оглядові туриВідсутні (властивості плоскої геометрії)Відстеження висоти над рівнем моряПовний нахил камери та оглядові тури
Формат пакуванняДокумент XML у звичайному текстіДокумент JSON у звичайному текстіДокумент XML у звичайному текстіZIP-архів, що містить doc.kml
Формат кольоруAABBGGRR (Альфа-Синій-Зелений-Червоний)Стандарт CSS / HexВідсутнійAABBGGRR
Основне призначенняGoogle Earth та 3D-ГІСВебкарти (Mapbox, Leaflet)Garmin та фітнес-трекінг GPSАвтономний архів Google Earth

Типові режими пошкодження та посібник з відновлення в шістнадцятковому форматі

Помилка Google Earth: 'Помилка синтаксичного аналізу в рядку X: невідповідність тегу'.

Першопричина: Незакритий тег XML або неекранований амперсанд в HTML-описі спливаючої підказки.

Відновлення: Відновіть синтаксис XML та обгорніть опис у <![CDATA[...]]> за допомогою інструменту відновлення KML від File2File.app.

Аналіз безпеки та векторів атак на парсери

Файли KML підтримують NetworkLinks і HTML-описи у спливаючих підказках, які можуть призвести до вразливостей XXE, SSRF або міжсайтового скриптингу (XSS).

Відомі вектори атак

  • Підробка запитів на серверну сторону (SSRF) через шкідливі теги <NetworkLink>, що опитують внутрішні кінцеві точки інтранети.
  • XSS-ін’єкція через неочищений HTML у тегах <description>, який виконується у спливаючих підказках настільної або вебверсії Google Earth.
  • Ін'єкція зовнішніх сутностей XML (XXE) під час автоматизованої обробки KML.

Рекомендації щодо захисту: Вимикайте отримання даних із зовнішніх мереж і очищуйте HTML-вміст спливаючих підказок за допомогою DOMPurify.

Історичне походження та віхи

2008Організація відкритих геопросторових стандартів (OGC) приймає KML 2.2 як офіційний міжнародний геопросторовий стандарт.
2005Google купує компанію Keyhole Inc., перейменовуючи Keyhole Earth Viewer на Google Earth і роблячи KML загальнодоступним у всьому світі.
2001Компанія Keyhole Inc. створює KML для анотування тривимірних супутникових знімків.

Основні переваги

  • Насичена тривимірна візуалізація Землі: визначає не лише точки, а й 3D-кути камери, курс, нахил, висоту та оглядові тури (fly-through).
  • Підтримка KML залежить від застосунку; доступні функції відрізняються в настільних ГІС- і картографічних інструментах.
  • Посилання NetworkLink можуть отримувати пов’язані ресурси KML; оновлення залежить від налаштувань документа та засобу перегляду.

Технічні обмеження та недоліки

  • Багатослівний синтаксис XML призводить до більшого розміру файлів порівняно з компактними форматами, такими як GeoJSON.
  • Кольори використовують нетрадиційний шістнадцятковий порядок AABBGGRR (Альфа-Синій-Зелений-Червоний) замість стандартного RGBA.
  • Складні 3D-функції (тури, моделі) рідко підтримуються на легких вебкартографічних платформах.

Цікаві технічні факти

  • Компанія Keyhole Inc. була названа на честь історичних розвідувальних шпигунських супутників KH (Keyhole), запущених США під час Холодної війни.
  • У KML значення кольорів записуються у зворотному порядку у форматі AABBGGRR: перші два символи: це альфа, далі синій, зелений і червоний.
  • Архів KMZ містить принаймні один файл KML і може містити допоміжні файли. doc.kml : традиційна назва головного файла, але дозволені й інші назви.

Поширені технічні запитання

У чому різниця між KML та KMZ?

KML: це звичайний текстовий файл XML. KMZ: це заархівований файл ZIP, який містить файл KML разом із будь-якими власними іконками мапи, текстурами або зображеннями 3D-накладень.

Як конвертувати KML у GeoJSON?

Ви можете конвертувати файли Google Earth KML у чистий GeoJSON для вебкартографії в один клік за допомогою File2File.app безпосередньо у вашому браузері.

Чи можна відкрити файл KML у Google Картах?

Так! У Google Картах перейдіть до «Збережено» -> «Карти» -> «Створити карту» (Google Мої карти) і натисніть «Імпорт», щоб завантажити свій файл KML.