Google KML (.kml)
OGC มาตรฐานKeyhole Markup Language (KML) คือมาตรฐาน XML แบบเปิดสำหรับการแสดงคำอธิบายประกอบทางภูมิศาสตร์และการแสดงภาพ ซึ่งเดิมพัฒนาขึ้นสำหรับ Keyhole Earth Viewer (Google Earth) และสร้างมาตรฐานโดย Open Geospatial Consortium (OGC)
แปลง GEOJSON เป็น KML
ตัวแปลงจาก GEOJSON เป็น KML ฟรีในเบราว์เซอร์ แปลงไฟล์ได้ทันทีบนอุปกรณ์ของคุณ
ตรวจสอบและดู Metadata
ระบบปฏิบัติการและเครื่องมือวิเคราะห์ไฟล์จะระบุไฟล์ KML โดยการตรวจสอบลำดับไบต์ไบนารีส่วนต้น:
ลายเซ็นส่วนหัวในระดับไบต์ (Magic Bytes)
ระบบปฏิบัติการและเครื่องมือวิเคราะห์ไฟล์จะระบุไฟล์ KML โดยการตรวจสอบลำดับไบต์ไบนารีส่วนต้น:
ลายเซ็น HEX (OFFSET 0):
3C 6B 6D 6Cการแสดงผลรูปแบบ ASCII: <kml
มาตรฐาน: OGC KML 2.3 Standard
ข้อมูลจำเพาะทางเทคนิค
| สถาปัตยกรรมคอนเทนเนอร์ | XML-based geographic visualization grammar defining Placemarks, GroundOverlays, 3D Models, and Camera perspectives |
| การบีบอัด | Uncompressed XML text (compressed with ZIP as .kmz files) |
| การจัดลำดับไบต์ (Byte Endianness) | UTF-8 / Unicode text stream |
| พื้นที่สี | AABBGGRR hexadecimal color strings |
| ช่องสัญญาณและโครงสร้าง | Placemarks, paths, polygons, 3D building models, photo overlays, and tour camera paths |
| ขนาดสูงสุด | WGS 84 coordinates: Longitude, Latitude, Altitude (in meters above sea level) |
| ความโปร่งใส | Alpha transparency supported in AABBGGRR color strings and PNG overlays |
| การสตรีมและแบบโปรเกรสซีฟ | NetworkLinks support dynamic streaming updates from remote geospatial servers |
ตารางเปรียบเทียบทางเทคนิค: KML กับคู่แข่ง
| คุณลักษณะทางเทคนิค | KML (ปัจจุบัน) | GEOJSON | GPX | KMZ |
|---|---|---|---|---|
| กล้อง 3 มิติและการทัวร์ | เอียงกล้อง ทิศทาง และทัวร์บินผ่านเต็มรูปแบบ | ไม่มี (คุณสมบัติเรขาคณิตแบนราบ) | การติดตามระดับความสูง | เอียงกล้องและทัวร์บินผ่านเต็มรูปแบบ |
| รูปแบบการแพ็กเกจ | เอกสาร XML แบบเพลนเท็กซ์ | เอกสาร JSON แบบเพลนเท็กซ์ | เอกสาร XML แบบเพลนเท็กซ์ | ไฟล์เก็บถาวร ZIP ที่มี doc.kml |
| รูปแบบสี | AABBGGRR (อัลฟา-น้ำเงิน-เขียว-แดง) | มาตรฐาน CSS / Hex | ไม่มี | AABBGGRR |
| ปลายทางหลัก | Google Earth และ 3D GIS | เว็บแมป (Mapbox, Leaflet) | การติดตามการออกกำลังกายด้วย Garmin และ GPS | ไฟล์เก็บถาวร Google Earth แบบสแตนด์อโลน |
รูปแบบความเสียหายทั่วไปและคู่มือการกู้คืน Hex
ข้อผิดพลาด Google Earth: 'Parse error at line X: mismatched tag'.
สาเหตุหลัก: แท็ก XML ที่ไม่ได้ปิดหรือเครื่องหมายแอมเพอร์แซนด์ที่ไม่ได้หลีกเลี่ยงใน HTML คำอธิบายบอลลูน
การกู้คืน: ซ่อมแซมไวยากรณ์ XML และครอบคำอธิบายด้วย <![CDATA[...]]> โดยใช้ File2File KML Repair
การวิเคราะห์ความปลอดภัยและเวกเตอร์การโจมตีตัวแยกวิเคราะห์
ไฟล์ KML รองรับ NetworkLinks และบอลลูนคำอธิบาย HTML ซึ่งสามารถทริกเกอร์ XXE, SSRF หรือ Cross-Site Scripting (XSS) ได้
เวกเตอร์การโจมตีที่ทราบ
- Server-Side Request Forgery (SSRF) ผ่านแท็ก <NetworkLink> ที่เป็นอันตรายซึ่งสำรวจปลายทางอินทราเน็ตภายใน
- การฉีด XSS ผ่าน HTML ที่ไม่ได้ฆ่าเชื้อภายในแท็ก <description> ที่ดำเนินการในบอลลูน Earth บนเดสก์ท็อปหรือเว็บ
- XML External Entity (XXE) injection ระหว่างการประมวลผล KML อัตโนมัติ
แนวทางปฏิบัติที่ดีที่สุดในการป้องกัน:
ประวัติความเป็นมาและเหตุการณ์สำคัญ
ข้อได้เปรียบและจุดเด่นสำคัญ
- การแสดงภาพโลก 3 มิติที่สมบูรณ์: กำหนดไม่เพียงแค่จุด แต่ยังรวมถึงมุมกล้อง 3 มิติ ทิศทาง ความลาดเอียง ความสูง และทัวร์บินผ่าน
- รองรับแบบเนทีฟโดย Google Earth, Google Maps, ArcGIS และซอฟต์แวร์ GIS บนเดสก์ท็อปมืออาชีพทั้งหมด
- รองรับ NetworkLinks ช่วยให้ Google Earth สามารถสตรีมสภาพอากาศสด การติดตามเที่ยวบิน และการอัปเดตแผ่นดินไหวแบบไดนามิกได้
ข้อจำกัดทางเทคนิคและข้อควรพิจารณา
- ไวยากรณ์ XML ที่ยาวทำให้ขนาดไฟล์ใหญ่กว่ารูปแบบที่กะทัดรัดอย่าง GeoJSON
- สีใช้ลำดับเลขฐานสิบหก AABBGGRR (Alpha-Blue-Green-Red) ที่ไม่เป็นไปตามมาตรฐาน RGBA ทั่วไป
- ฟีเจอร์ 3 มิติที่ซับซ้อน (ทัวร์, โมเดล) แทบจะไม่ได้รับการรองรับบนแพลตฟอร์มการทำแผนที่เว็บที่มีน้ำหนักเบา
เกร็ดความรู้ทางเทคนิคที่น่าสนใจ
- Keyhole Inc. ตั้งชื่อตามดาวเทียมสอดแนมประวัติศาสตร์ KH (Keyhole) ที่สหรัฐอเมริกาปล่อยขึ้นสู่อวกาศในช่วงสงครามเย็น
- ใน KML ค่าสีจะถูกเขียนกลับด้านเป็น AABBGGRR: สองตัวอักษรแรกคือ Alpha ตามด้วย Blue, Green และ Red ตามลำดับ
- ไฟล์ '.kmz' เป็นเพียงไฟล์เก็บถาวร .zip มาตรฐานที่มีไฟล์ 'doc.kml' เดียวและภาพฝังตัวหรือโมเดล 3 มิติใดๆ
คำถามทางเทคนิคที่พบบ่อย
ความแตกต่างระหว่าง KML และ KMZ คืออะไร
KML เป็นไฟล์ข้อความเพลนเท็กซ์ (Plain text) XML ส่วน KMZ เป็นไฟล์ ZIP ที่ถูกบีบอัดซึ่งมีไฟล์ KML พร้อมกับไอคอนแผนที่ เท็กซ์เจอร์ หรือภาพซ้อนทับ 3 มิติที่กำหนดเอง
ฉันจะแปลง KML เป็น GeoJSON ได้อย่างไร
คุณสามารถแปลงไฟล์ Google Earth KML เป็น GeoJSON ที่สะอาดสำหรับการทำแผนที่เว็บได้ด้วยคลิกเดียวโดยใช้ File2File.app บนเบราว์เซอร์ของคุณ
ฉันสามารถเปิดไฟล์ KML ใน Google Maps ได้หรือไม่
ได้! ใน Google Maps ให้ไปที่ 'บันทึกแล้ว' (Saved) -> 'แผนที่' (Maps) -> 'สร้างแผนที่' (Create Map - Google My Maps) แล้วคลิก 'นำเข้า' (Import) เพื่ออัปโหลดไฟล์ KML ของคุณ
คู่การแปลงไฟล์ KML ที่เกี่ยวข้อง
การแปลงข้อมูลเวกเตอร์ GeoJSON เป็น Google KML จะเปลี่ยนพิกัดการทำแผนที่เว็บที่มีน้ำหนักเบาให้เป็นโครงสร้าง XML ที่สมบูรณ์ซึ่งปรับแต่งสำหรับ Google Earth
การแปลงไฟล์ Google KML เป็น GeoJSON จะเปลี่ยนข้อมูลภูมิศาสตร์แบบ XML ที่มีโครงสร้างลำดับชั้น ให้เป็นข้อมูลเวกเตอร์ JavaScript Object Notation น้ำหนักเบา สำหรับแผนที่เว็บสมัยใหม่
การแปลงข้อมูล GPS Track GPX เป็นรูปแบบ Google KML ช่วยให้คุณแสดงบันทึกการติดตามกลางแจ้งดิบภายใน Google Earth และแอปพลิเคชันทำแผนที่เว็บแบบกำหนดเองได้ทันที
การแปลงมาร์กอัปทางภูมิศาสตร์ของ Google KML เป็นมาตรฐาน GPS Track GPX จะทำให้ฟีเจอร์การทำแผนที่ที่เป็นกรรมสิทธิ์กลายเป็นข้อมูลจุดอ้างอิงและแทร็กสากล