Google KML (.kml)
OGC Tiêu chuẩnNgôn ngữ đánh dấu Keyhole (KML) là tiêu chuẩn XML mở để biểu diễn chú thích và trực quan hóa địa lý, ban đầu được phát triển cho Keyhole Earth Viewer (Google Earth) và được tiêu chuẩn hóa bởi Open Geospatial Consortium (OGC).
Chuyển đổi GEOJSON sang KML
Trình chuyển đổi từ GEOJSON sang KML miễn phí trên trình duyệt. Chuyển đổi tệp ngay lập tức trên thiết bị của bạn.
Kiểm tra & Siêu dữ liệu
Các hệ điều hành và trình phân tích tệp nhận dạng tệp KML bằng cách kiểm tra chuỗi byte nhị phân đầu tệp:
Chữ ký ở đầu tệp (mẫu byte nhận diện)
Các hệ điều hành và trình phân tích tệp nhận dạng tệp KML bằng cách kiểm tra chuỗi byte nhị phân đầu tệp:
CHỮ KÝ HEX (OFFSET 0):
3C 6B 6D 6CBIỂU DIỄN ASCII: <kml
Tiêu chuẩn hóa: OGC KML 2.3 Standard
Thông số kỹ thuật
| Kiến trúc Container | Ngôn ngữ đánh dấu trực quan hóa địa lý dựa trên XML, định nghĩa Điểm đánh dấu, Lớp phủ mặt đất, Mô hình 3D và phối cảnh máy ảnh |
| Nén | Văn bản XML không nén (nén bằng ZIP thành tệp .kmz) |
| Thứ tự byte | Luồng văn bản UTF-8 / Unicode |
| Không gian màu | Chuỗi màu thập lục phân AABBGGRR |
| Kênh & Cấu trúc | Điểm đánh dấu, đường đi, đa giác, mô hình tòa nhà 3D, lớp phủ ảnh và đường đi của máy ảnh trong tour |
| Kích thước tối đa | Tọa độ WGS 84: kinh độ, vĩ độ, độ cao (tính bằng mét so với mực nước biển) |
| Độ trong suốt | Hỗ trợ độ trong suốt alpha trong chuỗi màu AABBGGRR và lớp phủ PNG |
| Truyền phát & Tăng dần | NetworkLink hỗ trợ cập nhật truyền phát động từ máy chủ địa lý từ xa |
Ma trận so sánh kỹ thuật: KML so với các đối thủ
| Thuộc tính kỹ thuật | KML (Hiện tại) | GEOJSON | GPX | KMZ |
|---|---|---|---|---|
| Camera 3D & Tham quan | Đầy đủ độ nghiêng và hướng camera, cùng các tour bay qua địa điểm | Không có (thuộc tính hình học phẳng) | Theo dõi độ cao | Đầy đủ độ nghiêng camera và các tour bay qua địa điểm |
| Định dạng đóng gói | Tài liệu XML dạng văn bản thuần túy | Tài liệu JSON dạng văn bản thuần túy | Tài liệu XML dạng văn bản thuần túy | Lưu trữ ZIP chứa doc.kml |
| Định dạng màu sắc | AABBGGRR (Alpha-Xanh lam-Xanh lục-Đỏ) | Tiêu chuẩn CSS / Hex | Không có | AABBGGRR |
| Đích đến chính | Google Earth & GIS 3D | Bản đồ web (Mapbox, Leaflet) | Theo dõi thể dục Garmin & GPS | Lưu trữ độc lập Google Earth |
Các dạng hỏng thường gặp và hướng dẫn khôi phục bằng mã hex
Lỗi Google Earth: 'Lỗi phân tích cú pháp ở dòng X: thẻ không khớp'.
Nguyên nhân gốc rễ: Thẻ XML chưa đóng hoặc ký tự và (&) chưa được thoát trong HTML mô tả bong bóng.
Khắc phục: Sửa cú pháp XML và bọc mô tả trong <![CDATA[...]]> bằng công cụ Sửa KML của File2File.app.
Phân tích bảo mật và các đường tấn công nhằm vào bộ phân tích cú pháp
Các tệp KML hỗ trợ NetworkLinks và bong bóng mô tả HTML có thể kích hoạt XXE, SSRF hoặc Cross-Site Scripting (XSS).
Các véc-tơ tấn công đã biết
- Giả mạo yêu cầu phía máy chủ (SSRF) thông qua các thẻ <NetworkLink> độc hại thăm dò các điểm cuối trên mạng nội bộ.
- Tiêm XSS thông qua HTML không được làm sạch bên trong các thẻ <description> được thực thi trong các bong bóng Earth trên máy tính để bàn hoặc web.
- Tiêm thực thể bên ngoài XML (XXE) trong quá trình xử lý KML tự động.
Biện pháp phòng thủ tốt nhất: Tắt tính năng tìm nạp mạng bên ngoài và làm sạch nội dung HTML của bong bóng bằng DOMPurify.
Nguồn gốc lịch sử và các cột mốc
Ưu điểm & Lợi ích chính
- Trực quan hóa Trái Đất 3D phong phú: ngoài các điểm, định dạng còn xác định góc camera 3D, hướng, độ nghiêng, độ cao và các tour bay qua địa điểm.
- Khả năng hỗ trợ KML tùy thuộc vào ứng dụng; các tính năng được hỗ trợ khác nhau giữa công cụ GIS và bản đồ trên máy tính.
- Liên kết NetworkLink có thể lấy tài nguyên KML được liên kết; việc làm mới tùy thuộc vào cài đặt tài liệu và trình xem.
Hạn chế & Nhược điểm kỹ thuật
- Cú pháp XML dài dòng dẫn đến kích thước tệp lớn hơn so với các định dạng nhỏ gọn như GeoJSON.
- Màu sắc sử dụng thứ tự thập lục phân AABBGGRR phi truyền thống (Alpha-Xanh lam-Xanh lục-Đỏ) thay vì RGBA tiêu chuẩn.
- Các tính năng 3D phức tạp (Chuyến tham quan, Mô hình) hiếm khi được hỗ trợ trên các nền tảng bản đồ web nhẹ.
Thông tin kỹ thuật thú vị
- Keyhole Inc. được đặt theo tên của các vệ tinh gián điệp trinh sát KH (Keyhole) lịch sử do Hoa Kỳ phóng trong Chiến tranh Lạnh.
- Trong KML, các giá trị màu được viết ngược lại thành AABBGGRR: hai ký tự đầu tiên là Alpha, tiếp theo là Xanh lam, sau đó là Xanh lục, rồi đến Đỏ.
- Kho lưu trữ KMZ chứa ít nhất một tệp KML và có thể kèm các tệp hỗ trợ. doc.kml là tên thường dùng cho tệp chính, nhưng cũng được phép dùng tên khác.
Các câu hỏi kỹ thuật thường gặp
Sự khác biệt giữa KML và KMZ là gì?
KML là một tệp văn bản thuần túy XML. KMZ là một tệp ZIP đã nén chứa tệp KML bên cạnh các biểu tượng bản đồ tùy chỉnh, kết cấu hoặc hình ảnh lớp phủ 3D.
Làm cách nào để chuyển đổi KML sang GeoJSON?
Bạn có thể chuyển đổi tệp Google Earth KML thành GeoJSON sạch để lập bản đồ web chỉ với một cú nhấp chuột bằng File2File.app trực tiếp trên trình duyệt của bạn.
Tôi có thể mở tệp KML trong Google Maps không?
Có! Trong Google Maps, hãy chuyển đến 'Đã lưu' -> 'Bản đồ' -> 'Tạo bản đồ' (Google My Maps) và nhấp vào 'Nhập' để tải lên tệp KML của bạn.
Các cặp chuyển đổi KML liên quan
Chuyển đổi dữ liệu vectơ GeoJSON sang Google KML biến các mảng tọa độ JSON gọn nhẹ thành tài liệu XML có cấu trúc, phù hợp với Google Earth và Google Maps.
Việc chuyển đổi các tệp Google KML thành GeoJSON giúp biến đổi dữ liệu địa lý XML phân cấp thành định dạng vector JavaScript Object Notation gọn nhẹ phục vụ cho các bản đồ web hiện đại.
Việc chuyển đổi dữ liệu đường đi GPS GPX sang định dạng Google KML cho phép bạn hiển thị tức thì các nhật ký theo dõi hoạt động ngoài trời ngay trong Google Earth cùng các ứng dụng bản đồ web tùy chỉnh.
Chuyển dữ liệu đánh dấu địa lý Google KML sang Định dạng Trao đổi GPS (GPX), chuẩn hóa các tính năng bản đồ độc quyền thành dữ liệu điểm mốc và đường đi được hỗ trợ rộng rãi.