Skip to content

Instantly share code, notes, and snippets.

@kannkyo
Created August 20, 2018 13:31
Show Gist options
  • Save kannkyo/c6d78a6614d0a20695cf5bb32d0bc522 to your computer and use it in GitHub Desktop.
Save kannkyo/c6d78a6614d0a20695cf5bb32d0bc522 to your computer and use it in GitHub Desktop.
Summary Structure of GeoJSON written by PlantUML
@startuml
title GeoJSON
hide methods
abstract class GeoJson {
type : String
bbox : Double[0..2n]
}
class FeatureCollection {
type : String = "FeatureCollection"
features : Feature[0..*]
}
class Feature {
type : String = "Feature"
geometry : Geometry[0..1]
properties : Object[0..1]
id : String or Number
}
abstract class Geometry {
}
class GeometryCollection {
type : String = "GeometryCollection"
geometries : Geometry[0..*]
}
GeoJson <|-- FeatureCollection
GeoJson <|-- Feature
GeoJson <|-- Geometry
Geometry <|-up- GeometryCollection
GeometryCollection o-- Geometry
FeatureCollection o-- Feature
note top of GeoJson
The coordinate reference system for all GeoJSON
coordinates is a geographic coordinate reference
system, using WGS 84 datum, with longitude and
latitude units of decimal degrees.
end note
note right of GeoJson
bbox "Bounding Box" has 2 points.
1st : the most southwesterly point
2nd : the more northeasterly point
end note
note bottom of Geometry
"n" is two or more elements. for example
[longitude, latitude, (altitude or elevation)]
[easting, northing, (altitude or elevation)]
end note
@enduml
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment