Logo
NeoArc Studio

Transformation Engine

The transformation engine maps model properties to target representations through nine transformation types, an expression builder, and automatic conflict detection.

Nine Transformation Types

The transformation engine provides nine distinct mapping types. Each serves a specific purpose, from straightforward field copies to complex multi-field calculations. Choosing the right type makes the intent of each mapping explicit and traceable.

TypeDescriptionExample
DirectCopy the value unchanged from source to target.Model <em>email</em> maps to target <em>email</em> with the same type.
RenameCopy the value but change the field name to match target conventions.Model <em>firstName</em> becomes <em>first_name</em> in PostgreSQL.
Type-CastConvert the value to a different data type.A string ISO date becomes a native <em>timestamptz</em> column.
AggregateCompute an aggregate over related entities.Count of <em>Order</em> entities becomes <em>order_count</em> on <em>Customer</em>.
ConcatenateCombine multiple source fields into one target field.<em>firstName</em> and <em>lastName</em> join to form <em>full_name</em>.
CalculateApply arithmetic or date logic to produce a derived value.<em>dateOfBirth</em> becomes <em>age</em> via date subtraction.
DeriveCreate a field with no direct source in the model.A surrogate <em>id</em> column or an <em>updated_at</em> audit timestamp.
SplitBreak one source field into multiple target fields.An <em>address</em> string splits into <em>street</em>, <em>city</em>, <em>postcode</em>.
CustomWrite a free-form expression for cases that do not fit the other types.CASE/WHEN logic that maps status codes to human-readable labels.

Expression Builder

The expression builder provides a visual interface for constructing transformation logic. Rather than writing raw SQL or code, you compose expressions from field references, functions, and operators. The builder validates expressions as you type and shows the resolved output type so you can catch mismatches early.

Automatic Conflict Detection

When source and target types do not align, the transformation engine detects the mismatch and categorises it by severity. Conflicts appear inline in the mapper so you can resolve them before saving. This prevents silent data loss that would otherwise surface only at deployment time.

Type Conversion
The source type does not match the target type. The engine suggests appropriate CAST operations and shows whether the conversion is lossless or potentially lossy.
Truncation
The target field has a smaller capacity than the source. A varchar(50) target for a varchar(255) source flags the risk of data being cut off.
Null Handling
The source allows null values but the target does not, or vice versa. The engine flags the mismatch and suggests default value or coalesce strategies.
Precision Loss
Numeric conversions that reduce precision, such as decimal to integer or double to float. The engine quantifies the potential loss.

Bulk Operations

When working with entities that have many properties, individual mapping becomes tedious. The transformation engine supports batch operations: auto-map properties by name similarity, apply a transformation type to all selected properties at once, and bulk-rename using pattern rules (such as camelCase to snake_case). These operations respect existing mappings and only affect unmapped or selected properties.