Apache SIS for integrated metadata, referencing and grid coverage services
2026-09-02 , Dahlia2

Apache SIS is a Java library for metadata, referencing, feature and grid coverage services with a focus on implementing OGC/ISO abstract models. This talk shows how SIS can handle some non-trivial cases such as non-linear localization grids and rasters crossing the anti-meridian.


Apache Spatial Information System (SIS) is a Java library for geospatial applications with a focus on the implementation of the standards published jointly by the Open Geospatial Consortium (OGC) and the International Organization for Standardization (ISO). While the most widely-known standards are data formats or web services, they are often derived from abstract models defined by other OGC/ISO standards in the form of Unified Modelling Language (UML). Apache SIS uses these abstract models for some of its API, as a way to inherit a fraction of the insights from geodesists, scientists and other members of the expert groups who designed them. In the past, this approach saved GeoTools and Apache SIS (which can be seen as a continuation of GeoTools for the referencing service part) from the temptation to use a universal hub for coordinate transformations, and for the future this approach is guiding the support of epoch in dynamic datums.

Apache SIS provides metadata, referencing, features and grid coverage services. In SIS, these services are closely integrated. For example, ISO 19111 (referencing) depends on ISO 19115 (metadata) for describing the authority and domain of validity, and on ISO 19157 (data quality) for describing the positional accuracy. Apache SIS provides a nearly complete implementation of ISO 19115, which can be useful alone (for catalogues), but this implementation is also tuned for being a convenient support for ISO 19111, features and grid coverages. Another example is the resampling of a raster that crosses the anti-meridian. Identifying which values need to be shifted by 360° requires an exchange of information between the referencing and coverage modules, especially when the longitudes to shift are buried under map projections.

This talk will present the services offered by Apache SIS, show how the API is designed from the ground for multi-dimensional CRS and data-cubes, and how it handles some difficult cases such as resampling a raster where pixel coordinates are defined by a non-linear localization grid. This talk will also show how Apache SIS takes inspiration from Java Advanced Imaging (JAI), without depending on it, for implementing deferred tile computations on top of the standard Java2D API. For example, a BigTIFF file can be opened as if the RenderedImage was fully in memory. Then chains of operations, such as resampling the image to a different CRS, are applied as if the full images were manipulated in memory. But actually only the requested tiles are resampled, which in turn read only the needed tiles from the file (a classical pull model), with in turn may be read thought HTTP range protocol or from S3, thus allowing some work on the cloud.

The talk will also show how SIS leverages the standard Java stream API for giving access to the data of a PostGIS database, how some operations on the stream are converted to SQL statements, and how SIS handles complex features.


Level of technical complexity: 2 - intermediate Indicate what is (are) the open source project(s) essential in your talk:

1) Apache Spatial Information System (SIS).
2) OGC GeoAPI.

I make my conference contribution available under the CC BY 4.0 license. The conference contribution comprises the abstract, the text contribution for the conference proceedings, the presentation materials as well as the video recording and live transmission of the presentation:

I hold a Ph.D in oceanography, but has continuously focused on developing tools for data analysis. Programming experience was C/C++ until I switched to Java in 1997. I have been developing geospatial libraries for 30 years, and I’m contributing to Apache SIS since 2013. I follow Open Geospatial Consortium (OGC) meetings since 2002 and is a member of the current ISO 19111 revision group. I work in a small IT services company (Geomatys) specialized in development of geoportals, which uses Apache SIS as a foundation. Beside, I’m also an Apache Maven committer.

This speaker also appears in: