Google KML (.kml)
OGC СтандартKeyhole Markup Language (KML) е отворен XML стандарт за изразяване на географски анотации и визуализация, първоначално разработен за Keyhole Earth Viewer (Google Earth) и стандартизиран от Open Geospatial Consortium (OGC).
Конвертиране от GEOJSON към KML
Безплатен конвертор от GEOJSON към KML в браузъра. Конвертирайте файлове незабавно на вашето устройство.
Проверка и метаданни
Операционните системи и файловите анализатори идентифицират KML файлове чрез проверка на началната двоична байтова последователност:
Байтов подпис на заглавката (сигнатурни байтове)
Операционните системи и файловите анализатори идентифицират KML файлове чрез проверка на началната двоична байтова последователност:
HEX ПОДПИС (ОФСЕТ 0):
3C 6B 6D 6CASCII ПРЕДСТАВЯНЕ: <kml
Стандартизация: OGC KML 2.3 Standard
Технически спецификации
| Контейнерна архитектура | XML граматика за географска визуализация с дефиниции за Placemark, GroundOverlay, 3D модели и перспективи на камерата |
| Компресия | Некомпресиран XML текст (компресиран със ZIP във файлове .kmz) |
| Поредност на байтовете (Endianness) | Текстов поток UTF-8 / Unicode |
| Цветови пространства | Шестнадесетични цветови низове във формат AABBGGRR |
| Канали и структура | Placemark обекти, пътища, полигони, 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 |
Често срещани видове повреди и ръководство за възстановяване на шестнадесетични данни
Грешка в Google Earth: 'Грешка при обработката на ред X: несъответстващ таг'.
Първопричина: Незатворен XML таг или неекраниран амперсанд в HTML описанието на балона.
Възстановяване: Възстановете XML синтаксиса и опаковайте описанието в <![CDATA[...]]>, като използвате функцията за поправка на KML от File2File.app.
Анализ на сигурността и вектори на атака към парсера
KML файловете поддържат мрежови връзки (NetworkLinks) и HTML балони с описания, които могат да задействат XXE, SSRF или междусайтов скриптинг (XSS).
Известни вектори на атака
- Фалшифициране на заявки от страна на сървъра (SSRF) чрез злонамерени тагове <NetworkLink>, които отправят заявки към вътрешни интранет крайни адреси.
- XSS инжекция чрез непочистен HTML в таговете <description>, изпълняван в десктоп или уеб балони на Earth.
- Инжектиране на външни XML субекти (XXE) по време на автоматизирана обработка на KML.
Най-добри практики за защита: Деактивирайте извличането от външна мрежа и санирайте HTML съдържанието на балоните с DOMPurify.
Исторически произход и етапи
Основни предимства
- Богата 3D визуализация на Земята: описва не само точки, но и 3D ъгли на камерата, посока, наклон, надморска височина и обиколни маршрути.
- Поддръжката на 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 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 трекове GPX стандартизира собствените картни функции в универсални данни за точки по маршрута и трекове.