Associations réflexives

DéfinitionAssociation réflexive

Une association réflexive est une association qui associe une classe avec elle-même.

Exemple

Association réflexive « ami »

Méthode

L'explicitation des associations est souvent utile dans le cas des associations réflexives non symétrique (ou chaque objet ne joue pas le même rôle).

AttentionAuto-association dans les associations réflexives

Une instance peut être associée avec elle-même dans le cas de d'une association réflexive.

Si l'on souhaite exprimer le contraire (une instance peut être associée avec d'autres instances de la même classe, mais pas avec elle-même) :

  • on ajoute une contrainte en UML (par exemple {les personnes ne se marient pas avec elles-mêmes}) ;

  • que l'on traduira en relationnel par une contrainte du type AVEC pk ≠ fk ;

  • que l'on traduira en SQL par une clause du type CHECK pk != fk.