---
title: Notation
description: Notation principles for the Flux functional data scripting language.
url: https://docs.influxdata.com/flux/v0/spec/notation/
estimated_tokens: 308
product: Flux
version: v0
---

# Notation

The syntax of the language is specified using [Extended Backus-Naur Form (EBNF)](https://en.wikipedia.org/wiki/Extended_Backus%E2%80%93Naur_form):

```
Production  = production_name "=" [ Expression ] "." .
Expression  = Alternative { "|" Alternative } .
Alternative = Term { Term } .
Term        = production_name | token [ "…" token ] | Group | Option | Repetition .
Group       = "(" Expression ")" .
Option      = "[" Expression "]" .
Repetition  = "{" Expression "}" .
```

A *production* is an expression constructed from terms and the following operators, in increasing precedence:

```
|   alternation
()  grouping
[]  option (0 or 1 times)
{}  repetition (0 to n times)
```

Lowercase production names are used to identify lexical tokens. Non-terminals are in [camel case](https://en.wikipedia.org/wiki/Camel_case). Lexical tokens are enclosed in double quotes (`""`) or back quotes ().

[Flux language specification](/flux/v0/spec/) [Representation](/flux/v0/spec/representation/)
