
We suppose that you have already learned what is described in:
If you want to find the appropriate Transformer for your purpose, see Transformers Comparison.
Address Doctor 5 validates, corrects or completes the address format of your input records.
| Component | Same input metadata | Sorted inputs | Inputs | Outputs | Java | CTL |
|---|---|---|---|---|---|---|
| Address Doctor 5 | - | no | 1 | 1-2 | - | - |
Address Doctor 5 receives records on its single input port. It then performs a user-defined transformation to the address format (e.g. corrects it or completes its fields). At last it sends the edited address to the first output port. The second output port can optionally be used for records that did not fit the transformation (i.e. a standard error port).

| Port type | Number | Required | Description | Metadata |
|---|---|---|---|---|
| Input | 0 | yes | For input data records | Any1 |
| Output | 0 | yes | For transformed data records | Any2 |
| Output | 1 | no | For records that could not be transformed (error port) | Any2 |
| Attribute | Req | Description | Possible values |
|---|---|---|---|
| Basic | |||
| Config file | 1) | External file defining the configuration. | |
| Parameter file | 1) | External file defining parameters. | |
| Configuration | 2) | Specifies the address database and its location. | |
| Parameters | 2) | Controls how the transformation is performed. | |
| Input mapping | yes | Determines what will be processed. | |
| Output mapping | yes | Controls what will be mapped to the ouptput. | |
| Element item delimiter | If the whole address is stored on a single line, this attribute specifies which special character separates the address fields. | delimiter is not used (default) | one of these: ; : # | \n \r\n clover_item_delimiter | |
Legend:
1): If these two are set, you do not have to define Configuration and Parameters.
2): You either set these two or you define Config file and Parameter file instead.
Address Doctor 5 operates by passing the input data and configuration to a third party Address Doctor library. Afterwards, the component maps the outputs from the library back to CloverETL.
Consequently, if you ever get unsure about working with the component, a good place to look for help is the official Address Doctor 5 documentation. It contains the necessary information for a detailed configuration of the Address Doctor 5 component. CloverETL actually serves as a GUI for setting parameters.
Working with the component can be regarded as fulfilling these tasks:
telling the graph where Address Doctor libraries (*.jar + native
libraries) are - they can be passed
as a Java Argument or copied to Program Files; please note you have to obtain
the libraries yourself - they are not embedded in CloverETL
obtaining the address database
setting the component attributes - see Address Doctor 5 Configuration
The components is configured in four basic steps setting these attributes:
Configuration - specifies where the address database is located. Do not forget your database is supplied in one of the modes (e.g. BATCH_INTERACTIVE) and thus you have to set a matching Type (applies to Enrichment databases set in Parameters, too). In order to be able to work with the database, you have to obtain an appropriate Unlock code (either universal or specific).
Parameters - controls what transformation will be performed. Particular settings are highly specific and should be consulted with the official Address Doctor 5 documentation.
For instance in the Process tab of the dialogue, you can configure various Enrichments. These allow you to add certificates of the address format. The certificates guarantee that a particular address format matches the official format of a national post office. Note that adding Enrichments usually slows the data processing and can optionally require an additional database.
Input mapping - determines what will be processed. You work with a wizard that lets you do the settings in three basic steps:
Select address properties form all Address Doctor internal fields ("metadata") that are permitted on the input. Field names are accompanied by a number in parantheses informing you how many fields can form a property ("output metadata"). For instance "Street name (6)" tells you the street name can be written on up to 6 rows of the input file.
Specify the internal mapping of Address Doctor - drag input fields you have chosen in the previous step on the available fields of the Input mapping.
Examine the summary of the input mapping.
Output mapping - here you decide what will be mapped to the output, i.e. the first output port. Optionally, you can map data to the second "error" port (if no such mapping is done, error codes and error messages are generated).
Similarly to Input mapping, you do the configuration by means of a clear wizard comprising these steps:
Select address properties for mapping.
Specify particular output mapping. That involves assigning the internal fields you have selected before to output fields. In the Error port tab, design a structure of the error output (its fields) that is sent to the second output port if the component cannot perform the address transformation.
Examine the summary of the output mapping.
A spin-off of working with the component is the so-called transliteration. That means you can e.g. input an address in the Cyrillic alphabet and have it converted to the Roman alphabet. No extra database is needed for this task.