জিওজেসন (.geojson)

IETF স্ট্যান্ডার্ড

জিওগ্রাফিক জাভাস্ক্রিপ্ট অবজেক্ট নোটেশন (GeoJSON) হলো ভৌগোলিক ডেটা স্ট্রাকচার এনকোড করার জন্য সার্বজনীন, ওয়েব-নেটিভ স্ট্যান্ডার্ড, যা আধুনিক ওয়েব ম্যাপিং (Leaflet, Mapbox, OpenLayers) এবং জিআইএস অ্যাপ্লিকেশনগুলোতে ব্যাপকভাবে ব্যবহৃত হয়।

GEOJSON থেকে KML কনভার্ট করুন

বিনামূল্যে ইন-ব্রাউজার GEOJSON থেকে KML কনভার্টার। আপনার ডিভাইসে তাত্ক্ষণিকভাবে ফাইল কনভার্ট করুন।

ইনস্পেক্ট ও মেটাডেটা

অপারেটিং সিস্টেম এবং ফাইল অ্যানালাইজারগুলো শুরুর বাইনারি বাইট সিকোয়েন্স পরীক্ষা করে GeoJSON ফাইল শনাক্ত করে:

এখানে ফাইল নির্বাচন করুন বা ড্রপ করুন

১০০% প্রাইভেট ব্রাউজার-মধ্যস্থ কনভার্শন - ফাইল কখনো আপনার ডিভাইস ছেড়ে যায় না

অথবা পেস্ট করুন Ctrl+V
জিরো-নেটওয়ার্ক-ট্রান্সমিশন প্রাইভেসি গ্যারান্টি: বাহ্যিক সার্ভারে ০ বাইট আপলোড করা হয়েছে। সমস্ত প্রক্রিয়াকরণ আপনার ব্রাউজার স্যান্ডবক্সে স্থানীয়ভাবে ঘটেছে।

বাইট-লেভেল হেডার সিগনেচার (ম্যাজিক বাইটস)

অপারেটিং সিস্টেম এবং ফাইল অ্যানালাইজারগুলো শুরুর বাইনারি বাইট সিকোয়েন্স পরীক্ষা করে GeoJSON ফাইল শনাক্ত করে:

হেক্স সিগনেচার (অফসেট 0):

7B 0A 20 20 22 74 79 70 65 22 3A 20 22 46 65 61 74 75 72 65

ASCII রিপ্রেজেন্টেশন: {\n "type": "Feature

স্ট্যান্ডার্ডাইজেশন: IETF RFC 7946

প্রযুক্তিগত বৈশিষ্ট্য

কন্টেইনার আর্কিটেকচারJSON document adhering to RFC 7946 representing geographic Features, FeatureCollections, and Geometries
কম্প্রেশনUncompressed text (readily compressed over HTTP via Gzip or Brotli)
বাইট এন্ডিয়াননেসUTF-8 text stream
কালার স্পেসN/A (Geographic Data)
চ্যানেল ও কাঠামোPoints, MultiPoints, LineStrings, MultiLineStrings, Polygons, MultiPolygons, GeometryCollections, and custom properties
সর্বোচ্চ মাত্রাWorld Geodetic System 1984 (WGS 84) coordinate space: Longitude (-180 to +180), Latitude (-90 to +90)
স্বচ্ছতাNone
স্ট্রিমিং ও প্রোগ্রেসিভLine-delimited GeoJSON (GeoJSONL / GeoJSONSeq) enables continuous streaming of millions of features

টেকনিক্যাল তুলনা ম্যাট্রিক্স: GeoJSON বনাম প্রতিযোগীগণ

প্রযুক্তিগত বৈশিষ্ট্যGeoJSON (বর্তমান)KMLGPXSHP
ওয়েব ম্যাপিং অ্যাডপশন১০০% সার্বজনীন ওয়েব জিআইএস ডিফল্টগুগল আর্থ ডিফল্টজিপিএস ডিভাইস ও ফিটনেস ডিফল্টডেস্কটপ জিআইএস লিগ্যাসি স্ট্যান্ডার্ড
কোঅর্ডিনেট অর্ডার[Longitude, Latitude] (X, Y)Longitude, Latitude, AltitudeLatitude, LongitudeX, Y কোঅর্ডিনেট
সিনট্যাক্স স্টাইলক্লিন JSON কি-ভ্যালুভার্বোস XML ট্যাগ (<kml>)ভার্বোস XML ট্যাগ (<gpx>)মাল্টি-ফাইল বাইনারি (.shp, .shx, .dbf)
প্রপার্টিজ স্কিমাইচ্ছামাফিক JSON প্রপার্টিজ অবজেক্টExtendedData স্কিমা ট্যাগনির্দিষ্ট GPX স্কিমা ট্যাগdBase IV (.dbf) নির্দিষ্ট কলাম

সাধারণ করাপশন মোড এবং হেক্স রিকভারি গাইড

ম্যাপ পয়েন্টগুলোর আসল অবস্থানের পরিবর্তে অ্যান্টার্কটিকার কাছাকাছি সাগরে প্রদর্শিত হয়।

মূল কারণ: কোঅর্ডিনেট অ্যারেতে ল্যাটিটিউড এবং লংটিউড ভ্যালু ভুলবশত অদলবদল হয়ে গেছে।

পুনরুদ্ধার: File2File GeoJSON কনভার্টার ব্যবহার করে কোঅর্ডিনেট পজিশন [lon, lat] অদলবদল করুন।

নিরাপত্তা বিশ্লেষণ ও পার্সার অ্যাটাক ভেক্টর

GeoJSON প্রপার্টিগুলোতে ইচ্ছামাফিক ইউজার ইনপুট থাকতে পারে যা XSS প্রতিরোধ করতে ম্যাপ পপআপে রেন্ডার করার আগে স্যানিটাইজ করতে হবে।

পরিচিত অ্যাটাক ভেক্টর

  • ম্যাপ টুলটিপ-এ রেন্ডার করা GeoJSON ফিচারের প্রপার্টিতে আনস্কেপড HTML-এর মাধ্যমে ক্রস-সাইট স্ক্রিপ্টিং (XSS)।
  • অত্যন্ত নেস্টেড জিওমেট্রি কালেকশন বা লক্ষ লক্ষ ভার্টেক্স বিশিষ্ট পলিগনের মাধ্যমে ডিনায়েল অফ সার্ভিস।
  • রিমোট GeoJSON ফিচার লোডিংয়ের মাধ্যমে সার্ভার-সাইড রিকোয়েস্ট ফোর্জারি।

প্রতিরক্ষামূলক সেরা অনুশীলন:

ঐতিহাসিক উৎপত্তি ও মাইলফলক

2016আইইটিএফ (IETF) আনুষ্ঠানিকভাবে জিওআইএস ফরম্যাটকে RFC 7946 হিসেবে স্ট্যান্ডার্ড করে এবং WGS 84 কোঅর্ডিনেট রেফারেন্স সিস্টেম বাধ্যতামূলক করে।
2014গিটহ্যাব (GitHub) সমস্ত .geojson ফাইলের জন্য নেটিভ ইন্টারেক্টিভ ভিজ্যুয়াল ম্যাপ রেন্ডারিং প্রবর্তন করে।
2008হোয়ার্ড বাটলার, শান গিলিস এবং ওপেন-সোর্স জিআইএস সম্প্রদায় প্রাথমিক GeoJSON 1.0 স্পেসিফিকেশন প্রকাশ করে।

প্রধান সুবিধাসমূহ ও গুণাবলী

  • নেটিভ ওয়েব স্ট্যান্ডার্ড: ব্রাউজার ম্যাপিং লাইব্রেরিতে (Mapbox GL JS, Leaflet) সরাসরি জাভাস্ক্রিপ্ট অবজেক্টে ম্যাপ করে।
  • মানুষের পড়ার উপযোগী JSON স্ট্রাকচার সহজে প্রোগ্রাম্যাটিক তৈরি, ফিল্টারিং এবং ডিবাগিংয়ের সুবিধা দেয়।
  • ইচ্ছামাফিক প্রপার্টি স্কিমা: যেকোনো কাস্টম মেটাডেটা (জনসংখ্যা, নাম, গতি, রাজস্ব) সরাসরি জ্যামিতিক আকারের সাথে যুক্ত করা যায়।

কারিগরি সীমাবদ্ধতা ও অসুবিধা

  • টেক্সট ভার্বোসিটি: পুনরাবৃত্ত ASCII ডিজিট হিসেবে ফ্লোটিং-পয়েন্ট কোঅর্ডিনেট সংরক্ষণ করে, যার ফলে বাইনারি শেপফাইল বা ফ্ল্যাটজিবাফের চেয়ে ফাইলের আকার বড় হয়।
  • RFC 7946 কঠোরভাবে [Longitude, Latitude] ক্রম বাধ্যতামূলক করে, যা 'Lat/Long'-এ অভ্যস্ত ডেভেলপারদের প্রায়শই বিভ্রান্ত করে।
  • লক্ষ লক্ষ ভার্টেক্স সহ বড় পলিগন ওয়েব ব্রাউজার ডিওএম (DOM) রেন্ডারিং ধীর করে দিতে পারে।

আকর্ষণীয় কারিগরি তথ্য

  • অফিসিয়াল GeoJSON স্ট্যান্ডার্ড কোঅর্ডিনেটগুলোকে [Longitude, Latitude] (X, Y কার্টেসিয়ান ক্রম) হিসেবে সাজায়, যা মানুষ যেভাবে কথা বলে ('Latitude, Longitude') তার ঠিক বিপরীত।
  • আপনি যদি গিটহ্যাব-এ একটি .geojson ফাইল কমিট করেন, তবে গিটহ্যাব স্বয়ংক্রিয়ভাবে এটিকে একটি ইন্টারেক্টিভ, ক্লিকযোগ্য ম্যাপ হিসেবে রেন্ডার করে।
  • RFC 7946 বাধ্যতামূলক করে যে পলিগন বাউন্ডারি রিংগুলোকে 'ডান-হাতের নিয়ম' (right-hand rule) মেনে চলতে হবে: বাইরের রিংগুলো ঘড়ির কাঁটার বিপরীত দিকে ঘুরতে হবে।

সচরাচর জিজ্ঞাসಿತ টেকনিক্যাল প্রশ্নাবলি

আমার GeoJSON স্থানাঙ্কগুলো [latitude, longitude]-এর পরিবর্তে কেন [longitude, latitude] ক্রমানুসারে থাকে?

কারণ গণিত এবং কম্পিউটার গ্রাফিক্সে, স্থানাঙ্কগুলো সর্বদা (X, Y) হিসেবে নির্দিষ্ট করা হয়। দ্রাঘিমাংশ (Longitude) অনুভূমিক X-অক্ষ এবং অক্ষাংশ (Latitude) লম্বালম্বি Y-অক্ষকে নির্দেশ করে।

KML বা Shapefile-কে কীভাবে GeoJSON-এ রূপান্তর করব?

সরাসরি ব্রাউজারে File2File.app ব্যবহার করে মাত্র কয়েক সেকেন্ডের মধ্যে আপনি Google Earth KML ফাইল বা Esri Shapefile-কে ক্লিন, ওয়েব-প্রস্তুত GeoJSON-এ রূপান্তর করতে পারেন।

GeoJSON এবং Shapefile-এর মধ্যে পার্থক্য কী?

Shapefile হলো ১৯৯ এর দশকের একটি পুরনো মাল্টি-ফাইল বাইনারি ফরম্যাট (.shp, .shx, .dbf)। GeoJSON হলো ক্লিন JSON-এ লেখা একটি আধুনিক, একক ফাইলের ওপেন ওয়েব ফরম্যাট।