# 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`) : ``` <variables> <variable name="zones_list" type="string" multi="True"> <value>zone1</value> <value>zone2</value> <value>zone3</value> </variable> <variable name="netwokd_configurations" type="filename" multi="True" hidden="True"/> </variables> ``` Calculons la valeur de la seconde variable à partir de la première : ``` <constraints> <fill name="calc_value"> <param>/systemd/network/10-</param> <param type="variable">zones_list</param> <param>-risotto.network</param> <param name="join"></param> <param name="multi" type="boolean">True</param> <target>netwokd_configurations</target> </fill> </constraints> ``` 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 : ``` <services> <service name="systemd-networkd"> <file file_type="variable" source="network" variable="zones_list">netwokd_configurations</file> </service> </services> ```