[Proj] dealing with EPSG axis order

Sebastian Holler shgeo at online.de
Sat Aug 23 06:39:07 EDT 2008

Hi list,

working on a WMS server that shall provide the WMS version 1.3.0 in
future, I noticed, that the "axis order problem" [1] seems to be a big
barrier in the implementation of this standard.

For dealing with the bbox parameter in a correct way, it is necessary
that the program has information about the order of the comma separated
values inside, depending on the respective EPSG code.

The easiest way is the creation of a file that stores this information
for all EPSG codes. I think that many projects would be benefit from
this additional information, so the proj4 package is possibly the best
place for this file, because I assume it is installed on most systems,
that deals with free gis software.

One possibility is the introduction of a new parameter (+axis_order) in
the already existing epsg file.
Here is a example:

# Unknown datum based upon the Airy 1830 ellipsoid
<4001> +proj=longlat +ellps=airy +no_defs +axis_order=latlon  <>
# NAD83(HARN) / North Carolina
<3358> +proj=lcc +lat_1=36.16666666666666 +lat_2=34.33333333333334
+lat_0=33.75 +lon_0=-79 +x_0=609601.22 +y_0=0 +ellps=GRS80 +units=m
+no_defs +axis_order=EN  <>
# KKJ / Finland Uniform Coordinate System
<2393> +proj=tmerc +lat_0=0 +lon_0=27 +k=1 +x_0=3500000 +y_0=0
+units=m +no_defs +axis_order=NE  <>
# S-JTSK (Ferro) / Krovak
<2065> +proj=krovak +lat_0=49.5 +lon_0=42.5 +alpha=30.28813972222222
+k=0.9999 +x_0=0 +y_0=0 +ellps=bessel +pm=ferro +units=m +no_defs
+axis_order=SW  <>

(For testing purposes I've written a python script that inserts the new
parameter for each EPSG code automatially.)
But I don't know if a new parameter in the epsg file has any negative
effect on other programs using this file. So it could maybe be better to
store this information in a separate file (in the same directory).

If someone is interested in, I'll fill in an Open Enhancement Request.

Sebastian H.

[1]: http://geotools.codehaus.org/The+axis+order+issue

More information about the Proj mailing list