Complex Features with GeoServer and HALE

Traditionally, GIS software has supported only Simple Features, i.e. features containing a list of properties that each have one piece of simple information such as a string or number. Simple features provide a straightforward mapping from a database table or similar structure to a “flat” XML representation, where every column of the table maps to an XML element that usually contains no further structure.

On the other hand, Complex Features contain properties that can contain further nested properties to arbitrary depth. In particular, complex features can contain properties that are other complex features. Complex features can be used to represent information not as an XML view of a single table, but as a collection of related objects of different types: this enables the definition of a rich, object-oriented information model, an application schema.

There has been a growing need for the support of complex features in GIS software, especially in Europe since the coming into force of the INSPIRE Directive, which aims to create a European Union (EU) spatial data infrastructure. The INSPIRE Directive provides data specifications and implementation rules for 34 spatial data themes: these specifications are effectively GML application schemas and are thus built upon complex features.

This training section shows how HALE and GeoServer can work together to make the job of publishing INSPIRE compliant data on the web easier.

HALE is a tool for defining and evaluating conceptual schema mappings. The goal of HALE is to allow domain experts to ensure logically and semantically consistent mappings and consequently transformed geodata.

The Application Schema (App-Schema) extension provides support for Complex Features in GeoServer WFS.

You will be walked through the process of:

  1. creating a new alignment project in HALE
  2. visually defining a mapping between data stored in a PostGIS database and a complex GML application schema (such as the INSPIRE Data Specification on Land Cover and GeoSciML)
  3. finally, publishing your data as a WFS service through GeoServer.