[Geojson] coordinate order
Sean Gillies
sgillies at frii.com
Mon Mar 10 08:27:04 PDT 2008
Tim Schaub wrote:
> Hey-
>
> See the updated GeoJSON spec v5
> http://wiki.geojson.org/GeoJSON_draft_version_5
>
> We had a discussion on IRC today about geometry coordinates. We all
> agree that we want to support more than two dimensions. We also want
> simple clients to be able to know which dimensions at least the first
> two elements in a coordinates array refer to.
>
> Regarding more than two dimensions, the spec talks about two dimensions
> for point geometry and goes on to say "any number of additional
> dimensions are allowed, and interpretation and meaning of these
> coordinates is beyond the scope of this specification."
>
> Does this sit well? We say you've got to have two elements in the
> coordinates array but more are allowed.
>
> Regarding the order of elements in the coordinates array for GeoJSON
> geometries, we say that the first two elements are in x, y order (lon,
> lat for dd). This is what we have said from the start.
>
> The change to the spec is to accommodate CRS that define a different
> coordinate order. Instead of requiring all clients to know about all
> CRS coordinate order conventions, we require that GeoJSON geometries
> referencing a CRS that defines non-xy coordinate order include a
> "coordinate_order" member in the CRS object.
>
> This means a point geometry that references EPSG:4326 would look like this:
>
> {
> "type": "Point",
> "coordinates": [-180.0, 90.0],
> "crs": {
> "type": "EPSG",
> "properties": {"code": 4326},
> "coordinate_order": [1, 0]
> }
> }
>
> The benefits of this are that it allows all clients simple access to the
> proper dimensions in the geometry coordinates array and allows smarter
> clients who are strict about CRS coordinate order to map to the correct
> dimension in our coordinates arrays.
>
> The drawbacks of this are that people like to argue that the EPSG has
> the right to assign meaning to any sequence of numbers in a data
> structure that references EPSG. I say that is fine, they get access to
> our coordinate_order array. If the EPSG says that the first value in a
> sequence refers to the northing of a point, then they look at the first
> value in our coordinate_order array and know which element to use from
> our coordinates array.
>
> Makes things a bit more complex for clients who know about CRS and
> simpler for the rest.
Tim, if we discourage/prohibit people from defining coordinate ordering
that conflicts with the specified CRS, it would be no harder for a
client that knows all CRS: they can just ignore the coordinate ordering
hint.
>
> I think this thing is ready to let out into the wild.
> Tim
+1. I like the idea of writing an IETF RFC after we see how the CRS
story plays out. Would anyone want to help?
Sean
More information about the GeoJSON
mailing list