[Proj] Integration of RFC2 work with existing PROJ code: axis order and unit issues

Even Rouault even.rouault at spatialys.com
Sat Nov 17 14:47:11 EST 2018

Hi Martin,

> What about the following policy?
>   * "epsg" in "+init=epsg:4326" refers to axis order as declared in the
>     EPSG database.
>   * For axis order as used in Proj.4, one of the following choices:
>       o Define a new authority name, for example "+init=proj4:4326".
>       o Or append a parameter to the code, for example
>         "+init=epsg:4326;axisOrder=lonlat". This proposal as been
>         discussed at OGC, but I don't think it became official
>         recommendation.

If we go for breaking backward compatibility, your proposal of embedding the 
axisOrder override in the CRS designation (could be generalized for projected 
CRS too: axisOrder=easting,northing) is rather attractive and would avoid 
adding switches to exiting utilities or extra parameters or new variants to 
existing API.

I'm not too much for creating a PROJ authority (at least for that purpose 
(*)). That would mean either to duplicate & patch a lot of existing EPSG 
definitions in the database itself, or add special code to dynamically patch 
existing official definitions. But as we support multiple authorities 
(currently EPSG, ESRI, IGNF, and possibly other we wouldn't be even aware if 
users add their own), PROJ:code could be ambiguous.


(*) The PROJ authority is already used to add new CRS definitions not present 
in other authorities, or new transformations between existing CRS. For now it 
has only 4 objects :-)

Spatialys - Geospatial professional services

More information about the Proj mailing list