# Une famille
Une famille est un conteneur de variables. Elle peut contenir également des familles.
Pour décrire une famille il faut mettre au minimum un nom :
```xml
```
En YAML :
```yml
- family:
name: my_family
```
Cette famille doit être placé dans une balise [variables](../variables.md) :
```xml
```
En YAML :
```yml
variables:
- family:
name: my_family
```
Ou dans une autre famille :
```xml
```
En YAML :
```yml
variables:
- family:
name: my_family
variables:
- family:
name: second_family
```
Attention, une famille vide sera automatiquement supprimée.
## Description et aide de la famille
En plus d'un nom, il est possible de mettre une "description" à la famille. C'est une information "utilisateur" qui nous permettra d'avoir des informations complémentaires sur le contenu de cette famille :
```xml
```
En YAML :
```yml
variables:
- family:
name: my_family
description: 'This is a great family'
```
En plus de la description, il est possible de préciser une aide complémentaire :
```xml
```
En YAML :
```yml
variables:
- family:
name: my_family
help: 'This is a great family'
```
## Mode de la famille
Le [mode](../mode.md) par défaut d'une famille correspond au [mode](../mode.md) du mode le plus petit entre la famille parente, les variables enfants ou des familles enfants qui sont contenu dans cette famille.
Changer le [mode](../mode.md) d'une famille permet de définir le [mode](../mode.md) par défaut des variables ou des familles inclusent dans cette famille.
Pour définir le [mode](../mode.md) :
```xml
```
En YAML :
```yml
- family:
name: my_family
mode: expert
```
## Famille invisible
Il est possible de cacher une famille, ainsi que toutes les variables et des familles inclusent dans cette famille.
Cacher une famille signifie qu'elle ne sera pas visible lorsqu'on modifie la configuration du service.
Par contre ces variables sont accessibles lorsqu'on va utiliser ces variables.
Pour cacher une famille :
```xml
```
En YAML :
```yml
- family:
name: my_family
hidden: true
```