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.

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.