Attention

TYPO3 v10 has reached end-of-life as of April 30th 2023 and is no longer being maintained. Use the version switcher on the top left of this page to select documentation for a supported version of TYPO3.

Need more time before upgrading? You can purchase Extended Long Term Support (ELTS) for TYPO3 v10 here: TYPO3 ELTS.

YAML syntax

Following is an introduction to the YAML syntax. If you are familiar with YAML, skip to the TYPO3 specific information:

See also

A good general introduction to YAML syntax, basic data types, etc.:

The TYPO3 coding guidelines for YAML define some basic rules to be used in the TYPO3 core and extensions. Additionally, yaml has general syntax rules.

These are recommendations that should be followed for TYPO3. We pointed out where things might break badly if not followed, by using MUST.

  • File ending .yaml

  • Indenting with 2 spaces (not tabs). Spaces MUST be used. You MUST use the correct indenting level.

  • Use UTF-8

  • Enclose strings with single quotes (''). You MUST properly quote strings containing special characters (such as @) in YAML. In fact, generally using quotes for strings is encouraged. See Symfony > The YAML Format > Strings

Important

All text is case-sensitive.

To get a better understanding of YAML, you might want to compare YAML with PHP arrays:

PHP:

$a = [
    'key1' => 'value',
    'key2' => [
        'key2_1' => 'value'
];

$b = [
    'apples',
    'oranges',
    'bananas'
];

YAML:

# mapping (key / value pairs)
a:
  key1: 'value'
  key2:
    key2_1: 'value'

# sequence (list)
b:
  - 'apples'
  - 'oranges'
  - 'bananas'