Some more stuff about coordinate reference systems

Date: Fri, 5 Aug 2016 09:59:36 +0000

```Hi all,

I’ve been talking offline with Martin Desruisseaux of Geomatys, a CRS guru. He has given me lots of information that I thought this group might be interested in, to help better understand issues around CRSs. This is a complicated area so I apologise if I make any mistakes in transmitting Martin’s wisdom!

Firstly, a couple of useful references. Martin is in the Apache SIS project, which provides a Java library for spatial data, including very comprehensive treatment of CRSs and conversions between CRSs. The SIS developer guide [1] is still in development but already has a lot of useful information about CRSs, which is useful even if you don’t use the library. He also has written a presentation [2], which is a great explanation of why we don’t always use WGS84 lat-lon, the importance of different datums and some of the issues in transforming between CRSs.

Secondly, a useful point that is not always understood by newcomers. We usually talk about latitude and longitude, but often forget about the third dimension (ellipsoidal height). When converting between CRSs that use different datums, we need the third dimension as well. EPSG guidelines say that, if the height is missing, reasonable assumptions are:

1. Height = 0 (i.e. we are standing on the surface of the ellipsoid)
2. The height is given by a digital elevation model (i.e. we are standing on the surface of the planet)

These two assumptions will, of course, lead to different answers for *all three* coordinates in the “new” system (and both assumptions might be wrong). This could be important on the Web, because we frequently give latitude and longitude, but no information about ellipsoidal height. This means that if we convert these coordinates into a new system, we will get an uncertain position (and even the horizontal positions in the new system are uncertain, not just the height). [Does the Best Practice document mention this?]

Finally, the process of converting coordinates between CRSs that use different datums can be very involved. Few open-source libraries do it “properly” (this is one of the gaps that SIS hopes to fill). I have a lot more information from Martin on this point but I think this email is long enough already!