Re: [netcdf-java] Fwd: [Tc] OGC Seeks Comments on Candidate GeoAPI 3.0 Interface Standard

Hello John

Le 02/04/10 17:51, John Caron a écrit :
Thanks for the post. Can you explain the relation of GeoAPI (and
version) to GeoTools and GeoToolkit?

This is similar to the relationship which exist in standard Java between JDBC and the various database driver implementations. JDBC is defined almost entirely by interfaces (java.sql.Connection, java.sql.Statement, etc.). You can pickup an implementation of your choice (MySQL, PostsgreSQL, Oracle...), in most cases you can use only the JDBC interfaces. If the implementation needs to be changed, it can be done with minimal impact on the code.

GeoAPI is like JDBC interfaces, and GeoTools/Geotoolkit are like PostgreSQL or MySQL implementations. If you code against only GeoAPI interfaces, you are (in theory) independant of whatever implementation is used behind. For example you can use only the org.opengis.referencing.crs.CoordinateReferenceSystem interface without bothering if it is implemented by GeoTools or Geotoolkit.

Geotoolkit is the reference implementation of the GeoAPI interfaces mentioned in the OGC press release. If you need a lighther implementation, the JScience project (www.jscience.org) implements also those GeoAPI interfaces (only some of those). At the time of writing, GeoTools implements an older version of GeoAPI.

The NetCDF library could also implement the GeoAPI interfaces. It would allow the NetCDF library to use itself in the parts coded against GeoAPI interfaces. More specifically the following class:

    ucar.nc2.dataset.CoordinateSystem

could eventually implement the following interfaces:

    org.opengis.referencing.crs.CoordinateReferenceSystem
    org.opengis.referencing.cs.CoordinateSystem
    org.opengis.coverage.grid.GridGeometry (pending)

I list 3 GeoAPI interfaces to be implemented by the same UCAR object because the concept behind the UCAR CoordinateSystem class is actually a merge of two distinct concepts in ISO specifications (CoordinateSystem and CoordinateReferenceSystem), and also a merge of GridGeometry concept (but you could ignore that one since it is not yet part of the interfaces published by OGC at this time).

        Regards,

                Martin



  • 2010 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the netcdf-java archives: