The HALE Schema Transformation Plug-in for FME comes in the form of a Writer in FME. The Writer produces FME generated GML that in turn is transformed with HALE, based on a HALE project that includes the target schema and the schema mapping.
The first step in setting up your workspace is to add a HALE Schema Transformation writer:
The HALE Schema Transformation writer has several configuration
parameters. Most important is the HALE project and the reference to
the HALE executable.
The HALE project parameter points to a HALE project file, which also includes the schema mapping. For the initial project setup you should specify a HALE project file (with file extension .halex or .hale) that does not yet exist. It will be created the first time the workspace is run.
The HALE executable should point to the executable (e.g. HALE.exe) of a local HALE installation which is at least version 2.6. Download HALE here if it is not yet installed.
The second parameter section is responsible for the creation of sample data that will be used to support you in the creation of the schema mapping in HALE. HALE uses an interactive approach to schema mapping, where you have the possibility to immediately test and validate the transformation based on the sample data.
The third parameter section configures the FME generated GML that is used as input for HALE. These are the same parameters as their counterparts in the FME GML writer and allow you control over the SRS name and the axis order.
Finally, in the section on Transformation output you can
configure how HALE will encode the transformation results and specify
if XML validation should be performed on the output.
The output format is either GML, where the output is written to a GML Feature Collection, or XML, where the specified XML element from the target schema will be used as root element for the output.
The image below shows an example of a FME workspace using a HALE Schema Transformation writer:
The first time you run the translation of your FME workspace with the HALE writer, FME will always launch the HALE user interface, either creating or updating the HALE project referenced in the writer configuration.
HALE will use the Feature Types associated to the HALE writer in FME as source schema, and also load the sample data. You then have the possibility to specify a target schema, e.g. by importing a XML Schema file, and to create the schema mapping between source and target. For detailed information on how to use HALE and create the schema mapping, please take a look at the HALE User Guide.
The image below shows HALE with the schema mapping defined for the FME workspace example in the previous section. The target schema in this case is the INSPIRE HydroPhysicalWaters Application Schema.
The HALE writer can be executed in different modes. By default the mode is Auto, which will try to automatically decide, whether there was a change to the Feature Types or sample data. If there was a change, it will launch the HALE user interface to give you the opportunity to update your schema mapping accordingly. Otherwise the schema transformation will be launched based on the already defined schema mapping.
Alternatively you can explicitly set the Execution mode parameter to Schema Transformation or Update Mapping. Schema Transformation will execute the schema transformation based on the currently in the referenced project defined mapping. Update Mapping will regenerate source schema and sample data, launch the HALE user interface and open and update the associated HALE project.