Apache Spatial Information System (SIS) is a free software, Java language library for developing geospatial applications. SIS provides data structures for geographic features and associated metadata along with methods to manipulate those data structures. The library is an implementation of GeoAPI 3.0.2 interfaces and can be used for desktop or server applications.
The SIS metadata module enables the creation of metadata objects which comply with the model of OGC/ISO international standards. The SIS referencing module enables the construction of data structures for coordinate reference system definitions, along with the associated operations which enable the transformation of coordinates between different systems of reference. The SIS storage modules provide a common approach to the reading and writing of metadata, features and coverages applicable to simple imagery as to many dimensional data structures. SIS provides processing functions such as multi-threaded rasters reprojection and isolines computation from raster data. The API and the data encodings follow international standards when available.
More information on international standards and features supported by Apache SIS:
Using Apache SIS
The latest SIS release is 1.4, released in October 2023, and can be downloaded as a zip
files or as Maven dependencies. The EPSG geodetic dataset is optional for licensing reasons, but recommended. EPSG database installation is described in a separated page. This Apache SIS version requires Java 11 or later and uses the Java Platform Module System (JPMS). Consequently applications should declare SIS JAR files on their module-path rather than their class-path, but a compatibility mechanism makes possible to nevertheless use SIS on the class-path. Note that this class-path compatibility may be removed in future versions.
Apache SIS is a Java library for use by other applications. Leveraging the full SIS capabilities or getting the best performance require that users write their own applications on top of SIS. The developer guide, online Javadoc and recommended code patterns page provide instructions about developing with SIS. However a command-line tool and a JavaFX application are also provided for allowing users to experiment some SIS functionalities before writing code.