# Soma Concepts

* [Record](#record)
* [Column](#column)
* [Directive](#directive)
* [Recipe](#recipe)
* [Transformation step](#transformation-step)
* [Data Axon](#data-pipeline)

The Soma in Turium employs concepts such as record, column, directive, recipe, transformation step, and data axon.

***

### Record  <a href="#record" id="record"></a>

A record is an assembly of field names and their corresponding values.

In this context, a record is depicted as a JSON object where the object key signifies the column names, and the value represents the plain depiction of the data, devoid of type specifications.

For instance:

```json
{
  "id": 1,
  "fname": "root",
  "lname": "joltie",
  "address": {
    "housenumber": "678",
    "street": "Mars Street",
    "city": "Marcity",
    "state": "Maregon",
    "country": "Mari"
  },
  "gender": "M"
}
```

***

### Column  <a href="#column" id="column"></a>

A column is a collection of field values of any of the supported data types, with each field value being part of a single record.

***

### Directive  <a href="#directive" id="directive"></a>

A directive is an individual instruction for data manipulation, designated to either transform, filter, or pivot a single record into no or more records. A directive can generate one or more steps to be executed by a data axon.

A directive can be depicted in text in this format:

```
<command> <argument-1> <argument-2> ... <argument-n> 
```

***

### Recipe  <a href="#recipe" id="recipe"></a>

A recipe is a collection of directives. It comprises one or more directives. For instance, the following recipe alters the data type of Fare to integer.

***

### Transformation step  <a href="#transformation-step" id="transformation-step"></a>

A transformation step is an execution of a data transformation directive, operating on a single record or a set of records. A transformation step can generate no or more records from the implementation of a directive. The Turium Genesis applies the transformation steps in the sequence listed in the recipe.

***

### Data Axon  <a href="#data-pipeline" id="data-pipeline"></a>

A data axon is a set of stages to be implemented on a record. The record(s) outputted from a stage are transferred to the next stage in the axon.

***


---

# 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.turium.ai/home/algoreus/turium-connector-documentation/turium-fabriq-overview/how-to-guides/soma-transformation-user-guide/soma-concepts.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.
