HALE Architecture

Please note that this page is outdated as it only targets HALE up to version 2.1.2

The HUMBOLDT Alignment Editor is an Eclipse RCP application and as such makes use of OSGI bundles. The basic structure of such an application is that there is a central application with many supporting plug-ins, some of which may be optional. As of version 2.0.1, the application is structured in seven main bundles and two required CST bundles plus a target platform project:

  • eu.esdihumboldt.hale (Required): This is the main project that contains essential eclipse extensions such as the Perspective and the actual application. It also includes most of the UI, such as the Schema Explorer, the Map View and the Wizards for I/O and configuration. It also includes Project loading and saving and implementations for various services which maintain control over Tasks, the loaded Schema, the loaded instance data and the used styles, among other things.
  • eu.esdihumboldt.hale.gmlparser (Required): This is a very small bundle that contains a slightly modified Geotools GML Parser. This bundle is also used by the CST project.
  • eu.esdihumboldt.hale.htmlexporter (Optional): Allows exporting a mapping to HTML for documentation purposes.
  • eu.esdihumboldt.hale.logback.config (Optional): Allows logging output configuration.
  • eu.esdihumboldt.hale.instanceprovider (Required): Provides infrastructure for loading geographic data ("instance data"). Supports GML 2.1 to 3.2 and Shapefiles.
  • eu.esdihumboldt.hale.rcp.wizards.functions.core (Required): This bundles provides specific wizards for the core functions of the CST, such as renaming, reclassification, math expressions and some geometric operations. It also includes wizards for the INSPIRE Identifier and GeographicName functions.
  • eu.esdihumboldt.hale.schemaprovider (Required): This bundle contains the loader for XSD and GML Application Schemas as well as forloading schemas from Shapefiles (*.shp).
In addition to the hale bundles, HALE also makes use of two CST and the gmlhandler bundles:
  • eu.esdihumboldt.cst (Required): Basic schema translation engine, capable of digesting gOML Alignments as created in HALE.
  • eu.esdihumboldt.cst.corefunctions (Required): A set of core schema transformation functions, as well as two experimental INSPIRE-specific functions.
  • eu.esdihumboldt.gmlhandler (Required): A modules that allows exporting GML 2.1 to 3.2 (some features are experimental).
There are also the following unsupported and deprecated components:
  • eu.esdihumboldt.hale.rcp.wizards.functions.generic (Optional): This bundles provides a generic wizard that can be used for any CST functions which don't have a specific wizard designed for them.
  • eu.esdihumboldt.hale.log4j.config (Optional): This bundle provides log4j (Logging) configuration.
  • eu.esdihumboldt.hale.eap2uml (Optional): This plug-in uses OpenArchitectureWare components to load Enterprise Architect files and to transform them to Eclipse ecore UML models, which are then mapped to HALE's schema type system. Works only for simple models, not for complex parts of INSPIRE models.

Finally, both CST and HALE use a common platform project that provides all dependencies.