Hello all

Apache SIS has been blocked on EPSG version 9.9.1 (the latest version of the 9.x series) for 6 years. It was because the ISO 19111 international standard has evolved for supporting the greater accuracy of modern geodesy with the addition of new concepts such as dynamic reference systems and datum ensembles. Following this evolution, the schema of the EPSG database changed. This schema change requires changes in the SQL queries used by Apache SIS, together with new data structures. This task is now in the following state, available on the main branch of source code repository:

 * New data structures such as datum ensembles are there.
 * SQL queries have been adapted and can read EPSG version 12.
 * Compatibility with EPSG version 9 is preserved.

The reason for the last point is because Apache SIS can connect to an existing EPSG database, for example on PostgreSQL. It does not force the use of the `sis-epsg` or `sis-embedded-data` JAR files. The latter are only convenience. Because EPSG version 9 may exist on a user's machine, the transition is easier if SIS is still able to read the legacy schema. Therefore, SIS detects automatically which version of the EPSG database schema is in use and adapts its SQL queries accordingly.

Actually, SIS can connect simultaneously to many EPSG databases of different versions, and an EPSG code such as "EPSG:9.9.1:4326" will use the database of the specified version (9.9.1). Therefore, "EPSG:9.9.1:4326" will create a WGS 84 CRS associated to a `GeodeticDatum`, while "EPSG:12.013:4326" will create a WGS 84 CRS associated to a `DatumEnsemble` (if SIS is connected to those two EPSG databases).

The following tasks remain to be done:

 * Update the `sis-epsg` and `sis-embedded-data` convenience files.
 * Upgrade WKT 2 support for the new data structures.

Because this EPSG upgrade was the most important feature desired for SIS 1.5, I suggest to prepare release candidates for SIS 1.5 soon after the upgrade of `sis-epsg` and `sis-embedded-data`, with RC1 tentatively Friday or early next week. RC1 would be more for testing than a real release candidate, but RC2 should be close to final.

Is there any comment, suggestion, objection?

    Martin

Reply via email to