# Syntax

In this example we see already all core elements of the language.&#x20;

In the following chapters you see many more examples, and all details about what kind of functions and operations exist, and how you can compose the data.

Example of a condition term:

<pre class="language-java" data-overflow="wrap" data-full-width="false"><code class="lang-java"><strong>$GridPowerConsumption > 500 AND ($CarChargingMode = 0 OR $CarChargingMode = 4) AND $IsLowTariffHours = 0
</strong></code></pre>

Example of a message term:

{% code overflow="wrap" fullWidth="false" %}

```java
"Sie beziehen aktuell " + ($GridPowerConsumption / 1000) + "kW vom Netz."
```

{% endcode %}

Following syntax base components exist:

## Literals

### Variables

#### Example

```java
$GridPowerConsumption
```

Example of a variable referring to the dataset with name "PowerConsumption"

### Values

#### Example

```java
1.5
```

Example of a *number* value&#x20;

```java
"it is cold"
```

Example of a *text* value&#x20;

```java
30min
```

Example of a *timespan* value

```java
now
```

Example of a time value

## Functions

#### Example

```java
AVG($PowerConsumption)
```

Example for calculating the average

## Operations

#### Example

```java
1.2 * 42
```

Example for multiplying two numbers

## Brackets

Brackets may be needed to control the resolution order of the terms in the expression. \
This is very familiar to us of course in mathematical terms:

#### Example

```java
((4 + 0.5) / (4 - 0.5)) * 2
```
