This is a brief overview of some of more advanced functions that allow you to solve more complex problems.
If your data source contains empty string values, but you don't want to end up generating empty records in the output. This function allows you to ignore empty records.
Typically used when reading CSV data where there is no concept of a missing field.
Replaces a missing input value with a default value. For example if an XML has an optional attribute then you can set a default value that will be used when it is not present in the source data.
Takes 2 or more values or sequences and turns them into a single sequence. This is handy for building lists or combing data values from different sources.
This is a dictionary style lookup, the input value is looked up and the corresponding value returned.
This is invaluable for mapping values (i.e. ISO country codes 2 digit to 3 digit 'US' become 'USA').
Allows a value to be provided to the transform (either via the command line or programmatically).
The formatting applied to a value being written to a data target can be customized. This allow strings to be padded, decimal places to be fixed, and date/time data to be formatted.
This is especially useful when the output data is EDI or CSV and requires specific formatting rules to be applied.
The default conversion rules used when casting a string to more complex data type will not be applicable for all input data. For example a data source may contain a string '010203' which describes a date in the format YYMMDD, the default conversion rules would misinterpret this, so we can apply our own casting rules.
A normal connector made to a data target will just create an entry for the specific node it is connected to. In contrast recursive copy connector will copy the node and all its children. This is especially useful when duplicating large sections of a document from the source to the destination (Copy and modify use case).