These clarifications are really interesting. I wasn’t aware of this issue and assumed that the license of proj4j (MIT) was compatible with Apache. The terms of the EPSG license are restrictive [1]: The data may not be distributed for profit by any third party. I’m quite amazed to discover that most geospatial solutions out there are probably violating this license.
[1] https://svn.osgeo.org/geotools/trunk/licenses/EPSG.html >> Until now I thought it would be a good alternative lib besides EPSG approach. >> > When creating a Coordinate Reference System (CRS) from an EPSG code such as > "EPSG:4326", we are using the EPSG geodetic dataset. I think that if a > software contains e.g. 10 EPSG codes (compared to the ~6000 definitions in > the full dataset), it could be considered Fair Use. But including the full > dataset requires that we comply with EPSG Terms Of Use. > > However if CRS are created from user-supplied WKT strings (or PROJ4 parameter > strings), then no EPSG code is involved. The WKT definition string may > contain an AUTHORITY["EPSG", 4326] element, but it only means "see EPSG:4326 > for more complete information". Concretely, does this mean that we could include a couple of EPSGs (not the full database) without concern? In Baremaps, we mainly require EPSG:4326 and EPSG:3857. It not yet clear to me if we can import proj4j and exclude parts of the EPSG database. > >> So what would be your advise with proj4(j) and how to handle that kind of >> implementation in an Apache project? >> > EPSG geodetic dataset is not needed when the CRS is built from WKT, GML or > some file formats like NetCDF and some (not all) GeoTIFF files. So the > approach taken in Apache SIS applications (JavaFX and console application) is > to start without EPSG data. Then the first time that an EPSG code is really > needed, the application popups a dialog box (in JavaFX) or an interactive > prompt (in console application) asking users if they want to download the > EPSG geodetic dataset. If users click "yes", the EPSG Terms of Use is shown > and the application asks users if they accept. If they confirm, then the EPSG > geodetic dataset is downloaded and a database is created locally. > > Note that above procedure is needed only for software downloaded directly > from Apache servers. Anyone can bundle an application outside Apache which > contains the Apache software + EPSG data. The only condition for being > allowed to do that is to include the EPSG Terms of Use (in addition of Apache > license) in the application bundle. In the context of a cli, I would prefer to find a solution where the user is not prompted to accept the terms of the EPSG license. For instance, could we have a command (e.g. ./baremaps non-free) that downloads these jars in the lib folder? >> Officially it is running on MIT license. >> > Yes, this issue has been raised on their mailing list. PROJ maintainers have > choose to ignore. Some of them pretended that EPSG Terms of Use do not apply > to them anymore because they converted the PostgreSQL scripts to SQLite > scripts. I'm not a lawyer, but I think that this argument has zero chance to > hold in court. For now they rely on the fact that IOGP (the owner of EPSG > database) does not want to upset the geodetic community. I think the Eclipse Foundation did an exception for the locationtech group. According to their FAQ [2] they asked the permission to redistribute some pervasive dependencies in geospatial projects: “We can re-distribute the binaries for certain components. We do have explicit permission to re-distribute Geotools, JTS, and GEOS.”. [2] https://wiki.eclipse.org/LocationTech/FAQ#Q:_I.27d_like_to_host_my_project_here.2C_using_another_license_not_mentioned
signature.asc
Description: Message signed with OpenPGP