GeoJSON (.geojson)
IETF मानकज्यographic जावास्क्रिप्ट ऑब्जेक्ट नोटेशन (GeoJSON) भौगोलिक डेटा संरचनाओं को एनकोड करने के लिए एक सार्वभौमिक, वेब-मूल मानक है, जिसका व्यापक रूप से आधुनिक वेब मैपिंग (Leaflet, Mapbox, OpenLayers) और GIS अनुप्रयोगों में उपयोग किया जाता है।
GEOJSON को KML में कन्वर्ट करें
मुफ्त इन-ब्राउज़र GEOJSON से KML कन्वर्टर। अपने डिवाइस पर तुरंत फ़ाइलें कन्वर्ट करें।
इंस्पेक्ट और मेटाडेटा
ऑपरेटिंग सिस्टम और फ़ाइल विश्लेषक शुरुआती बाइनरी बाइट अनुक्रम का निरीक्षण करके GeoJSON फ़ाइलों की पहचान करते हैं:
बाइट-स्तरीय हेडर हस्ताक्षर (मैजिक बाइट्स)
ऑपरेटिंग सिस्टम और फ़ाइल विश्लेषक शुरुआती बाइनरी बाइट अनुक्रम का निरीक्षण करके GeoJSON फ़ाइलों की पहचान करते हैं:
HEX हस्ताक्षर (ऑफ़सेट 0):
7B 0A 20 20 22 74 79 70 65 22 3A 20 22 46 65 61 74 75 72 65ASCII निरूपण: {\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) |
| पारदर्शिता (Transparency) | None |
| स्ट्रीमिंग और प्रोग्रेसिव | Line-delimited GeoJSON (GeoJSONL / GeoJSONSeq) enables continuous streaming of millions of features |
तकनीकी तुलना मैट्रिक्स: GeoJSON बनाम प्रतियोगी
| तकनीकी विशेषता | GeoJSON (वर्तमान) | KML | GPX | SHP |
|---|---|---|---|---|
| वेब मैपिंग अपनाना | 100% सार्वभौमिक वेब GIS डिफ़ॉल्ट | Google Earth डिफ़ॉल्ट | GPS डिवाइस और फिटनेस डिफ़ॉल्ट | डेस्कटॉप GIS लेगेसी मानक |
| कोऑर्डिनेट क्रम | [Longitude, Latitude] (X, Y) | Longitude, Latitude, Altitude | Latitude, Longitude | X, Y कोऑर्डिनेट्स |
| सिंटैक्स शैली | स्वच्छ JSON की-वैल्यू | वर्बोस XML टैग (<kml>) | वर्बोस XML टैग (<gpx>) | मल्टी-फ़ाइल बाइनरी (.shp, .shx, .dbf) |
| प्रॉपर्टीज स्कीमा | मनमाना JSON प्रॉपर्टीज ऑब्जेक्ट | ExtendedData स्कीमा टैग | निश्चित GPX स्कीमा टैग | dBase IV (.dbf) निश्चित कॉलम |
सामान्य करप्शन मोड और हेक्स रिकवरी गाइड
मानचित्र बिंदु अपने वास्तविक स्थान के बजाय अंटार्कटिका के पास महासागर में दिखाई देते हैं।
मूल कारण: कोऑर्डिनेट्स सरणी में अक्षांश (Latitude) और देशांतर (Longitude) मान गलती से अदला-बदली कर दिए गए थे।
रिकवरी: File2File GeoJSON कन्वर्टर का उपयोग करके कोऑर्डिनेट स्थितियों [lon, lat] की अदला-बदली करें।
सुरक्षा विश्लेषण और पार्सर अटैक वेक्टर्स
GeoJSON संपत्तियों में मनमाने उपयोगकर्ता इनपुट हो सकते हैं जिन्हें XSS को रोकने के लिए मैप पॉपअप में रेंडर करने से पहले सैनिटाइज़ किया जाना चाहिए।
ज्ञात अटैक वेक्टर्स
- मैप टूलटिप में प्रस्तुत GeoJSON फ़ीचर संपत्तियों में अनएस्केप किए गए HTML के माध्यम से क्रॉस-साइट स्क्रिप्टिंग (XSS)।
- गहरे नेस्टेड GeometryCollections या दस लाख-वर्टेक्स बहुभुज के माध्यम से सेवा से इनकार (Denial of service)।
- रिमोट GeoJSON फ़ीचर लोडिंग के माध्यम से सर्वर-साइड अनुरोध जालसाजी (SSRF)।
सुरक्षात्मक सर्वोत्तम प्रथाएँ:
ऐतिहासिक मूल और मील के पत्थर
मुख्य लाभ और खूबियाँ
- मूल वेब मानक: ब्राउज़र मैपिंग लाइब्रेरी (Mapbox GL JS, Leaflet) में सीधे जावास्क्रिप्ट ऑब्जेक्ट्स में मैप करता है।
- मानव-पठनीय JSON संरचना प्रोग्रामेटिक निर्माण, फ़िल्टरिंग और डिबगिंग को आसान बनाती है।
- मनमाना संपत्ति स्कीमा: ज्यामितीय आकृतियों के सीधे किसी भी कस्टम मेटाडेटा (जनसंख्या, नाम, गति, राजस्व) को संलग्न करें।
तकनीकी सीमाएँ और कमियाँ
- पाठ वर्बोसिटी: फ़्लोटिंग-पॉइंट कोऑर्डिनेट्स को दोहराए गए ASCII अंकों के रूप में संग्रहीत करता है, जिससे बाइनरी शेपफ़ाइल्स या फ़्लैटजीबफ़ की तुलना में बड़े फ़ाइल आकार होते हैं।
- RFC 7946 कड़ाई से [Longitude, Latitude] क्रम को अनिवार्य करता है, जो अक्सर 'Lat/Long' के आदी डेवलपर्स को भ्रमित करता है।
- लाखों वर्टेक्स वाले बड़े बहुभुज (polygons) वेब ब्राउज़र DOM रेंडरिंग को धीमा कर सकते हैं।
रोचक तकनीकी जानकारी
- आधिकारिक GeoJSON मानक कोऑर्डिनेट्स को [Longitude, Latitude] (X, Y कार्टेशियन क्रम) के रूप में आदेश देता है, जो लोगों के बोलने के तरीके ('Latitude, Longitude') के बिल्कुल विपरीत है।
- यदि आप GitHub पर कोई .geojson फ़ाइल कमिट करते हैं, तो GitHub स्वचालित रूप से इसे एक इंटरैक्टिव, क्लिक करने योग्य मानचित्र के रूप में प्रस्तुत करता है।
- RFC 7946 अनिवार्य करता है कि बहुभुज सीमा वलयों को 'दाहिने हाथ के नियम' (right-hand rule) का पालन करना चाहिए: बाहरी वलय वामावर्त (counter-clockwise) में मुड़े होने चाहिए।
अक्सर पूछे جانے वाले तकनीकी प्रश्न
मेरे GeoJSON निर्देशांक [latitude, longitude] के बजाय [longitude, latitude] के रूप में क्यों क्रमबद्ध हैं?
क्योंकि गणित और कंप्यूटर ग्राफिक्स में, निर्देशांक हमेशा (X, Y) के रूप में निर्दिष्ट किए जाते हैं। देशांतर (Longitude) क्षैतिज X-अक्ष का प्रतिनिधित्व करता है, और अक्षांश (Latitude) ऊर्ध्वाधर Y-अक्ष का प्रतिनिधित्व करता है।
मैं KML या Shapefile को GeoJSON में कैसे बदल सकता हूँ?
आप सीधे अपने ब्राउज़र में File2File.app का उपयोग करके सेकंडों में Google Earth KML फ़ाइलों या Esri Shapefiles को साफ, वेब-तैयार GeoJSON में बदल सकते हैं।
GeoJSON और Shapefile में क्या अंतर है?
Shapefile 1990 के दशक का एक पुराना बहु-फ़ाइल बाइनरी प्रारूप है (.shp, .shx, .dbf)। GeoJSON साफ JSON में लिखा गया एक आधुनिक, एकल-फ़ाइल खुला वेब प्रारूप है।
संबंधित GeoJSON रूपांतरण जोड़े
जियोJSON वैक्टर को गूगल KML में बदलना हल्के वजन वाले JSON कोऑर्डिनेट ऐरे को गूगल अर्थ और गूगल मैप्स के लिए अनुकूलित संरचित XML दस्तावेजों में अनुवादित करता है।
Google KML फ़ाइलों को GeoJSON में बदलने से पदानुक्रमित XML भौगोलिक डेटा आधुनिक वेब मैप्स के लिए हल्के वेक्टर JavaScript Object Notation में बदल जाता है।
जियोजेसन वेक्टर डेटा को जीपीएक्स में बदलने से मानक भौगोलिक जेसन ऑब्जेक्ट्स भौतिक नेविगेशन उपकरणों के लिए अनुकूलित एक्सएमएल-आधारित प्रारूप में बदल जाते हैं।