GeoJSON (.geojson)

IETF Szabvány

A GeoJSON elterjedt a webes térképeken, de a támogatás változó. A GitHub csak korlátozásokkal jelenít meg fájlokat; az RFC 7946 a hosszúságot teszi előre.

GEOJSON konvertálása erre: KML

Ingyenes, böngészőben használható GEOJSON-konverter KML formátumba. A fájlokat azonnal konvertálhatja az eszközén.

Vizsgálat és metaadatok

Az operációs rendszerek és a fájlelemzők a kezdő bináris bájtsorozat vizsgálatával azonosítják a(z) GeoJSON fájlokat:

Válasszon ki vagy húzzon ide fájlokat

Privát - a fájlok soha nem hagyják el az eszközét

vagy beillesztés Ctrl+V
Adatvédelmi garancia hálózati adatátvitel nélkül: 0 bájt került fel külső szerverekre. Minden feldolgozás helyben, a böngésző elkülönített környezetében történt.

Bájtszintű fejlécaláírás (fájlazonosító bájtok)

Az operációs rendszerek és a fájlelemzők a kezdő bináris bájtsorozat vizsgálatával azonosítják a(z) GeoJSON fájlokat:

HEX ALÁÍRÁS (ELTOLÁS 0):

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

ASCII ÁBRÁZOLÁS: {\n "type": "Feature

Szabványosítás: IETF RFC 7946

Műszaki specifikációk

Konténer architektúraAz RFC 7946-nak megfelelő JSON-dokumentum, amely földrajzi objektumokat (Feature), objektumgyűjteményeket (FeatureCollection) és geometriákat (Geometry) ír le.
TömörítésTömörítetlen szöveg, amely HTTP-n keresztül Gzip vagy Brotli segítségével könnyen tömöríthető.
BájtsorrendUTF-8 szöveges adatfolyam.
SzínterekNem alkalmazható (földrajzi adatok).
Csatornák és struktúraPontok (Point), többpontos alakzatok (MultiPoint), vonalak (LineString), több részből álló vonalak (MultiLineString), sokszögek (Polygon), több részből álló sokszögek (MultiPolygon), geometriagyűjtemények (GeometryCollection) és egyéni tulajdonságok.
Max. méretekA World Geodetic System 1984 (WGS 84) koordinátarendszere: hosszúság (-180 és +180 között), szélesség (-90 és +90 között).
ÁtlátszóságNone
Streaming és progresszívA soronként tagolt GeoJSON (GeoJSONL / GeoJSONSeq) több millió objektum folyamatos adatfolyamos feldolgozását teszi lehetővé.

Műszaki összehasonlító mátrix: GeoJSON vs. versenytársak

Technikai attribútumGeoJSON (Jelenlegi)KMLGPXSHP
Webes térképészeti elterjedtségSzéles körben használják webes térképezéshez; az alkalmazások támogatása eltérő.A Google Earth alapértelmezettjeGPS eszközök és fittségi adatok alapértelmezettjeAsztali GIS örökölt szabvány
Koordináta-sorrend[Hosszúság, Szélesség] (X, Y)Hosszúság, Szélesség, MagasságSzélesség, HosszúságX, Y koordináták
Szintaxis stílusaTiszta JSON kulcs-érték párokTerjengős XML címkék (<kml>)Terjengős XML címkék (<gpx>)Többfájlos bináris (.shp, .shx, .dbf)
Tulajdonságok sémájaTetszőleges JSON tulajdonságobjektumExtendedData séma címkékRögzített GPX séma címkékdBase IV (.dbf) rögzített oszlopok

Gyakori sérülési módok és hexadecimális helyreállítási útmutató

A térképi pontok az Antarktisz közelében lévő óceánban jelennek meg a valódi helyük helyett.

Kiváltó ok: A szélességi és hosszúsági értékek véletlenül felcserélődtek a koordinátatömbben.

Helyreállítás: Cserélje fel a koordinátapozíciókat [hosszúság, szélesség] sorrendre a File2File.app GeoJSON-átalakítójával.

Biztonsági elemzés és elemző (parser) támadási vektorok

A GeoJSON-tulajdonságok tetszőleges felhasználói bemeneteket tartalmazhatnak, amelyeket a térképes felugró ablakokban való megjelenítés előtt meg kell tisztítani az XSS megelőzése érdekében.

Ismert támadási vektorok

  • Webhelyek közötti parancsfuttatás (XSS) a térképes buborékokban megjelenített GeoJSON-objektumok escape-elés nélküli HTML-t tartalmazó tulajdonságain keresztül.
  • Szolgáltatásmegtagadás (DoS) mélyen beágyazott GeometryCollection-ök vagy millió csúcspontú poligonok révén.
  • Szerveroldali kéréshamisítás (SSRF) távoli GeoJSON-objektumok betöltésével.

Ajánlott védekezési módszerek: A térképes felugró ablakokba illesztés előtt minden tulajdonságszöveget meg kell tisztítani a DOMPurify segítségével.

Történeti háttér és mérföldkövek

2016Az IETF az RFC 7946 szabványban hivatalosan szabványosítja a GeoJSON formátumot, amely a WGS 84 koordináta-rendszer használatát írja elő.
2014A GeoJSON elterjedt a webes térképeken, de a támogatás változó. A GitHub csak korlátozásokkal jelenít meg fájlokat; az RFC 7946 a hosszúságot teszi előre.
2008Howard Butler, Sean Gillies és a nyílt forráskódú GIS-közösség közzéteszi a kezdeti GeoJSON 1.0-specifikációt.

Főbb előnyök

  • Natív webes szabvány: a böngésző térképészeti könyvtáraiban (Mapbox GL JS, Leaflet) közvetlenül JavaScript-objektumként használható.
  • Az emberi szemmel is olvasható JSON-struktúra lehetővé teszi a könnyű programozott létrehozást, szűrést és hibakeresést.
  • Tetszőleges tulajdonságséma: bármilyen egyedi metaadat (népesség, név, sebesség, bevétel) közvetlenül csatolható a geometriai alakzatokhoz.

Technikai korlátok és hátrányok

  • Szöveges terjengősség: a lebegőpontos koordinátákat ismétlődő ASCII számjegyekként tárolja, ami nagyobb fájlméreteket eredményez, mint a bináris Shapefile-ok vagy FlatGeobuf-ok.
  • Az RFC 7946 szigorúan előírja a [hosszúság, szélesség] sorrendet, ami gyakran összezavarja a „szélesség/hosszúság” sorrendhez szokott fejlesztőket.
  • A millió csúcsponttal rendelkező nagy poligonok a webböngésző DOM renderelésének lassulását okozhatják.

Érdekes technikai tudnivalók

  • A hivatalos GeoJSON-szabvány a koordinátákat [hosszúság, szélesség] (derékszögű X, Y sorrendben) adja meg, ami pontosan az ellentéte a megszokott sorrendnek: „szélesség, hosszúság”.
  • A GeoJSON elterjedt a webes térképeken, de a támogatás változó. A GitHub csak korlátozásokkal jelenít meg fájlokat; az RFC 7946 a hosszúságot teszi előre.
  • Az RFC 7946 előírja, hogy a poligonok határgyűrűinek követniük kell a 'jobbkéz-szabályt': a külső gyűrűknek az óramutató járásával ellentétes irányban kell futniuk.

Gyakran Ismételt Műszaki Kérdések

Miért van az, hogy a GeoJSON-koordinátáim [hosszúság, szélesség] sorrendben vannak a [szélesség, hosszúság] helyett?

A GeoJSON elterjedt a webes térképeken, de a támogatás változó. A GitHub csak korlátozásokkal jelenít meg fájlokat; az RFC 7946 a hosszúságot teszi előre.

Hogyan konvertálhatok KML-t vagy Shapefile-t GeoJSON-formátumba?

A Google Earth KML-fájljai és az Esri Shapefile-fájlok másodpercek alatt tiszta, webre kész GeoJSON-formátummá alakíthatók a File2File.app segítségével, közvetlenül a böngészőben.

Mi a különbség a GeoJSON és a Shapefile között?

A Shapefile-t továbbra is széles körben használják adatcserére, és a GIS-szoftverek támogatják, de a több fájlból álló szerkezet és az attribútumkorlátok miatt egyes munkafolyamatokhoz a GeoJSON vagy egy geoadatbázis megfelelőbb lehet.