গুগল কেএমএল (.kml)
OGC স্ট্যান্ডার্ডকিহোল মার্কআপ ল্যাঙ্গুয়েজ (KML) হলো ভৌগোলিক অ্যানোটেশন এবং ভিজ্যুয়ালাইজেশন প্রকাশের জন্য ওপেন XML স্ট্যান্ডার্ড, যা মূলত কিহোল আর্থ ভিউয়ারের (গুগল আর্থ) জন্য তৈরি করা হয়েছিল এবং ওপেন জিওস্পেশিয়াল কনসোর্টিয়াম (OGC) দ্বারা স্ট্যান্ডার্ড করা হয়েছে।
GEOJSON থেকে KML-তে রূপান্তর করুন
বিনামূল্যের ব্রাউজারভিত্তিক GEOJSON-থেকে-KML রূপান্তরকারী। আপনার ডিভাইসেই ফাইল তাৎক্ষণিকভাবে রূপান্তর করুন।
ইনস্পেক্ট ও মেটাডেটা
অপারেটিং সিস্টেম এবং ফাইল অ্যানালাইজারগুলো শুরুর বাইনারি বাইট সিকোয়েন্স পরীক্ষা করে KML ফাইল শনাক্ত করে:
বাইট-লেভেল হেডার সিগনেচার (ম্যাজিক বাইটস)
অপারেটিং সিস্টেম এবং ফাইল অ্যানালাইজারগুলো শুরুর বাইনারি বাইট সিকোয়েন্স পরীক্ষা করে KML ফাইল শনাক্ত করে:
হেক্স সিগনেচার (অফসেট 0):
3C 6B 6D 6CASCII রিপ্রেজেন্টেশন: <kml
স্ট্যান্ডার্ডাইজেশন: OGC KML 2.3 Standard
প্রযুক্তিগত বৈশিষ্ট্য
| কন্টেইনার আর্কিটেকচার | XML-ভিত্তিক ভূ-স্থানিক ভিজ্যুয়ালাইজেশন ভাষা, যাতে Placemark, GroundOverlay, 3D Model ও Camera-র দৃষ্টিকোণ নির্ধারণ করা যায় |
| কম্প্রেশন | কম্প্রেশনবিহীন XML টেক্সট; .kmz ফাইল হিসেবে ZIP দিয়ে কম্প্রেস করা হয় |
| বাইট এন্ডিয়াননেস | UTF-8 / Unicode টেক্সট স্ট্রিম |
| কালার স্পেস | AABBGGRR হেক্সাডেসিমেল রঙের স্ট্রিং |
| চ্যানেল ও কাঠামো | Placemark, পথ, বহুভুজ, 3D ভবন মডেল, ছবির ওভারলে এবং ক্যামেরার ভ্রমণপথ |
| সর্বোচ্চ মাত্রা | WGS 84 স্থানাঙ্ক: দ্রাঘিমাংশ, অক্ষাংশ, উচ্চতা (সমুদ্রপৃষ্ঠ থেকে মিটারে) |
| স্বচ্ছতা | AABBGGRR রঙের স্ট্রিং ও PNG ওভারলেতে আলফা স্বচ্ছতা সমর্থিত |
| স্ট্রিমিং ও প্রোগ্রেসিভ | NetworkLinks দূরবর্তী ভূ-স্থানিক সার্ভার থেকে গতিশীল আপডেট স্ট্রিম করতে পারে |
টেকনিক্যাল তুলনা ম্যাট্রিক্স: KML বনাম প্রতিযোগীগণ
| প্রযুক্তিগত বৈশিষ্ট্য | KML (বর্তমান) | GEOJSON | GPX | KMZ |
|---|---|---|---|---|
| থ্রিডি ক্যামেরা ও ট্যুরিং | সম্পূর্ণ ক্যামেরা টিল্ট, হেডিং ও ফ্লাই-থ্রু ট্যুর | কিছুই না (ফ্ল্যাট জিওমেট্রি প্রপার্টি) | উচ্চতা এলিভেশন ট্র্যাকিং | সম্পূর্ণ ক্যামেরা টিল্ট ও ফ্লাই-থ্রু ট্যুর |
| প্যাকেজিং ফরম্যাট | প্লেইনটেক্সট XML ডকুমেন্ট | প্লেইনটেক্সট JSON ডকুমেন্ট | প্লেইনটেক্সট XML ডকুমেন্ট | ZIP আর্কাইভ যাতে doc.kml রয়েছে |
| কালার ফরম্যাট | এএবিবিজিজিআরআর (আলফা-নীল-সবুজ-লাল) | CSS / Hex স্ট্যান্ডার্ড | কিছুই না | AABBGGRR |
| প্রাথমিক গন্তব্য | গুগল আর্থ ও থ্রিডি জিআইএস | ওয়েব ম্যাপ (Mapbox, Leaflet) | গারমিন ও GPS ফিটনেস ট্র্যাকিং | গুগল আর্থ স্ট্যান্ডঅ্যালোন আর্কাইভ |
সাধারণ করাপশন মোড এবং হেক্স রিকভারি গাইড
গুগল আর্থ ত্রুটি: 'Parse error at line X: mismatched tag'।
মূল কারণ: বেলুন বিবরণ HTML-এ অনাবৃত XML ট্যাগ বা আনস্কেপড অ্যাম্পারস্যান্ড।
পুনরুদ্ধার: File2File.app KML রিপেয়ার ব্যবহার করে XML সিনট্যাক্স মেরামত করুন এবং বিবরণটি <![CDATA[...]]>-এ র্যাপ করুন।
নিরাপত্তা বিশ্লেষণ ও পার্সার অ্যাটাক ভেক্টর
KML ফাইলগুলো NetworkLinks এবং HTML ডেসক্রিপশন বেলুন সমর্থন করে যা XXE, SSRF বা ক্রস-সাইট স্ক্রিপ্টিং (XSS) ট্রিগার করতে পারে।
পরিচিত অ্যাটাক ভেক্টর
- ক্ষতিকারক <NetworkLink> ট্যাগের মাধ্যমে অভ্যন্তরীণ ইন্ট্রানেট এন্ডপয়েন্ট পোলিং করে সার্ভার-সাইড রিকোয়েস্ট ফোর্জারি (SSRF)।
- ডেস্কটপ বা ওয়েব আর্থ বেলুনে এক্সিকিউট হওয়া <description> ট্যাগের ভেতরের স্যানিটাইজ না করা HTML-এর মাধ্যমে XSS ইনজেকশন।
- স্বয়ংক্রিয় KML প্রসেসিংয়ের সময় XML এক্সটার্নাল এন্টিটি (XXE) ইনজেকশন।
প্রতিরক্ষামূলক সেরা অনুশীলন: বাহ্যিক নেটওয়ার্ক ফেচিং নিষ্ক্রিয় করুন এবং DOMPurify দিয়ে বেলুন HTML কন্টেন্ট স্যানিটাইজ করুন।
ঐতিহাসিক উৎপত্তি ও মাইলফলক
প্রধান সুবিধাসমূহ ও গুণাবলী
- সমৃদ্ধ থ্রিডি আর্থ ভিজ্যুয়ালাইজেশন: কেবল পয়েন্টই নয়, থ্রিডি ক্যামেরা কোণ, হেডিং, টিল্ট, উচ্চতা এবং ফ্লাই-থ্রু ট্যুর সংজ্ঞায়িত করে।
- KML সমর্থন অ্যাপ্লিকেশনের ওপর নির্ভর করে; ডেস্কটপ GIS ও মানচিত্র সরঞ্জামে সমর্থিত বৈশিষ্ট্য ভিন্ন হয়।
- NetworkLink লিঙ্কে সংযুক্ত KML রিসোর্স আনা যায়; রিফ্রেশের আচরণ নথির সেটিংস ও ভিউয়ারের ওপর নির্ভর করে।
কারিগরি সীমাবদ্ধতা ও অসুবিধা
- ভার্বোস XML সিনট্যাক্সের ফলে GeoJSON-এর মতো কমপ্যাক্ট ফরম্যাটের চেয়ে ফাইলের আকার বড় হয়।
- রংগুলো স্ট্যান্ডার্ড RGBA-এর পরিবর্তে অপ্রচলিত AABBGGRR হেক্সাডেসিমেল ক্রম (Alpha-Blue-Green-Red) ব্যবহার করে।
- জটিল থ্রিডি ফিচারগুলো (ট্যুর, মডেল) লাইটওয়েট ওয়েব ম্যাপিং প্ল্যাটফর্মে খুব কমই সমর্থিত।
আকর্ষণীয় কারিগরি তথ্য
- কিহোল ইনকর্পোরেটেডের নামকরণ করা হয়েছিল শীতল যুদ্ধের সময় মার্কিন যুক্তরাষ্ট্র কর্তৃক উৎক্ষেপিত ঐতিহাসিক KH (Keyhole) রিকন্যাসাঁস স্পাই স্যাটেলাইটের নামানুসারে।
- KML-এ, রঙের মানগুলো উল্টোভাবে AABBGGRR হিসেবে লেখা হয়: প্রথম দুটি ক্যারেক্টার Alpha, তারপর Blue, তারপর Green এবং তারপর Red।
- KMZ আর্কাইভে অন্তত একটি KML ফাইল থাকে এবং সহায়ক ফাইলও থাকতে পারে। প্রধান ফাইলের প্রচলিত নাম doc.kml, তবে অন্য নামও ব্যবহার করা যায়।
সচরাচর জিজ্ঞাসিত প্রযুক্তিগত প্রশ্নাবলি
KML এবং KMZ-এর মধ্যে পার্থক্য কী?
KML হলো একটি প্লেইন টেক্সট XML ফাইল। KMZ হলো একটি সংকুচিত ZIP ফাইল যাতে KML ফাইলের পাশাপাশি যেকোনো কাস্টম ম্যাপ আইকন, টেক্সচার বা থ্রিডি ওভারলে ছবি থাকে।
KML ফাইলকে কীভাবে GeoJSON-এ রূপান্তর করব?
সরাসরি ব্রাউজারে File2File.app ব্যবহার করে এক ক্লিকেই আপনি Google Earth KML ফাইলগুলোকে ওয়েব ম্যাপিংয়ের জন্য ক্লিন GeoJSON-এ রূপান্তর করতে পারেন।
আমি কি Google Maps-এ KML ফাইল খুলতে পারি?
হ্যাঁ! Google Maps-এ যান, 'Saved' -> 'Maps' -> 'Create Map' (Google My Maps)-এ যান এবং আপনার KML ফাইল আপলোড করতে 'Import'-এ ক্লিক করুন।
সম্পর্কিত KML কনভার্সন পেয়ার
GeoJSON ভেক্টরকে গুগল KML-এ রূপান্তর করার মাধ্যমে গুগল আর্থ এবং গুগল ম্যাপসের জন্য তৈরি কাঠামোগত এক্সএমএল নথিতে হালকা ওজনের জেএসওএন স্থানাঙ্ক অ্যারে অনুবাদ করা হয়।
গুগল KML ফাইলকে GeoJSON-এ রূপান্তর করলে স্তরবিন্যস্ত XML ভৌগোলিক ডেটা আধুনিক ওয়েব ম্যাপের জন্য হালকা ভেক্টর JavaScript Object Notation-এ পরিণত হয়।
GPS ট্র্যাক GPX ডেটাকে গুগল KML ফরম্যাটে রূপান্তর করলে কাঁচা আউটডোর ট্র্যাকিং লগ গুগল আর্থ ও কাস্টম ওয়েব ম্যাপিং অ্যাপ্লিকেশনে তাৎক্ষণিকভাবে দেখানো যায়।
গুগল KML ভৌগোলিক মার্কআপকে GPS ট্র্যাক GPX-এ রূপান্তর করার মাধ্যমে প্রোপারিটরি ম্যাপিং ফিচারগুলোকে ইউনিভার্সাল ওয়েপয়েন্ট এবং ট্র্যাক ডেটায় স্ট্যান্ডার্ডাইজ করা হয়।