GeoJSON (.geojson)

IETF Štandard

Geographic JavaScript Object Notation (GeoJSON) je univerzálny webovo-natívny štandard na kódovanie štruktúr geografických údajov, ktorý sa široko používa v moderných webových mapách (Leaflet, Mapbox, OpenLayers) a GIS aplikáciách.

Konvertovať GEOJSON do KML

Bezplatný konvertor z GEOJSON do KML priamo v prehliadači. Konvertujte súbory okamžite vo svojom zariadení.

Preskúmať a metadáta

Operačné systémy a analyzátory súborov identifikujú súbory GeoJSON kontrolou počiatočnej binárnej bajtovej sekvencie:

Vyberte alebo presuňte súbory sem

100 % súkromná konverzia v prehliadači - súbory nikdy neopustia vaše zariadenie

alebo prilepiť Ctrl+V
Záruka súkromia s nulovým prenosom do siete: 0 bajtov odovzdaných na externé servery. Všetko spracovanie prebehlo lokálne v pieskovisku vášho prehliadača.

Podpis hlavičky na úrovni bajtov (Magic Bytes)

Operačné systémy a analyzátory súborov identifikujú súbory GeoJSON kontrolou počiatočnej binárnej bajtovej sekvencie:

HEXADECIMÁLNY PODPIS (OFFSET 0):

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

ASCII REPREZENTÁCIA: {\n "type": "Feature

Štandardizácia: IETF RFC 7946

Technické špecifikácie

Architektúra kontajneraJSON document adhering to RFC 7946 representing geographic Features, FeatureCollections, and Geometries
KompresiaUncompressed text (readily compressed over HTTP via Gzip or Brotli)
Poradie bajtov (Endianness)UTF-8 text stream
Farebné priestoryN/A (Geographic Data)
Kanály a štruktúraPoints, MultiPoints, LineStrings, MultiLineStrings, Polygons, MultiPolygons, GeometryCollections, and custom properties
Max. rozmeryWorld Geodetic System 1984 (WGS 84) coordinate space: Longitude (-180 to +180), Latitude (-90 to +90)
PriehľadnosťNone
Streamovanie a postupné načítavanieLine-delimited GeoJSON (GeoJSONL / GeoJSONSeq) enables continuous streaming of millions of features

Technická porovnávacia matica: GeoJSON vs konkurenti

Technický atribútGeoJSON (Aktuálne)KMLGPXSHP
Prijatie webovými mapami100 % univerzálny webový predvolený GISPredvolené pre Google EarthPredvolené pre GPS zariadenia a športové aktivityZastaraný štandard pre desktopový GIS
Poradie súradníc[zemepisná dĺžka, zemepisná šírka] (X, Y)zemepisná dĺžka, zemepisná šírka, nadmorská výškazemepisná šírka, zemepisná dĺžkaSúradnice X, Y
Štýl syntaxeČisté páry kľúč-hodnota JSONObsiahle značky XML (<kml>)Obsiahle značky XML (<gpx>)Viacsúborové binárne súbory (.shp, .shx, .dbf)
Schéma vlastnostíObjekt vlastností s ľubovoľným JSONZnačky schémy ExtendedDataPevné značky schémy GPXPevné stĺpce dBase IV (.dbf)

Bežné režimy poškodenia a príručka na obnovu v hexadecimálnom kóde

Body na mape sa zobrazujú v oceáne blízko Antarktídy namiesto ich skutočnej polohy.

Hlavná príčina: Hodnoty zemepisnej šírky a dĺžky boli v poli súradníc náhodne vymenené.

Obnova: Vymeňte pozície súradníc [dĺžka, šírka] pomocou nástroja File2File GeoJSON Converter.

Bezpečnostná analýza a vektory útokov na parser

Vlastnosti GeoJSON môžu obsahovať ľubovoľné vstupy od používateľov, ktoré je potrebné pred vykreslením do kontextových okien mapy dezinfikovať, aby sa predišlo útokom XSS.

Známe vektory útokov

  • Skriptovanie medzi lokalitami (XSS) prostredníctvom neescapovaného HTML vo vlastnostiach prvkov GeoJSON vykreslených v popiskoch mapy.
  • Odopretie služby prostredníctvom hlboko vnorených objektov GeometryCollection alebo polygónov s miliónmi vrcholov.
  • Server-Side Request Forgery (falšovanie požiadaviek na strane servera) prostredníctvom vzdialeného načítavania prvkov GeoJSON.

Najlepšie obranné postupy:

Historický pôvod a míľniky

2016IETF oficiálne štandardizuje formát GeoJSON ako RFC 7946, pričom nariaďuje systémy súradníc WGS 84.
2014GitHub zavádza natívne interaktívne vizuálne vykresľovanie opráv pre všetky súbory .geojson.
2008Howard Butler, Sean Gillies a komunita open-source GIS zverejňujú počiatočnú špecifikáciu GeoJSON 1.0.

Kľúčové výhody a prednosti

  • Natívny webový štandard: mapuje sa priamo do objektov JavaScript v knižniciach na mapovanie v prehliadači (Mapbox GL JS, Leaflet).
  • Ľudsky čitateľná štruktúra JSON umožňuje bezproblémové programové vytváranie, filtrovanie a ladenie.
  • Schéma ľubovoľných vlastností: priradenie ľubovoľných vlastných metadát (počet obyvateľov, názov, rýchlost, výnosy) priamo ku geometrickým tvarom.

Technické obmedzenia a nevýhody

  • Textová obsiahlosť: ukladá súradnice s plávajúcou rádovou čiarkou ako opakované číslice ASCII, čo vedie k väčším veľkostiam súborov ako binárne súbory Shapefile alebo FlatGeobuf.
  • RFC 7946 prísne nariaďuje poradie [zemepisná dĺžka, zemepisná šírka], čo často mýli vývojárov zvyknutých na poradie „šírka/dĺžka".
  • Veľké polygóny s miliónmi vrcholov môžu spôsobiť spomalenie vykresľovania DOM webového prehliadača.

Zaujímavé technické drobnosti

  • Oficiálny štandard GeoJSON usporadúva súradnice ako [zemepisná dĺžka, zemepisná šírka] (kartézske poradie X, Y), čo je presný opak toho, ako ľudia hovoria („zemepisná šírka, zemepisná dĺžka").
  • Ak odošlete súbor .geojson na GitHub, GitHub ho automaticky vykreslí ako interaktívnu, klikateľnú mapu.
  • RFC 7946 nariaďuje, že obhraničujúce krúžky polygónov musia dodržiavať „pravidlo pravej ruky": vonkajšie krúžky musia byť vinuté proti smeru hodinových ručičiek.

Často kladené technické otázky

Prečo sú moje súradnice GeoJSON usporiadané ako [zemepisná dĺžka, zemepisná šírka] namiesto [zemepisná šírka, zemepisná dĺžka]?

Pretože v matematike a počítačovej grafike sa súradnice vždy zadávajú ako (X, Y). Zemepisná dĺžka predstavuje vodorovnú os X a zemepisná šírka predstavuje zvislú os Y.

Ako môžem skonvertovať súbor KML alebo Shapefile na GeoJSON?

Pomocou služby File2File.app priamo vo vašom prehliadači môžete skonvertovať súbory Google Earth KML alebo Esri Shapefiles na čistý GeoJSON pripravený pre web za pár sekúnd.

Aký je rozdiel medzi formátmi GeoJSON a Shapefile?

Shapefile je zastaraný viacstránkový binárny formát z 90. rokov 20. storočia (.shp, .shx, .dbf). GeoJSON je moderný, jednosúborový otvorený webový formát napísaný v čistom formáte JSON.