Field Builder

How to build readable columns from repeated properties in JSON, XML, YML and from repeated column pairs in CSV, XLS, and XLSX.

Field Builder turns repeated source properties into regular table columns. Use it when the source does not have separate Color and Material fields, but stores properties as repeated “property name / property value” pairs.

The builder covers two common cases: for JSON, XML, and YML, Eofferix can detect a repeated element group such as features; for CSV, XLS, XLSX, and XLSM, you define a column mask such as Header{i} and Value{i}. After adding the builder output, the editor receives readable columns, while the technical repeated fields can stay out of the final table.

JSON, XML, and YML: repeated elements

If the source contains a repeated property list, Eofferix shows the detected group before the table editor. In this example the group is features: each item contains title for the future column name and value for the cell value.

Detected features group in Eofferix Field Builder
The red outline marks the detected-group action and the features group.

Open the group and check which field should become the column name and which field should become the value. Usually the column name comes from title, name, or label, and the value comes from value, text, or a similar field. The preview shows the generated columns immediately. You can disable unnecessary future columns with the eye icon: a disabled column is not included in the result file.

Choosing title and value for columns generated from a JSON group
The preview shows future columns: Color, Material, Style, Type, and Power.

If the generated columns look right, click Add and continue. To open the table without extra columns, click Continue without adding.

Continue buttons in Field Builder for a JSON source

After adding, the editor opens with regular columns. In this example, technical fields such as features.1.title and features.1.value are replaced with readable columns like Color, Material, and other detected properties.

Table snapshot after building columns from JSON properties

CSV, XLS, and XLSX: repeated column pairs

Table files can use many different layouts, so the builder is opened from the table snapshot manually. Click Field Builder when you see repeated column pairs such as Header1/Value1, Header2/Value2.

Field Builder button in the Eofferix table snapshot
The red outline marks the builder button and the first repeated column pair.

In By mask, describe the static parts of the column name and the part that changes. Use {i} or {index} for the variable part. The mask Header{i} matches Header1, Header2, and HeaderA; f--{i}--n matches f--1--n and f--N--n. Letter case in the mask does not matter. A dot is not a wildcard here: if the column name contains a dot, write it as a normal static character.

In Mask for the header column, enter the column that stores the future header. In Mask for the value column, enter the value column. If a value must be assembled from several columns, add each mask on a new line. In the preview, you can disable unnecessary future columns with the eye icon: a disabled column is not included in the result file.

Configuring Header and Value masks in Field Builder
The preview shows which columns will be generated from the matched pairs.

Continue without adding opens the table snapshot without generated columns. Add and continue saves the setup, opens the snapshot, and replaces source columns matched by the mask with generated columns.

Continue without adding and Add and continue buttons

After adding, the table keeps direct product fields and receives generated columns such as Color, Material, Style, and other detected properties. The original pairs Header1/Value1 are not added to the table.

Table snapshot after adding columns from Field Builder

Examples

Properties from JSON, XML, or YML

In the source document, properties repeat inside one product. After building, they become columns.

Before in the snapshot

skufeatures.1.titlefeatures.1.valuefeatures.2.titlefeatures.2.value
CHAIR-001ColorBlackMaterialSteel

After in the table

skuColorMaterial
CHAIR-001BlackSteel

Repeated pairs by mask

In a table source, future column names are stored in Header{i}, and values are stored in Value{i}.

Before in the table

skuHeader1Value1Header2Value2
CHAIR-001ColorBlackMaterialSteel

After in the table

skuColorMaterial
CHAIR-001BlackSteel

Several values with the same name

If one property appears more than once in the same row, Eofferix does not create duplicate columns. It joins the values instead.

Before in the table

skuHeader1Value1Header2Value2
PHONE-001CompatibilityiOSCompatibilityAndroid

After in the table

skuCompatibility
PHONE-001iOS | Android

Value from several columns

The value mask can contain several columns, each on a new line. For example, Value{i} and Unit{i}. The result is assembled from several parts using the selected separator.

Before in the table

skuField1Value1Unit1
SHELF-004Height180cm

After in the table

skuHeight
SHELF-004180 cm