L'héritage du modèle entité-association

Comme dans le cas de l'orienté-objet, le modèle enitié-association nous permet d'utiliser des entités qui peuvent appartenir à plusieurs types. L'héritage se présente ici sous la forme de relations d'inclusions.

Une entité sous-type hérite d'une entité surtype (ou super-type).

Dans les exemples suivants, nous retrouverons généralement ce cas : A comme surtype, B et C comme sous-types de A.

Nous représentons la relation hiérarchique de l'héritage par un triangle, avec le surtype au dessus (lié au sommet du triangle par un trait), et les sous-types en dessous (liés à la base du triangle par un trait chacun).

L'entité sous-type est une spécialisation de l'entité surtype.

L'entité surtype est une généralisation de l'entité sous-type.

Une entité peut être un sous-type direct ou un surtype direct d'une autre entité si elle est directement liée à cette dernière.

Une entité peut être un sous-type indirect ou un surtype indirect d'une autre entité si elle est est liée à cette dernière, mais pas directement. C'est le concept de transitivité1.

La relation d'un sous-type vers son surtype est une relation is-a (l'entité sous-type est une entité surtype).

Contraintes de sous-type

Les différentes contraintes de sous-type dans le modèle enitié-association s'expriment au moyen de la combinaison de deux notions :

  • Disjonction : la notion porte sur le sous-type.
    Si chaque entité de la population d'un sous-type n'appartient pas aux autres sous-types, nous avons une disjonction.
  • Totalité : la notion porte sur le surtype.
    Si chaque entité du surtype fait partie d'un des sous-types, nous avons une totalité. Total est opposé à partiel.

Selon les combinaisons possibles, nous avons le tableau suivant.

Fout Infobrol

Kan deze pagina van de Infobrol-website niet weergeven

Type fout (18-01)

be\gaudry\webelement\table\BrolAbstractTable::adaptCellForHeader(): Argument #1 ($cell) must be of type be\gaudry\webelement\table\BrolCell|string, null given, called in /var/www/gaudry/infobrol/class/nav/BrolAbstractTable.php on line 358

Probeer het over een paar minuten opnieuw…

Keer terug naar de startpagina




Steph