Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OGC WKT2 Syntax #165

Open
marqh opened this issue Jun 16, 2020 · 4 comments
Open

OGC WKT2 Syntax #165

marqh opened this issue Jun 16, 2020 · 4 comments

Comments

@marqh
Copy link

marqh commented Jun 16, 2020

Hello epsg.io

I would like to enquire about the syntax of the WKT presentation of CRS definitions within https://epsg.io

The OGC produce and publish the encoding standard for WKT-CRS
https://www.ogc.org/standards/wkt-crs

However, the published versions of WKT-CRS on epsg.io use a legacy syntax.

From the OGC standard:

If the WKT begins with or contains any of the following keywords, it is an older format:

    COMPDCS, FITTED_CS, GEOCCS, GEOGCS, LOCAL_CS, PROJCS, VERT_CS.

"Geographic information — Well known text representation of coordinate reference systems" was published by the OGC in 2012, and has been updated, including in 2018.

For example, epsg.io publishes
https://epsg.io/4326.prettywkt

GEOGCS["WGS 84",
    DATUM["WGS_1984",
        SPHEROID["WGS 84",6378137,298.257223563,
            AUTHORITY["EPSG","7030"]],
        AUTHORITY["EPSG","6326"]],
    PRIMEM["Greenwich",0,
        AUTHORITY["EPSG","8901"]],
    UNIT["degree",0.0174532925199433,
        AUTHORITY["EPSG","9122"]],
    AUTHORITY["EPSG","4326"]]

This is not the same as the official EPSG Registry definition, which conforms to the OGC WKT-CRS standard:
http://www.epsg-registry.org/export.htm?wkt=urn:ogc:def:crs:EPSG::4326

GEODCRS["WGS 84",
  DATUM["World Geodetic System 1984",
    ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1.0]]],
  CS[ellipsoidal,2],
    AXIS["latitude",north,ORDER[1]],
    AXIS["longitude",east,ORDER[2]],
    ANGLEUNIT["degree",0.01745329252],
  ID["EPSG",4326]]

For example:

  • GEOGCS GEODCRS
  • UNIT ANGLEUNIT
    *_ CS[...]
  1. Please may you provide some information on this ticket of the version and provenance of WKT-CRS that is in use within epsg.io?
  2. Please may you advise users of the website of this information? At present, it is not clear that the syntax in use may be outdated and unrecognised by parsing tools?
  3. Please may you advice this ticket of your plans to update the WKT-CRS encoding presentation to conform to the OGC WKT-CRS standard?

thank you
marqh

@klokan
Copy link
Member

klokan commented Jun 16, 2020

Hi @marqh !

Thanks for alerting us on this WKT formatting issue.

The EPSG.io uses the Proj4 library ExportToPrettyWkt() and ExportToWkt() to generate the WKT code. For example at https://github.com/maptiler/epsg.io/blob/master/app.py#L1295

I see there has been an update related to OGC WKT2 syntax done - now available in the recent releases of Proj. So once the update to the latest Proj library version id done - this issue is going to be fixed.

A great amount of work has been done on the Proj library by @hobu @rouault and others involved in https://gdalbarn.com/ - also on the simplified data management and releases of the EPSG database in the compact SQLite form.
👏

I really wish the EPSG.io website to be updated to the latest Proj - but at this moment we lack the capacity to work on that in the coming months.

Any pull request from the open-source community - or a client willing to support us or somebody else to do the related work may speed up this change. If you have the python+epsg expertise feel free to fork this project and make a pull request. We would be very happy to review and merge such a contribution to this open-source code.

@klokan klokan changed the title WKT Syntax OGC WKT2 Syntax Jun 16, 2020
@marqh
Copy link
Author

marqh commented Jun 17, 2020

Hello @klokan

many thanks for the response, that's really helpful.

Given the understandable constraints

I really wish the EPSG.io website to be updated to the latest Proj - but at this moment we lack the capacity to work on that in the coming months.

Have you considered adding a note/disclaimer/warning, perhaps into a template used on your site?

This could point unwary travellers to the risks of using this legacy syntax until these updates are in place.
It is just a thought.

thanks again
marqh

@jratike80
Copy link

Check https://epsg.io/4326.wkt2 that prints WKT2(2019). If it looks correct then this ticket can be closed.

@AliFlux
Copy link

AliFlux commented Sep 29, 2022

The following formats can be used in this version of epsg.io:

 'wkt', 'wkt2', 'esriwkt', 'json', 'proj4', 'js', 'mapfile', 'mapnik', 'mapserverpython', 'mapnikpython', 'geoserver', 'sql'

A new JSON format is also added. It's pretty useful for extracting properties from CRS:
https://epsg.io/4326.json

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

4 participants