# Exemples de calcule
## Calculer les noms de modèle à généré à partir d'une variable
Créeons deux variables multiples, une pour accueillir la liste des éléments du nom variable (ici `zones_list`), la seconde étant le nom du fichier calculé (ici `netwokd_configurations`) :
```xml
zone1
zone2
zone3
```
En YAML :
```yml
variables:
- variable:
name: zones_list
type: string
multi: true
value:
- text: 'zone1'
- text: 'zone2'
- text: 'zone3'
- variable:
name: netwokd_configurations
type: filename
multi: true
hidden: true
```
Calculons la valeur de la seconde variable à partir de la première :
```xml
/systemd/network/10-
zones_list
-risotto.network
True
netwokd_configurations
```
En YAML :
```yml
constraints:
- fill:
- name: calc_value
param:
- text: /systemd/network/10-
- type: variable
text: zones_list
- text: -risotto.network
- name: join
- name: multi
type: boolean
text: true
target:
- text: netwokd_configurations
```
Le contenu de la variable `netwokd_configurations` sera alors :
- /systemd/netword/10-zone1/risotto.network
- /systemd/netword/10-zone2/risotto.network
- /systemd/netword/10-zone3/risotto.network
Enfin déclarer une balise file en utilisant ces deux variables :
```xml
netwokd_configurations
```
En YAML :
```yml
services:
- service:
- name: systemd-networkd
file:
- file_type: variable
source: network
variable: zones_list
text: netwokd_configurations
```