terminaison d'association

Une terminaison d’association identifie le type d’entité situé à l’une des extrémités d’une association et le nombre d’instances du type d’entité à cette extrémité. Les terminaisons d'association sont définies dans le cadre d'une association ; une association doit avoir exactement deux terminaisons d'association. Les propriétés de navigation permettent de naviguer d’une terminaison d’association à l’autre.

Une définition de terminaison d'association contient les informations suivantes :

  • Un des types d'entité impliqués dans l'association. (Obligatoire)

    Notes

    Pour une association donnée, le type d'entité spécifié pour chaque terminaison d'association peut être le même. Ceci crée une association automatique.

  • Multiplicité de terminaison d’association qui indique le nombre d’instances du type d’entité qui peuvent figurer à une extrémité de l’association. La multiplicité de terminaison d'association peut avoir une valeur égale à un (1), zéro ou un (0..1), ou plusieurs (*).

  • Nom de la terminaison de l'association. (facultatif)

  • Informations sur les opérations effectuées sur la terminaison d'association, telles que CASCADE sur DELETE. (facultatif)

Exemple

Le diagramme suivant montre un modèle conceptuel avec deux associations : PublishedBy et WrittenBy. Les terminaisons d'association pour l'association PublishedBy sont les types d'entité Book et Publisher. La multiplicité de la terminaison Publisher est un (1) et celle de la terminaison Book est plusieurs (*), ce qui indique qu'un éditeur publie de nombreux livres et qu'un livre est publié par un seul éditeur.

Example model with three entity types

ADO.NET Entity Framework utilise un langage spécifique à un domaine (DSL), appelé CSDL (Conceptual Schema Definition Language), pour définir des modèles conceptuels. Le CSDL suivant définit l'association PublishedBy présentée dans le diagramme ci-dessus. Notez que le type, le nom et la multiplicité de chaque terminaison d'association sont spécifiés par des attributs XML (Type, Role et Multiplicity, respectivement). Des informations facultatives sur les opérations effectuées sur une terminaison sont spécifiées dans un élément XML (OnDelete). Dans ce cas, si un éditeur est supprimé, tous les livres associés le sont aussi.

  <Association Name="PublishedBy">
    <End Type="BooksModel.Book" Role="Book" Multiplicity="*" />
    <End Type="BooksModel.Publisher" Role="Publisher" Multiplicity="1" >
  <OnDelete Action="Cascade" />
</End>
  </Association>

Voir aussi