Skip to main content
Version: 2.18.x.x LTS

ELMappingFilter

The ELMappingFilter uses UEL (see Unified Expression Language (UEL): Referencing Data) to define attributes of the target and control objects based on any data addressable in repositories using UEL. A skipping condition can be defined. It is evaluated before the mapping is carried out. By default, the whole entity is skipped for this record if the expression evaluates to true. This behavior can be changed by setting the scope of the condition.

Skip conditions with filter scope can be used to implement conditional constructs.

Configuration

NameType, usage constraints, defaultsDescription
skipwhenoptional: paraVal
default: none
type: boolean
UEL expression to be evaluated at runtime. If it results to true, then the processing of the current record is aborted. The expression is evaluated before the attributes are set. See also The DataFilter Plug-In.
skipscopeoptional: paraVal
default: entry
type: enum
Determines the scope of the skipping condition. It takes one of the following values: entity (default): The record is skipped for the whole entity. chain: The record is skipped until (and including) the next sink. filter: The record is skipped for the filter.

Attributes on the output object

Attributes for the output objects are defined using the attrVal, attrList, attrMap and attrDSource elements. They correspond to elements in the Configuration section, see Configuration Section for a detailed description.

Attributes on the control object

Attributes for the control objects are defined using the ctrlVal, ctlList, ctlMap and ctlDSource elements. They correspond to elements in the Configuration section, see Configuration Section for a detailed description.

Example

The following example shows how configuration, output attributes and control attributes are defined.

<dataFilter type="ELMappingFilter">
<!-- the filter configuration -->
<dp:paraVal name="skipwhen" value="#{in.app.DELETED}" />
<dp:paraVal name="skipscope" value="entity" />
<!-- attribute created on the output object -->
<dp:attrVal name="objectClass" value="top group" separator=" "/>
<dp:attrVal name="cn" value="#{in.appl.NAME}"/>
<!-- description can be null, therefore set required to false -->
<dp:attrVal name="description" value="#{in.appl.DESC}" required="false" />
<!-- attribute created on the control object -->
<dp:ctlVal name="operation" value="#{in.appl.ACTIVE ? 'createOrUpdate' : 'update' }"/>
</dataFilter>