You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sis.apache.org by Martin Desruisseaux <ma...@geomatys.com> on 2017/01/16 05:44:15 UTC

GPX reader and writer merged on trunk

Hello all

There is a quick update on recent committed work. A few months ago,
Johann Sorel committed a reader and writer for the GPS Exchange file
format (GPX) on the JDK8 branch of SIS. This work has finally been
merged to trunk last week. This is a more advanced work than current
state of GeoTIFF and NetCDF data stores in two aspects:

  * It is the first SIS data store to provide write capabilities in
    addition of read capabilities.
  * It reads and writes not only the metadata, but also the data
    themselves (other SIS formats are still mostly at the metadata stage
    only).

The "metadata reader" part of GPX can be tested from the command line as
below (after a fresh "mvn install" command):

    java -classpath "target/binaries/*" org.apache.sis.console.Command
    metadata
    http://svn.apache.org/repos/asf/sis/trunk/storage/sis-xmlstore/src/test/resources/org/apache/sis/internal/storage/gpx/1.1/metadata.xml

Like all other SIS data stores, the GPX metadata are mapped to ISO 19115
metadata. So users only need to know ISO 19115 without concern about
whether the metadata come from GPX, Landsat, GeoTIFF, NetCDF or Moving
Features CSV file.

The writer part and the data read/write parts are not yet available from
the command line since we have not yet determined which commands would
be most useful. Programmatically, the data are available in Java code as
a stream of features. However this API is not yet in a public package,
because it will certainly need to be changed according feedback and
experience. The API is currently available in an internal package there:

    http://svn.apache.org/repos/asf/sis/branches/JDK8/storage/sis-storage/src/main/java/org/apache/sis/internal/storage/FeatureStore.java

But as any class in an "...internal..." package, it is subject to change
at any time. In particular the getFeatures() method will probably need
to be renamed and will needs some kind of Query argument. My proposal is
to wait for a few SIS release cycles before to commit a "feature stream"
API in the public org.apache.sis.storage package.

    Martin