hale»studio 3.3.0 brings new SQL features, spatial operations, and hale»connect integration

hale»studio 3.3.0 brings new SQL features, spatial operations, and hale»connect integration

Release Notes hale»studio Open Source Software Product Update

The next version of hale»studio, your friendly data transformation tool, is here! This time, our focus was on the integration of hale»connect and hale»studio. We believe that as a community, we could work together effectively by sharing transformation projects in a dedicated environment. The new capabilities enable you to browse and download shared projects and to upload your own projects directly from hale studio.

As usual, we also improved the software in many other aspects:

  • Arbitrary SQL Statements as Schema or Data Source: If you don't have the option to define a view on a database you're accessing, you can now use an arbitrary SQL statement both as schema and data source
  • Spatial Operations: We've now made the spatial index hale creates when loading data accessible through Groovy Scripting, and provided helper functions to make usage in scripts easier. We also added in a Spatial Join function that supports all modes of the 9-intersection-model.
  • Updated mapping documentation for help example projects
  • Import/Export hale schema definitions as JSON
  • DMG image for macOS installation

hale»studio 3.3.0 Connect with your Community!

We've also fixed several bugs and added smaller improvements. The whole list is available in the changelog.

Get the latest version, and let us know what you think of it!

Share Transformation Projects on haleconnect.com

In infrastructure projects such as INSPIRE, we're all working with the same set of target data models. A request from implementers we hear often is that they want to see how it's done - they want to build on how others have created compliant INSPIRE data sets. We've now made it really easy to share transformation projects and to work together on them with the hale studio/hale connect integration. This integration currently enables you to do three things:

  1. Log in to your haleconnect.com account from within hale studio
  2. Browse and download hale transformation projects from haleconnect.com
  3. Share your own hale transformation projects to the community

If you have a private cloud or on premise installation of hale connect, you can also log in to that by changing the application settings.

download projects

On haleconnect.com itself, you can discuss transformation projects with others, such as project partners or customers. They can create tasks or just leave comments on any level of the transformation project, even on an individual cell.

hale»connect mapping

Going forward, we will provide more capabilities, such as working with schemas shared on haleconnect.com and also to share custom functions. We're looking forward to your feedback on this!

Arbitrary SQL Statements as Source Schema and Source Data

When you're working with databases as sources, it can be highly efficient to combine views with hale studio's transformation capabilities. The main upsides include that some processing, filtering and joining can be done close to the data, and that only data really required for the transformation is transferred to hale studio. The issue is that sometimes you don't have the option to create views on the database. In these cases, you can now define your own using an arbitrary SQL statement, which can include joins, WHERE clauses and anything else your database will allow you to pack into said statement.

arbitrary SQL

You can also use that statement to load exactly the right data for your transformation from the database.

Thanks to the Bundesanstalt für Wasserbau for funding this work.

Spatial Operations Support

Have you ever wanted to join objects based on the spatial relationship of their geometries or perform other typical spatial operations in hale? Now, you can finally do so. We've added several features at different levels towards that purpose:

  1. hale studio has an internal spatial index that is now accessible through an API and exposed to Groovy Scripting as well as Transformation Functions.
  2. To make usage of the index in Groovy Scripts and Custom Functions easy, we've added two helper functions called spatialIndexQuery and boundaryCovers.
  3. There is also a new cousin to the existing Join function called Spatial Join available now, which lets you join source objects based on the spatial relationship between its geometries. The Spatial Join function supports the relation types contains, covered by, covers, crosses, equals, intersects, overlaps, touches, and within.

hale»studio Spatial Join example

Thanks to swisstopo for supporting the work on this feature.

Working with hale schema definition files

We've also made another internal capability of hale available to you - the ability to export any data model in a common format, called a hale schema definition. This can be exported both as XML or JSON. So if you've ever looked for a tool to convert XML Schema to JSON or a shapefile schema to a XML descriptor, look no further.