| GeoJSON | |
|---|---|
| Dateiendung: | .geojson |
| MIME-Type: | application/geo+json |
| Erstveröffentlichung: | Juni 2008 |
| Art: | GIS-Datenformat |
| Erweitert von: | JSON |
| Standard(s): | RFC 7946 |
| geojson.org | |
GeoJSON ist ein offenes Format, um geografische Daten nach der Simple-Feature-Access-Spezifikation zu repräsentieren. Dafür wird die JavaScript Object Notation verwendet.
Die Entwicklung des GeoJSON-Formats begann im März 2007 durch eine Gruppe von Entwicklern über eine Mailingliste. Im Juni 2008 wurde die Formatspezifikation verabschiedet.
Im April 2015 gründete die Internet Engineering Task Force eine Geographic JSON working group. Diese veröffentlichte GeoJSON als RFC 7946 im August 2016.
Zu den unterstützten Geometrien zählen Punkte (beispielsweise Adressen und Point of Interest), Linien (beispielsweise Straßen und Flüsse), Polygone (beispielsweise Ländergrenzen und Landnutzungen) sowie mehrteilige Typen dieser Geometrien.
| Typ | Beispiel | |
|---|---|---|
| Point
(Punkt) |
{ "type": "Point",
"coordinates": [30, 10]
}
| |
| LineString
(Linie) |
{ "type": "LineString",
"coordinates": [
[30, 10], [10, 30], [40, 40]
]
}
| |
| Polygon |
{ "type": "Polygon",
"coordinates": [
[[30, 10], [40, 40], [20, 40], [10, 20], [30, 10]]
]
}
| |
{ "type": "Polygon",
"coordinates": [
[[35, 10], [45, 45], [15, 40], [10, 20], [35, 10]],
[[20, 30], [35, 35], [30, 20], [20, 30]]
]
}
| ||
| Typ | Beispiel | |
|---|---|---|
| MultiPoint |
{ "type": "MultiPoint",
"coordinates": [
[10, 40], [40, 30], [20, 20], [30, 10]
]
}
| |
| MultiLineString |
{ "type": "MultiLineString",
"coordinates": [
[[10, 10], [20, 20], [10, 40]],
[[40, 40], [30, 30], [40, 20], [30, 10]]
]
}
| |
| MultiPolygon |
{ "type": "MultiPolygon",
"coordinates": [
[
[[30, 20], [45, 40], [10, 40], [30, 20]]
],
[
[[15, 5], [40, 10], [10, 20], [5, 10], [15, 5]]
]
]
}
| |
{ "type": "MultiPolygon",
"coordinates": [
[
[[40, 40], [20, 45], [45, 30], [40, 40]]
],
[
[[20, 35], [10, 30], [10, 10], [30, 5], [45, 20], [20, 35]],
[[30, 20], [20, 15], [20, 25], [30, 20]]
]
]
}
| ||
{ "type": "FeatureCollection",
"features": [
{ "type": "Feature",
"geometry": {"type": "Point", "coordinates": [102.0, 0.5]},
"properties": {"prop0": "value0"}
},
{ "type": "Feature",
"geometry": {
"type": "LineString",
"coordinates": [
[102.0, 0.0], [103.0, 1.0], [104.0, 0.0], [105.0, 1.0]
]
},
"properties": {
"prop0": "value0",
"prop1": 0.0
}
},
{ "type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": [
[ [100.0, 0.0], [101.0, 0.0], [101.0, 1.0],
[100.0, 1.0], [100.0, 0.0] ]
]
},
"properties": {
"prop0": "value0",
"prop1": {"this": "that"}
}
}
]
}
GeoJSON wird von einer Vielzahl von freien Geoinformationssystemen und Mapping-Software unterstützt, beispielsweise OpenLayers, Leaflet, MapLibre GL JS, MapServer, GeoServer, GeoDjango, PointPlot, GDAL, QGIS, und CartoDB. Des Weiteren kann GeoJSON in PostGIS und Mapnik (Standard-Renderer von OpenStreetMap) verwendet werden, weil diese beiden Softwarepakete auf die GDAL-Bibliothek zurückgreifen.
Bing Maps, Yahoo und Google Maps verwenden/unterstützen GeoJSON in deren Programmierschnittstellen.
GitHub zeigt GeoJSON-Dateien auf einer interaktiven Karte an.
GeoJSON.io ist ein interaktiver GeoJSON-Editor in Form einer Webanwendung.