Core functions

You can manage maps and mapping elements using several core functions:

Loop

A loop is an iteration element controlled by a link. Loop functions can contain nested loops or other function elements. Use loops to create repeating elements in the output document based on conditions that are determined by the type of source elements of the connected link.

You can drop a loop on the mapping area or on another Loop function, where the latter creates a nested loop.

If

An If function is a condition element controlled by a link. If functions can contain loops, other If functions, or other function elements. Use If functions to create elements in the output document based on conditions that are determined by the type of source element of the connected links.

You can drop an If function on the mapping area, on a Loop function, or on another If function where the Loop and If functions create a nested structure.

Boolean

Boolean function (UBJ) is used to control the loop iterations based on user-defined criteria. These functions are also known as loop-controlling functions.

Note: The Boolean and Java functions are almost the same, except that Boolean function's output is a Boolean value. You define the criteria by writing Java code in the same way.

Java

You can drop Java functions on the mapping or a Loop. A user-defined Java function (UVJ) is used to process data in the form of input parameters and send the result to output parameters. Java code is used to define the processing that the function does.

Repository

Repository Functions are reusable Java and Boolean functions stored in Function Repository that is part of a Mapper database. You can drop reusable functions on the mapping area or a loop.

Assign

Use this mapping element to make a direct assignment from an input document element to an output document element.

You can drag and drop an input element directly to an output element. In the Core Functions pane, you can also select and drag Assign in the Mapping Editor area and drop it in the mapping. Then, attach the input and output elements by dragging and dropping them to the Assign widget.

Note: The Assign function only assigns one value at a time. You can only use this function with data elements or attributes in the input and output documents. A data element is an element which do not have child elements.

Collector

A Collector function serves like a UVJ function with regard to input parameters. You can link the input document elements and attributes, preceding functions’ output parameters, and global variables and constants to the Collector function.

Collector function is used to store your altered data into memory, so you can sort them before the outmost restructure loop starts.

Restructure

A Restructure function serves as a UBJ function. Restructure function is used to control the loop iterations and you can only create this function in a loop. You can only make one restructure function within a loop and it must be the first in the loop's sequence, controlling the loop.

Note

Use this mapping element to insert specific textual descriptions in relevant places in your mapping. When you move the mouse pointer over a note, the note contents are shown. You can only modify inserted notes by double-clicking on the note function or through its context menu.