The Apache SIS™ library
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 interfaces and can be used for desktop or server applications.
The SIS metadata module forms the base of the library and enables the creation of metadata objects which comply with the model of international standards. The SIS referencing module enable the construction of geodetic data structures for geospatial referencing such as axis, projection and coordinate reference system definitions, along with the associated operations which enable the conversion or transformation of coordinates between different systems of reference. The SIS storage modules will provide a common approach to the reading and writing of metadata, features and coverages.
Some Apache SIS features are:
- Geographic metadata (ISO 19115-1:2014)
- Read from or written to ISO 19139 compliant XML documents.
- Read from netCDF, GeoTIFF, Landsat, GPX and Moving Feature CSV encoding.
- Automatic conversions between the model published in 2003 and the revision published in 2014.
- Referencing by coordinates (ISO 19111:2007)
- Well Known Text (WKT) version 1 and 2 (ISO 19162:2015).
- Geographic Markup Language (GML) version 3.2 (ISO 19136:2007).
- EPSG geodetic dataset for geodetic definitions and for coordinate operations. See the list of supported coordinate reference systems.
- Mercator, Transverse Mercator, Lambert Conic Conformal, stereographic and more map projections. See the list of supported operation methods.
- Optional bridge to Proj.4 as a complement to Apache SIS own referencing engine.
- Referencing by identifiers (ISO 19112:2003)
- Geohashes (a simple encoding of geographic coordinates into short strings of letters and digits).
- Military Grid Reference System (MGRS), also used for some civilian uses.
- Units of measurement
- Implementation of JSR-363 with parsing, formating and unit conversion functionalities.
Using Apache SIS¶
The latest SIS release is 0.8, released November 2017. Apache SIS requires a Java 7 or 8 Runtime Environment. There is known incompatibilities with Java 9, which will be fixed in next version. The EPSG geodetic dataset (optional but recommended) can be installed separately.
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. However a command-line tool is provided for allowing users to experiment some SIS functionalities before writing code.
- Downloads as a
zipfiles or as Maven dependencies.
- Developer guide — note that this is work in progress.
- Online Javadoc for API documentation.
- Command-line interface for an overview of the command-line tool.
- Recommended code patterns for writing more robust applications with Apache SIS.
Apache SIS developer documentation¶
Following links are for those who wish to contribute to Apache SIS:
- New contributor: background knowledge.
- Source code: fetching the code, opening in an IDE, formatting.
- Build: build from the source, create the PACK200 file.
- Branches: trunk, JDK8, JDK9.
- Issue tracking: JIRA.
- Release management (for release managers)
- Web site management (for release managers and site maintainers)
- SIS Wiki for "drawing board" and roadmap.