Or
[[or]] est un bloc conditionnel qui regroupe plusieurs blocs conditionnels existants.
A chaque bougie, il teste les identifiants listés dans condition_ids dans l’ordre indiqué.
Dès qu’au moins un bloc référencé est validé, le bloc [[or]] est lui-même validé et l’exécution se poursuit vers le bloc indiqué par son propre next_block_id.
Si aucun bloc référencé n’est validé, le bloc [[or]] n’est pas validé sur cette bougie et est réévalué à la suivante.
Déclaration du bloc
Une stratégie peut contenir plusieurs blocs [[or]].
Exemple
[[or]]
id = "or_condition"
condition_ids = ["cond1", "cond2"]
next_block_id = "next_step"Imbrication logique et transition
Les blocs référencés dans la clé condition_ids sont des enfants logiques du bloc [[or]]. Ils sont évalués dans l’ordre indiqué. Dès qu’un enfant est validé, le bloc [[or]] s’arrête, est validé sur cette bougie et poursuit ensuite vers son propre next_block_id lorsqu’il est utilisé seul.
Lorsqu’un bloc conditionnel est utilisé comme enfant de [[or]], il ne doit pas définir next_block_id. Cette règle s’applique à tous les enfants logiques, y compris [[wait]], [[and]] et un autre [[or]] lorsqu’ils sont imbriqués dans [[or]].
Si le bloc [[or]] est lui-même utilisé comme enfant d’un autre bloc logique, [[and]] ou [[or]], son propre next_block_id doit aussi être omis. S’il est utilisé comme enfant direct d’un bloc [[route]], il doit au contraire définir next_block_id, car [[route]] utilise la destination de l’enfant retenu.
Paramètres du bloc
| Paramètre | Description |
|---|---|
idTexte Obligatoire | Identifiant unique du bloc. |
condition_idsTableau Obligatoire | Identifiants des blocs conditionnels à évaluer. Ces identifiants doivent exister dans la stratégie et sont testés dans l’ordre. condition_ids est la clé à utiliser pour déclarer les enfants logiques du bloc. |
next_block_idTexte Conditionnel | Identifiant du bloc suivant à exécuter dès qu’une condition enfant est validée et que le bloc [[or]] est validé. Doit être omis lorsque ce bloc est lui-même utilisé comme enfant d’un bloc [[and]] ou [[or]]. Doit être défini lorsque ce bloc est utilisé comme enfant direct d’un bloc [[route]], car [[route]] suit le next_block_id de l’enfant retenu. |
Ce bloc ne produit aucune variable de sortie ; il se contente de combiner plusieurs conditions avec une logique OU.