# Transformation

A node in the Workspace lineage graph represents a Transformation, which is essentially a Python function that accepts input data frames and outputs one data frame.

While the main purpose of a Transformation is to transform data, the system is flexible enough to also serve as Ingests, Load, Artifact Storage, Plots, and Dashboards.

On a technical level, a Transform is a Docker container running user code and generating the following resources under the path:

`/data/{TRANSFORM_ID}/`

* `code/`
  * Contains the full git repository.
* `datasets/`
  * Gets populated automatically by turning the user-returned LazyFrame into a Parquet file.
* `logs/`
  * Stores the `log.txt` file containing logging data from executing the user code.
* `meta/`
  * Contains `columns.json` file describing the column-level relationship to other Transforms.
* `artifacts/`
  * Can be used to store intermediate resources or HTML files.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.dataspace.ch/platform/transformation.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
