# Real-Time Data Transformation

JENTIS provides powerful real-time data transformation features that allow you to take full control over how values are processed and shared with third-party vendors.

### Concept

The general concept of JENTIS data handling follows a **data chain** approach:

1. **Extract values**
   * Data is first captured from the **Client-Side environment** (e.g., a visitor’s browser).
   * This value can be directly assigned (*1:1 mapping*) to a placeholder and shared with a third-party vendor.
2. **Enrich on the Server-Side**
   * **Server-Side variables** allow interaction with multiple Client-Side values.
   * They can also leverage **JENTIS Storage** to enhance and prepare data before sending it further.
3. **Apply transformations**
   * Every variable—client-side or server-side—can be wrapped in one or more **transformation functions**.
   * Transformation functions take an **input parameter** and return a new **output parameter** based on the defined logic.

### Transformation Functions

Transformation functions allow you to flexibly manipulate values before they are shared with external systems. Some examples include:

* **Remove PII**: Strip personal identifiable information from URL parameters.
* **Normalize data**: Transform all text values to lowercase.
* **Custom logic**: Apply any other business rules needed to ensure compliance and data quality.

### Key Benefits

* Apply transformations at **any level**: variable, placeholder, or tag.
* Independent of **Client-Side or Server-Side execution**.
* Process data once and re-use the transformed results across multiple connectors.
* Move transformation logic to the **JENTIS Infrastructure**, reducing load on the website while ensuring privacy and compliance.

With these capabilities, JENTIS enables you to capture raw data once and process it in a controlled, flexible, and compliant way—before it ever reaches third-party vendors.

### How it looks in the JENTIS DCP

Just go to the **Tag Edit View**, click on the variable you want to transform, and select **Wrap with Function**. Then choose the transformation function you want to apply.

See the following screenshot for how to add it and how it looks afterwards:

<figure><img src="https://2315305008-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fy15ncufYr341K5U8q6Of%2Fuploads%2FCcmVpPR7UmAkoDo8Q7Ss%2Fimage.png?alt=media&#x26;token=c90f04be-5fec-4cdc-927d-d0d7ce3d6012" alt=""><figcaption></figcaption></figure>

<figure><img src="https://2315305008-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fy15ncufYr341K5U8q6Of%2Fuploads%2FbdCEiRJaMzIFQx0s3A23%2Fimage.png?alt=media&#x26;token=1854e1f6-36af-49f2-b737-471c74120dca" alt=""><figcaption></figcaption></figure>
