Bonjour tous le monde
je voudrais définir la contrainte de clé unique de ma classe Personne en OCL, je le fais comme suit

context Personne inv:
Personne.allInstances()->forAll(p1, p2 |
p.1 <> p2 implies p1.noPersonne <> p2.noPersonne )

mais le problème, c'est que c'est pas économique car pour chaque personne il va itérer sur toutes les instances de la classe Personne (inutile).

je cherche une autre façon de faire plus économique ,genre itération une seule fois...

Merci de votre aide!