[gdal-dev] Inconsistencies in WKT CRS representations

Even Rouault even.rouault at spatialys.com
Wed Aug 16 09:46:13 PDT 2023


Jennifer,

> Note that the projection parameters are all the same (but with 
> slightly different naming conventions), but the CRS AUTHORITY line 
> does not exist in the GDAL version, is EPSG 102022 in the 
> spatialreference.org version, and is ESRI 102022 in the epsg.io version.
>
you must use an outdated version of PROJ as with recent ones 
SetFromUserInput("ESRI:102022") returns

PROJCRS["Africa_Albers_Equal_Area_Conic",
     BASEGEOGCRS["WGS 84",
         ENSEMBLE["World Geodetic System 1984 ensemble",
             MEMBER["World Geodetic System 1984 (Transit)"],
             MEMBER["World Geodetic System 1984 (G730)"],
             MEMBER["World Geodetic System 1984 (G873)"],
             MEMBER["World Geodetic System 1984 (G1150)"],
             MEMBER["World Geodetic System 1984 (G1674)"],
             MEMBER["World Geodetic System 1984 (G1762)"],
             MEMBER["World Geodetic System 1984 (G2139)"],
             ELLIPSOID["WGS 84",6378137,298.257223563,
                 LENGTHUNIT["metre",1]],
             ENSEMBLEACCURACY[2.0]],
         PRIMEM["Greenwich",0,
             ANGLEUNIT["degree",0.0174532925199433]],
         ID["EPSG",4326]],
     CONVERSION["Africa_Albers_Equal_Area_Conic",
         METHOD["Albers Equal Area",
             ID["EPSG",9822]],
         PARAMETER["Latitude of false origin",0,
             ANGLEUNIT["degree",0.0174532925199433],
             ID["EPSG",8821]],
         PARAMETER["Longitude of false origin",25,
             ANGLEUNIT["degree",0.0174532925199433],
             ID["EPSG",8822]],
         PARAMETER["Latitude of 1st standard parallel",20,
             ANGLEUNIT["degree",0.0174532925199433],
             ID["EPSG",8823]],
         PARAMETER["Latitude of 2nd standard parallel",-23,
             ANGLEUNIT["degree",0.0174532925199433],
             ID["EPSG",8824]],
         PARAMETER["Easting at false origin",0,
             LENGTHUNIT["metre",1],
             ID["EPSG",8826]],
         PARAMETER["Northing at false origin",0,
             LENGTHUNIT["metre",1],
             ID["EPSG",8827]]],
     CS[Cartesian,2],
         AXIS["(E)",east,
             ORDER[1],
             LENGTHUNIT["metre",1]],
         AXIS["(N)",north,
             ORDER[2],
             LENGTHUNIT["metre",1]],
     USAGE[
         SCOPE["Not known."],
         AREA["Africa"],
         BBOX[-35,-25,39,55]],
     ID["ESRI",102022]]

> Is it best to represent the CRS with WKT rather than importing using 
> SetFromUserInput with EPSG:code or ESRI:code?
>
If you use the WKT returned by GDAL/PROJ, then using it through 
SetFromUserInput() will be equivalent as with auth:code

> If so, what source has the definitive WKT, spatialreference.org or 
> epsg.io?
>
Well, none of them as they are generally outdated compared if you use 
the latest of GDAL (actually PROJ). But there are a lot of degree of 
freedoms in WKT (especially on the amount of metadata you include), so 
there's no such thing as a canonical WKT. That said I'd consider the one 
returned by PROJ to be reasonably a reference one.


Just a slight correction to Howard's answer regarding:

  https://epsg.org/  runs GDAL/PROJ too, but I don't know which version, and of course that isn't going to respond to ESRI codes.


Actually, epsg.org does NOT run PROJ. This is their own software stack, 
and I've actually reported to them bugs in their WKT output for some CRS 
in the past (to my knowledge, it is all now fixed now)

Even

>
> _______________________________________________
> gdal-dev mailing list
> gdal-dev at lists.osgeo.org
> https://lists.osgeo.org/mailman/listinfo/gdal-dev

-- 
http://www.spatialys.com
My software is free, but my time generally not.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/gdal-dev/attachments/20230816/3d39b3ca/attachment.htm>


More information about the gdal-dev mailing list