Le type de l''opérateur d'interaction permet de préciser le type d'opérateur utilisé dans un fragment combiné. Les différents types sont seq, alt, opt, break, par, strict, loop, region, neg, assert, ignore et consider.
- Alternatives
Alt exprime la possibilité de choisir entre différents comportements possibles en évaluant les conditions de garde associées à chacun des opérandes. Au plus un des opérandes pourra être exécuté.
L'opérande gardé par Else est choisi lorsqu'aucune des autres conditions n'est réalisée..
- Option
Opt représente un choix entre l'unique opérande proposé ou aucun.
- Arrêt (Break)
Break représente un scénario d'arrêt qui est exécuté à la place du reste du fragment d'interaction englobant.
- Parallèle
Par implique que les différents opérandes peuvent être exécutés en parrallèle. Les occurrences des événements des divers opérandes d'interaction peuvent être entrelacées de toutes les façons tant que l'ordre imposé par chaque opérande est préservé.
- Séquence faible (Weak Sequencing)
Seq désigne un entrelacement faible entre les comportements des opérandes défini par trois propriétés :
- L'ordre des occurrences d'événements à l'intérieur de chacun des opérandes est maintenu dans le résultat.
- Les occurrences d'événements de différentes lignes de vie venant de différents opérandes peuvent apparaître dans n'importe quel ordre.
- Les occurrences d'événements d'une même ligne de vie venant de différents opérandes sont ordonnés de telle sorte que l'occurrence d'événement du premier opérande apparaît avant celle du deuxième.
- Séquence stricte (Strict Sequencing)
Strict définit un séquencement strict entre les comportements des opérandes.
- Négation (Negative)
Neg représente un opérande invalide.
- Région critique
Critical représente une région qui doit être traitée de manière atomique, ce qui signifie que des occurrences d'événement ne peuvent pas être entrelacées avec celles de la région critique.
- Ignorer / Considérer
Consider et Ignore nécessitent qu'une liste de messages pertinents soient spécifiés.
Ignorer indique que les types de certains messages sont ignorés dans le fragment combiné.
Consider signifie que seuls certains messages vont être considérés à l'intérieur du fragment combiné. C'est équivalent à définir tous les autres messages comme 'ignorés'.
- Assertion
Assert représente une séquence qui est la seule valide pour un message donné.
Ainsi, toute séquence définie par un fragment d'interaction qui commence par les messages qui aboutissent à la séquence définie par le bloc assert et qui continue par un échange de messages ne respectant pas le bloc assert doit être définie comme invalide.
Les assertions sont fréquemment utilisées en combinaison avec les types Ignore et Consider.
- Boucle
Loop permet d'indiquer que l'opérande d'interaction sera répété un certain nombre de fois. Il est possible de spécifier un nombre minimum et un nombre maximum de boucles, ainsi qu'une expression de continuation de la boucle.