GeoServer App-Schema Integration: HALE 2.9.4 is out

GeoServer App-Schema Integration: HALE 2.9.4 is out

Release Notes hale»studio Product Update

HALE has been supported well by the community in the past months with contributions, through support subscriptions and projects. We have thus been able to create an additional feature and maintenance release. So, why should you upgrade?

GeoServer App-Schema configuration

Publishing OGC services based on GML Application Schemas and Complex Features with GeoServer is now easier than ever. Use HALE to define the mapping from your data store to an application schema, such as INSPIRE or NAS. Then, upload the resulting configuration for the GeoServer App-Schema plugin directly to your GeoServer instance. This feature was developed together with GeoSolutions S.R.L, Italy. More information on the new feature including future plans is available at the GeoSolutions Blog.

Inline transformations

Declarative Mapping, as implemented in HALE, is about simplification and effective re-use of transformation projects. When you encounter complex structures in your data, the mapping can still get quite complicated. By using the Inline transformation function, you tell HALE that it should transform objects in a complex feature the same way as it would standalone features.

As an example, let’s look at a mapping between two CityGML ADEs. In both source and target schemas, there are a Building and a BuildingPart type. BuildingParts can be features on their own, thus a mapping is defined based on a Retype between the corresponding source and target types. Buildings can also contain BuildingParts, and to transform these internal BuildingParts we use the Inline transformation, with the additional step to include it in the respective target property.

Namespace agnostic loading of XML/GML

HALE relies on qualified names for the transformation and handling of data, which consist of local names and namespaces. In many cases, you still want to transform data where only the local name matches. This can be the case for instance when using data based on a previous version of a schema or for data that is published via an OGC Web Feature Service. We have added an option when loading XML or GML data that instances will be loaded even if the namespaces do not match the schemas exactly.

HL Consulting BVBA funded this work under a Professional Support Subscription for HALE. They use this feature to define their alignments on a schema that allows them to make extensive use of relation inheritance in their alignment, to have one mapping that they can use to transform data from different services.

Tweaks and Bug fixes

We’ve added a lot of smaller improvements and fixed some issues:

  • The command line interface has been extended with the capability to use whole folders as source for the transformation.
  • Deprecated INSPIRE SpatialDataSet export, as INSPIRE now recommends to use a WFS 2.0 FeatureCollection instead, and added support for generating a Dataset Feed file for an ATOM-based INSPIRE predefined Dataset Download Service when exporting to a WFS 2.0 FeatureCollection.
  • Added a Groovy Join transformation that allows for more control on the creation of transformed instances.
  • Introduced helper functions for Groovy scripts for dealing with geometries and performing type conversions.
  • Structural copies with Rename and Retype can now explicitly exclude geometry objects parsed by HALE, for cases where the original geometry encoding should be retained.
  • A default SRS can now be specified on the command line, for reading data from a specific source, in case HALE cannot correctly detect the SRS.
  • Handling foreign key constraints during the export to a database has been improved.

Check out the help for a list of all improvements and more information.

Get HALE 2.9.4

To get HALE 2.9.4, go to the downloads section and enjoy your work with it!

Please use the board to tell us what you think of this new release; don’t hesitate to tell us about problems you’re encountering and features you’re missing, wither there or on Github.