Témoignage
 

Rubrique « Info »

 



Écrivez à AILES !



Retour vers programmation



Retour vers les questions Objet



Retour vers les questions sur les 
Relations de Composition
 


Questionnaire Objet
Relations de Composition
[IngeObjet], [XPetard], [ustrab], [uqac]


    Hormis la classique différence 'est-un' (héritage) - 'a-un' (association), il est intéressant de bien garder à l'esprits les enjeux de l'utilisation de ces relations entre objets.


Relations de composition :
Comme rappelé dans l'article sur les associations, la relation de composition établit une correspondance sémantique stable qui véhicule une notion de "connexion", de "partie de" qui a pour conséquence l'insécabilité du contenant et du contenu : détruire le premier revient à détruire le deuxième.
On en distingue 7 ([IngeObjet]) :

Composant/Objet Traduit une relation structurelle ou fonctionnelle bien précise : 
un livre est composé de chapitre (structure ordonnée de chapitre)
Élément/collection Cette fois, il n'y pas pas de structure ou de fonction précise : 
un arbre fait partie d'une forêt, un programme est composé de classes.
Portion/masse les portions de masses sont des parties similaires entre elles mais aussi similaires à l'objet composite qu'elles composent!
la part de tarte fait partie d'une tarte.
Substance/objet modélise la relation entre un objet et ce dont il est fait. on ne peut supprimer un de ses composants sans supprimer l'identité même de l'objet : 
un processeur est composé de silicium.
Étape/événement Comme pour la relation composant/objet, il y a une structure précise, mais les étapes interviennent à différents moment alors que les composants interviennent "en même temps" :
une introduction fait partie d'une présentation, la conception fait partie d'un cycle de développement.
Phase/activité Ici le composant (phase) ne peut être séparé de l'activité, alors qu'une étape peut être séparé d'un événement :
la paiement fait partie d'un achat, une analyse syntaxique fait partie d'une compilation.
Lieu/espace composition spatiale avec l'expression de la situation géographique d'un lieu. Le composant (lieu) n'est pas séparable du composite (espace) :
le mont Blanc fait partie des Alpes


Ontologie employée

    L'ontologie est, précise [ustrab], une branche de la philosophie qui s'intéresse à l'essence des choses. 
En ingénierie des connaissances, ontologie désigne un modèle conceptuel du domaine, constitué de notions et de relations.

    [XPetard] rappelle la définition de l'ontologie la plus communément utilisée en informatique (proposée par Thomas Gruber, du Knowledge Systems Laboratory à Stanford) : 
« an ontology is an explicit specification of a conceptualization. [...] A conceptualization is defined by the
objects, concepts, and other entities that are presumed to exist in some area of interest, and the relationships that hold among them. Since the set of objects and relationships in an agent are reflected in the representational vocabulary, an ontology can be given as a set of definitions for this shared vocabulary. » 
Une ontologie est donc une organisation particulière des connaissances conceptuelles d'un domaine donné : « An ontology is a set of definitions of content-specific knowledge representation primitives: classes, relations, functions, and object constants » (toujours selon Gruber) qui s'appuie sur la notion de classe, ou concept, et sur une organisation généralement taxinomique des classes.


    On obtient alors un ensemble de :
- relations sémantiques qui se décomposent en :
   # relations hiérarchiques
       * hyperonymie / hyponymie : type / sous-type
       * méronymie / holonymie : partie / tout
   # relations non-hiérarchiques
       * antonymie : opposition
       * synonymie : sens identiques

    La réponse à la question "quelle est l'ontologie employée pour arriver à un tel classement des relations de composition ?" est donc :
« ontologie formelle basée sur un ensemble de relations sémantiques de type hiérarchiques et combinant :
- l'hyperonymie (type/sous-type)
- la méronymie (relation tout-partie qui comprend des aspects fonctionnel, de similarité, de séparabilité...) »

Rq ([uqac]) : Hyperonyme et méronymie font parties de la "sémantique lexicale"

L’hyperonyme est l’élément supérieur qui englobe l’hyponyme et qui a les mêmes propriétés que celui-ci avec au moins une en plus.
Par exemple : {érable} est l’hyponyme de {arbre}.
{arbre} est l’hyperonyme de {érable}
Le nombre de niveaux dans la hiérarchie peut varier mais dépasse rarement 10.
Ainsi, un cheval est un équidé, un ongulé, un herbivore, un mammifère, un vertébré, un animal, un être vivant.

méronymie/holonymie est la relation partie-tout.
X est un méronyme de Y si X est une partie de Y.
Y est un holonyme de X si X est une partie de Y.
Par exemple : {toit} est un méronyme de {maison}.
{maison} est un holonyme de {toit}.
Ainsi, pour le mot " horse ", cela donne comme méronyme les parties du corps du cheval : l’encolure, la queue, les sabots... et pour holonyme, le cheval est un membre de la famille des équidés.

Identification des relations de composition
On distingue dans [IngeObjet] 4 critères issus de la méronymie (tout-composant / partie-composé) :
Fonctionnalité dépendance fonctionnelle entre le composant et le composite.
Similarité les composants sont similaires entre eux et à l'objet composite auxquels ils appartiennent. (aussi appelé homéomérie)
Séparabilité il existe une séparation physique entre le composant et le composite, qui peuvent exister indépendamment l'un de l'autre
Simultanéité le composite a tout ses composant décrits en même temps.

On peut alors relier chaque composition à une ou plusieurs de ces caractéristiques (donc relier les deux types d'ontologie vues dans la réponse précédente, à savoir l'hyperonymie et la méronymie) :

Relations Exemples Fonctionnalité Similarité Séparabilité Simultanéité
Composant/objet roue/voiture + - + +
Élément/collection arbre/forêt - - + +
Portion/masse part/tarte - + + +
Substance/objet proc/silicium - - - +
Étape/événement analyse/cycle + - + -
Phase/activité paiement/achat + - - -
Lieu/espace oasis/désert - + - +



Relations d'inclusion :
    La relation de composition est une des trois relation d'inclusion, parmi lesquelles on distinguera :
    - la relation d'inclusion de classe : X est de type Y, X est une sorte de Y. Exemple : la relation de composition est une relation d'inclusion (!), un homme, une femme sont une "personne humaine".
Attention à ne pas confondre une activité (qui, elle, est en relation de composition avec une phase) avec un concept abstrait (en relation d'inclusion avec une classe). Exemple :
* L'analyse fait parti du développement (relation de composition : le développement étant découpé en plusieurs activités dont l'analyse fait parti : cf. cycle de développement)
* L'analyse est une sorte de développement (qui peut conduire à des livrables bien précis au sein d'une architecture fonctionnelle)
    - la relation d'inclusion  topologique : elle concerne une relation entre un contenu et :
* un contenant (la disquette est dans le lecteur de disquette),
* un espace (le processeur est dans l'ordinateur)
* une durée (la livraison a lieu dans la matinée)
On ne peut la confondre avec des relations de composition, car dans ces relations topologique, le contenu peut être séparé du contenant, le contenu n'est pas "une partie" du contenant, il n'y est pas "connecté".


               
 
Avertissement !
 
Décollage !  |  Présentation du site web "AILES"  | 
Infos générales  |  articles "Informatique"