Text Composition

Generates a text string that contains values from other columns in the same row.

Characteristics

Consistency

Automatically consistent with the other columns that are included in the value.

Linking

No

Differential privacy

No

Data-free

No

Allowed for primary keys

No

Allowed for unique columns

No

Uses format-preserving encryption (FPE)

No

Privacy ranking

5

Generator ID (for the API)

How to configure

  1. In the Template field, provide the template to use to populate the value. The template uses Liquid template syntaxarrow-up-right.

  2. If Structural data encryption is enabled, then to use it for this column, in the advanced options section, toggle Use data encryption process to the on position.

Setting up a value template

Adding a column to the template

To add a column value to the template, add the column name enclosed in double braces:

{{ COLUMN_NAME }}

For example, to insert the value of a FIRST_NAME column, use {{ FIRST_NAME }}.

The Available Columns section display the list of columns that you can include in the template. To use the list to add a column:

  1. Click the column name.

  2. Paste the column into the field. When you paste the column, Structural automatically adds the braces.

Adding filters to adjust the column value

You can also use Liquid filtersarrow-up-right to manipulate the value. The Text Composition generator supports the following filters:

  • upcase

  • downcase

  • capitalize

  • slice

  • append

  • prepend

  • strip

  • lstrip

  • rstrip

  • strip_newlines

  • split

  • first

  • last

  • join

  • replace

  • replace_first

  • remove

  • remove_first

  • truncate

  • truncatewords

For example, you can change the capitalization or add a subset of the characters.

  • Use {{ COLUMN_NAME | downcase }} to change the value to all lowercase.

  • Use {{ COLUMN_NAME | uppercase }} to change the value to all uppercase.

  • Use {{ COLUMN_NAME | slice: <start number>, <number> }} to only include <number> characters from the value, starting after the <start number> character. To start with the first character, set <start number> to 0.

You can also combine filters. For example you can both change the case and extract a subset of the value:

  • {{ COLUMN_NAME | slice: <start number>, <number> | downcase }}

  • {{ COLUMN_NAME | slice: <start number>, <number> | uppercase }}

Example template

The following template creates an email address based on FIRST_NAME and LAST_NAME columns:

  • Uses the first character of the FIRST_NAME column, followed by a period and then the value of the LAST_NAME column.

  • Changes both column values to all lowercase.

  • Follows that with @example.com.

{{ First_Name | slice: 0, 1 | downcase }}.{{ Last_Name | downcase }}@example.com

When FIRST_NAME is John and LAST_NAME is Smith, the resulting value is:

[email protected]

Last updated

Was this helpful?