Skip to content

GSIP 219

Andrea Aime edited this page May 5, 2023 · 5 revisions

GSIP 219 - Multiple CRS authority support, planetary CRS

Overview

Support CRS authorities other than EPSG, add support for planetary CRSs.

Proposed By

Andrea Aime

Assigned to Release

This proposal is for GeoServer 2.24.0.

State

  • Under Discussion
  • In Progress
  • Completed
  • Rejected
  • Deferred

Motivation

The current GeoServer implementation supports, de facto, only the EPSG authority. We would like to support more authorities while offering planetary CRSs as an example of that (with the IAU authority).

Proposal

This is due mostly to a number of assumptions in various bits of GeoTools and GeoServer, while the basic authority support in gt-referencing makes no assumption about the supported authorities.

This proposal does not aim to find and remove all of those assumptions, but only to do so on the most common code paths:

  • GUI/REST configuration of layers/resources.
  • WMS GetMap/GetFeatureInfo
  • WFS GetFeature with GML, GeoJSON, and Shapefile formats.
  • WPS for GML/GeoJSON/Shapefile remote inputs and GML/GeoJSON/Shapefile outputs.
  • WCS (input and output)
  • PostGIS and GeoPackage data expressed in other authorities.

Any other functionality won't be covered by this proposal and will be left to further funding rounds or volunteer activity.

Adding extra authorities should be as simple as dropping a file with WKT definitions of the new CRSs in the data directory. Possible approaches:

  • Plugin that ones downloads and drops in the classpath (e.g. similar to gt-epsg-extension). It's a clear and well-known pattern, downside, puts developers in charge of maintenance.
  • Drop a new file in $GEOSERVER_DATA_DIR/user_projections/<authority>.properties, $GEOSERVER_DATA_DIR/user_projections/authorities/<authority>.properties` or $GEOSERVER_DATA_DIR/user_projections/auth_.properties``. Provides more flexibility in adding more authorities, need to find a good place to store the files (could be a direct reference to a GeoTools module source code though).

Backwards Compatibility

There should be no backward compatibility issue.

Feedback

Voting

Project Steering Committee:

  • Alessio Fabiani:
  • Andrea Aime: +1
  • Ian Turton: +1
  • Jody Garnett: +1
  • Jukka Rahkonen:
  • Kevin Smith:
  • Simone Giannecchini:
  • Torben Barsballe:
  • Nuno Oliveira: +0
Clone this wiki locally