Transformation is a piece of code that defines how data on the input is transformed into that on the output on its way through a component.
Each transformation graph consists of components. All components process data during a graph run. Some of the components process data using so called transformation.
Remember that a transformation graph and a transformation itself are different notions. A transformation graph consists of components, edges, metadata, connections, lookup tables, sequences, parameters, and notes whereas a transformation is defined as an attribute of a component and is used by the component. Unlike transformation graph, a transformation is a piece of code that is executed during graph execution.
Any transformation can be defined by defining one of the following three attributes:
Transform, Denormalize, Normalize, etc.
Transform URL, Denormalize URL, Normalize URL, etc.
When any of these attributes is defined, you can also specify its encoding: Transform source charset, Denormalize source charset, Normalize source charset, etc.
Transform class, Denormalize class, Normalize class, etc.
In some transforming components, transformation is required, in others, it is only optional.
Each transformation can always be written in Java, majority of transformation can also be written in CloverDX Transformation Language.
For a table overview of components that allow or require a transformation, see Transformations Overview.
For details about CloverDX Transformation Language, see CTL2 - CloverDX Transformation Language.
For more detailed information about transformations, see Defining Transformations.