Developing DTL Transformations
Introduction to DTL Tools
This chapter introduces the tools that Ensemble provides to enable you to develop and test DTL transformations. It contains the following topics:
A data transformation
creates a new message that is a transformation of another message. It is common for a production to use data transformations, to adjust outgoing messages to the requirements of the target systems.
A DTL transformation
is a transformation that you create and edit the transformation visually in the DTL editor, available in either the Management Portal or Studio. The DTL editor is meant for use by nontechnical users. The term DTL
represents Data Transformation Language, which is the XML-based language that Ensemble uses internally to represent the definition of a transformation that you create in this editor.
Introduction to the Data Transformation Builder Page
The [Ensemble] > [Data Transformation Builder]
page enables you to create, edit, and compile DTL transformations.
When you display this page, it shows the last transformation you opened in this namespace, if any. This page has the following areas:
The ribbon bar that the top displays options you can use to create and open DTL transformations, compile the currently displayed transformation, change the zoom display of the diagram, and so on.
The upper part of the left area displays the DTL diagram. The next section
provides details on this area.
The lower part of the left area displays a table that lists the actions defined in the DTL transformation. When Ensemble uses this transformation, it performs these actions in order as listed here.
The right area displays three tabs:
You can resize these three areas.
If you open a DTL transformation class in Studio, Studio displays a similar version of this page. You can view and edit the XML definition of the Data Transformation by selecting
from the Studio Data Transformation Builder page.
Introduction to the DTL Diagram
Note the following points:
The left area displays the source message. The header above the column displays the name of the source message class, and the boxes in the column display properties of the source message.
The right area displays the target message in the same way.
The top area includes a scroll button for each of these areas.
The diagram shows connectors that represent actions within the transformations. The actions displayed here copy values from source properties to target properties.
The middle area (the blue column) displays an icon on each connector line. The purpose of these icons is to enable you to select the connectors more easily. (You can select a connector line anywhere on its length, but it is easier to click the icons shown in this middle area.)
The following shows another example (not included in ENSDEMO
In this case, the source and target classes are more complex. Note the following additional points:
property is defined as list of strings. This property is displayed here with parentheses () at the end of its name.
In this example, Allergies
is another collection property.
property is defined as an object that has the Street
, and ZipCode
properties. Notice that the box for this property contains a triangle inside it.
In the left column, this property is displayed in expanded mode, so that you can see the properties. The triangle in the box is not solid and is pointing down.
The right column, this property is displayed in collapsed mode. The triangle in this box is solid and is pointing to the right.
For the Address
properties, the connector is shown with a dashed line on the side where the Address
is collapsed. This indicates that there are hidden sub-properties on this side of the assign
Notice that all the properties displayed are either collection properties (shown with parentheses at the ends of their names) or contain sub-properties. It is common for virtual documents to be complex as shown in this example. Also note that in the column header, below each class name, there is an additional label. These labels indicate the DocType of the source and target messages. For information on DocType, see Ensemble Virtual Documents
You can control the display of the Data Transformation Builder page in multiple ways:
You can click a View
option in the ribbon bar:
Use the buttons to view both the transform diagram and the action list in the left pane of the page, or instead to collapse the section you do not want to see.
You can select a zoom option from the drop-down list in the ribbon bar. By default, this list displays 100%
. Click a value in the list to shrink or enlarge the size of the DTL diagram.
Use the scroll bars in the header area of the DTL diagram, as described in the previous section
Collapse and expand the display of properties, as described in the previous section
Introduction to the Data Transformation List Page
The [Ensemble] > [Data Transformation List]
page lists the data transformation classes defined in the current namespace. To access this page, click Ensemble
, Data Transformations
and then click Go
This page lists two kinds of transformations:
To use this page, select a transformation class and then click one of the following commands in the ribbon bar:
You can also export and import these classes as you do any other class in Ensemble. You can use the [Home] > [Globals]
page of the Management Portal or use the
commands on the
menu in Studio.
Also, because data transformations are classes, you can edit them and work with them in the same way that you do any other class. For example, you can edit them in Studio, although the Ensemble documentation does not discuss this in any detail.
Using Data Transformations
You can invoke a data transformation from the following parts of a production:
This section applies to both DTL transformations and custom transformations.