[GeoJSON] Consequences of the GeoJSON 1.0 axis order policy

Adrian Custer acuster at gmail.com
Mon Apr 15 08:19:42 PDT 2013


Hey all,

It seems that we are in overall agreement. My analysis was correct but 
the issues raised are not of real-world significance to the users of 
GeoJSON.

That is: GeoJSON has an unstated restriction on allowable CRSs due to 
the axis order policy; however, that has little impact because the field 
of use of the format means the only CRSs in common use are CRS84 (an 
axis-flipped WGS84) and CRSGoogle (EPGS:3857).



So some possible *responses* to this situation (note, Howard, the last 
list was to *resolve* the situation) are:

1) Shrug and do nothing
	This is the easiest course of action for you.

	This places little burden on the users of GeoJSON. They can
	continue to presume CRS84 until the data looks wrong and then
	add a check for the CRS to see if it is CRS84 or EPGS:3857.
	Emitters of data should only use those two CRS.

	This places the biggest burden on me. I have to (1) explain the
	restriction of GeoJSON, (2) convince folk that my analysis is
	correct, and (3) demonstrate the need at the OGC for something
	else.

2) Shrug and add a comment
	This requires some work on your part but perhaps only the
	addition of a comment explaining the restriction to the main
	page http://www.geojson.org (see the proposed text below).

	The situation for users is as in (1).

	The situation for me is much improved since I am not having to
	invoke my credibility and forcing others to think. I could
	merely point to your clarification statement.

3) Work to resolve the situation
	This involves clarifying the standard, which sounds like is more
	work than your group is willing/able to undertake. I talk about
	this in my earlier mail:
	http://lists.geojson.org/pipermail/geojson-geojson.org/2013-
	  April/000706.html




Since it is best *for me* if you all added a note on this CRS 
restriction, I offer a proposal. This could be added to the geojson.org 
home page without requiring a modification of the standard itself.

************************************************************************
A note on Coordinate Reference Systems in GeoJSON
-------------------------------------------------
GeoJSON only allows the use of coordinates in certain coordinate 
reference systems (CRSs).

In actual practice, most GeoJSON files use positions defined as 
latitude, longitude coordinates relative to an ellispoidal CRS based on 
the WGS84 datum. This is the coordinate reference system used by the 
Global Positioning System (GPS). Less frequently, GeoJSON positions are 
defined as ????meters_easting????, ????meters_northing??? relative to a 
Mercator projection of a spherical datum, a system popularized by Google 
Maps.

The GeoJSON standard does allow any CRS whose coordinates are either 
geographic values in latitude, longitude order or distance values in 
easting, northing order. However, the use of CRS other than the two 
mentioned above places additional complexity on the recipients of such 
data; GeoJSON data using such CRSs impose on recipients the 
responsibility of checking the CRS, recognizing its type and mapping to 
the canonical order, and interpreting the data relative to that CRS.

GeoJSON, due to its policy on the expected order of ordinates in a 
coordinate tuple (see Section 2.1.1) excludes the use any CRS whose axes 
do not map in an unambiguous way to either latitude, longitude, or to 
easting, northing.
************************************************************************



Also, if it were my standard, I would also offer the readers a canonical 
example of each of the two CRS definitions in predominant use: CRS84 
(which is done in section~3.1) and SphericalMercator (not done). The 
latter would be useful. (Both could be worked into the comment above).


The irony is that this would have been a better strategy overall:
  1) Make the axis order follow the CRS,
  2) give users the two canonical CRS definitions they would most
     likely want to use (CRS84 and EPSG:3857) both of which use
     axes in useful order, and
  3) allow advanced users to use other, more complex CRSs at the cost
     of making their users recognize them.
However, as was said earlier in this thread, the time to adopt such a 
policy was at the start of the GeoJSON standardization process.


ciao,
   ~adrian






More information about the GeoJSON mailing list