• Aucun résultat trouvé

6.2 Les notions de lien et d’attribution en OWL, GCs et UML

6.2.1 Lien

6.2.3 Lien versus Attribution . . . 150

6.1 Les notions d’individu et de donnée en OWL, GCs et UML

6.1 Les notions d’individu et de donnée en OWL, Graphes

Conceptuels et UML

6.1.1 Individu

Les individus sont des composants du niveau factuel d’une modélisation des connais- sances. Il s’agit d’entités spécifiques se reportant aux classes du niveau structurel de la modélisation.

Définition 6.1 (Individu) Un individu est une assertion d’une ou plusieurs classes. Un indi- vidu possède des caractéristiques propres qui sont conformes aux intensions de ces classes ; il

fait partie des extensions de ces classes.

Chaque classe, dont un individu est une assertion (on dira aussi une instance), constitue un type pour cet individu. Dans le cas où un individu est l’assertion de plusieurs classes, on dira qu’il est multi-typé. L’ensemble des types d’un individu peut être ramené à un unique « type conjonctif » (terme emprunté au modèle des GCs) pour l’individu. En effet, dans ce cas l’individu est dans l’extension de la classe d’intersection de ces différents types. Dans le cas particulier où les différents types d’un individu font partie d’une même hiérarchie de classes, le type retenu pour l’individu est le type le plus spécialisé puisque, par héritage, la classe la plus spécialisée est aussi une sorte-de la plus générale (voir la Section 4.2.1.1).

La Figure 66 présente un exemple déclarant l’individualphandde type la classePilote;

la Figure 67 présente l’individuserieyscomme une instance des classesDirecteuretPilote.

Figure 66 – L’individualphand, instance de la classePilote.

En OWL, un individu est nécessairement une instance de la classeowl:Thing, qui par

définition est la classe (la plus générale) de tous les individus. La propriété rdf:typeper-

met de préciser la ou les classes les plus spécifiques dont l’individu est une assertion. L’individu est identifié à l’aide d’un attribut RDFrdf:about, éventuellementrdf:ID.

Avec le modèle UML, nous assimilons un individu à un objet. Cet objet est donc dé- claré et typé au sein d’un diagramme d’objets. Le label de cet objet renseigne son ou ses types ainsi que son identifiant.

Figure 67 – L’individuserieys, instance des classesDirecteuretPilote.

Dans le modèle des GCs, un individu est modélisé par un sommet concept indivi- duel au sein d’un graphe conceptuel. L’étiquette de ce sommet concept renseigne d’une part son type et d’autre part l’identifiant associé à l’individu. Dans le cas d’un individu multi-typé, le type associé au sommet concept est un type conjonctif qui est formé de la conjonction de ses types.

6.1.2 Identité d’un individu

Sur les trois modèles du système de connaissance, seul le modèle OWL ne fait pas l’hypothèse du nom (à valeur d’identifiant) unique pour les individus, tandis que le mo- dèle UML et le modèle des GCs le font1. Ainsi, deux noms différents pour identifier

des individus devraient faire référence à deux individus différents en UML et avec les graphes conceptuels, tandis qu’avec OWL ils peuvent l’être ou non.

Nous souhaitons conserver une partie de cette souplesse de modélisation proposée sans l’hypothèse du nom unique pour identifier des individus. Pour cela nous faisons l’hypothèse que des individus munis d’identifiants différents sont par défaut deux à deux différents, mais qu’il est possible de préciser explicitement que certains individus sont identiques.

6.1.2.1 Individus identiques

Définition 6.2 (Individus identiques) Un individu i1 est ditidentique à un autre individu

i2si et seulement si l’identifiant de l’individu i2identifie aussi i1.

Nous considérons que cette notion identique est assimilée à une idée de synonymie ou d’alias, au niveau des identifiants et non des individus eux-mêmes. En effet, un individu doit être interprété comme une entité spécifique unique : parler de deux individus iden- tiques est dans l’absolu un non sens. Il s’agit donc pour cette notion de définir deux ou plusieurs identifiants qui permettent de référencer un (unique) individu.

Propriété 13 L’axiome identique entre deux individus est symétrique.

6.1 Les notions d’individu et de donnée en OWL, GCs et UML

Figure 68 – Les individuspierre,pierrotetpédrosont identiques.

L’exemple donné en Figure 68 présente la modélisation de plusieurs (identifiants d’) individus qui ne constituent en fait qu’un seul et même individu. Ici, les individuspierre, pierrotetpédrosont identiques.

Avec le modèle OWL, un individu identique à un ou plusieurs autres est modélisé par la propriétéowl:sameAs. Une assertion deowl:sameAsconstitue le prédicat d’un triplet

RDF dont le sujet est l’individu concerné et l’objet est l’individu identique (à gauche sur la figure).

Dans le modèle des GCs, la notion d’individus identiques ne semble pas exprimable. Il pourrait être envisager d’utiliser explicitement un type de relation,identiquepar exemple.

Cependant, cette relation serait mise « au même niveau » que les relations d’une modé- lisation et non comme une notion de modélisation à part entière. Notons qu’un lien de coréférence ne peut être utilisé, car il ne peut exister entre deux sommets concepts indivi- duels avec des marqueurs individuels différents. Nous suggérons la création de listes de

synonymesde marqueurs individuels, externe au modèle des GCs, qui peuvent être prises en compte à un niveau logiciel2lors de l’exploitation de graphes conceptuels contenant

de tels marqueurs individuels.

Pour le langage UML, nous proposons deux solutions pour modéliser cette notion. Dans une première, en partie supérieure gauche de la Figure 68, nous introduisons le stéréotype ≪sameAs≫ à utiliser sur un lien de dépendance entre deux individus iden-

tiques. Une seconde solution, en partie supérieure droite de la Figure 68, est d’utiliser un commentaire stéréotypé par≪sameAs≫, qui contient la liste des individus qui lui sont

identiques : une liste de synonymes. Remarquons que les commentaires n’étant pas pris en compte au niveau logiciel lors d’importation/exportation en XMI des diagrammes UML, nous évitons d’utiliser en pratique cette proposition de modélisation.

6.1.2.2 Individus différents

Définition 6.3 (Individus différents) Un individu i1 est ditdifférent d’un autre individu i2 si et seulement si l’identifiant de l’individu i2 n’identifie pas i1.

Cette notion différent agit, comme pour la notion identique, au niveau des identifiants d’individus. Par définition, un lien différent entre deux individus est symétrique.

La Figure 69 présente l’individu identifié parpierre, qui est considéré comme différent

de l’individu identifié parpilou.

Figure 69 – Les individuspierreetpilousont différents.

En OWL, un individu différent d’un autre est modélisé par la propriétéowl:differentFrom,

dont une assertion constitue le prédicat d’un triplet RDF ayant pour sujet l’individu concerné et pour objet l’individu différent (à gauche sur la figure).

Pour le modèle UML ou le modèle des GCs, cette notion de différence entre indivi- dus est implicite. Cela est dû à l’hypothèse du nom unique qui est faite avec ses deux approches de modélisation. Le terme « nom » est à interpréter par identifiant.

6.1.2.3 Individu anonyme

En modélisation des connaissances, il peut être intéressant de spécifier dans une base de faits l’existence d’un individu sans pour autant en connaître son identité. Il ne s’agit cependant pas de générer un base de connaissances « floue », mais incomplète. Le travail d’un raisonneur pourrait par exemple aider l’utilisateur à identifier cet individu en le considérant comme identique à un individu non anonyme.

Définition 6.4 (Individu anonyme) Un individu est dit anonyme si et seulement si il ne pos- sède pas d’identifiant et n’est identique à aucun individu non anonyme.

Notons qu’un individu anonyme dispose d’un type, a minimaThing, et que dans l’absolu

il ne peut être ni considéré comme identique ni comme différent d’un ou plusieurs autres individus. Nous considérons un individu anonyme comme une variable au sens de la logique classique : une variable, d’un type donné, peut référencer successivement - c’est- à-dire de manière variable - différents individus de même type. L’exemple en Figure 70(a) présente un individu anonyme de typeAuto.

6.1 Les notions d’individu et de donnée en OWL, GCs et UML

(a) Individu anonyme. (b) Gestion de plusieurs individus anonymes.

Figure 70 – La notion d’individu anonyme.

Avec le modèle OWL, un individu anonyme n’est pas modélisable car toute assertion de classe doit posséder un identifiant (via un attributrdf:aboutourdf:ID). En effet, tout do-

cument OWL doit respecter la structuration RDF en triplets <sujet, prédicat, objet>, avec ici

<individu, type, nom_classe>(c’est-à-dire l’individu, nécessairement identifié pour constituer

le sujet, est une instance de la classe mentionnée).

Pour le modèle UML, un individu anonyme est modélisé par un objet qui n’est pas nommé. C’est-à-dire que le label associé au rectangle représentant l’individu anonyme est formé directement du caractère ‘:’ suivi de son ou ses types ; le champ correspondant au nom est laissé vide.

Il existe cependant une distinction notoire d’interprétation entre un individu ano- nyme modélisé dans le modèle des GCs et un individu anonyme modélisé en UML. Alors que, par défaut, dans le modèle des GCs deux individus anonymes ne peuvent être inter- prétés ni comme différents ni comme identiques, dans le modèle UML ils sont nécessaire- ment considérés comme différents. Cette distinction, illustrée en Figure 70(b), devra être prise en compte lors de raisonnements sur les connaissances modélisées dans le système.

6.1.3 Donnée

Une donnée est un élément « brut » du niveau factuel d’une modélisation, comme l’entier42ou la chaîne de caractère"Hello world".

Définition 6.5 (Donnée) Une donnée est un élément dans l’extension d’un ou plusieurs data- types. Chacun de ces datatypes constituent untype pour la donnée. Une donnée est caractérisée

par unevaleur.

Avec le modèle OWL et le modèle UML, nous associons à la notion de donnée la notion de valeur de datatype, issue de ces deux modèles.

Comme mentionné au Chapitre 4, classe et datatype sont relativement proches d’un point de vue conceptuel ; ces deux ressources sont modélisées de manière analogue par

un type de concept lors de l’application des règles d’instanciation de notions dans le modèle des GCs. Il en résulte que dans ce modèle nous modélisons une donnée par un sommet concept, à la manière d’un individu. L’analogie au niveau assertionnel entre in- dividu et donnée s’arrête là, car un marqueur individuel d’un sommet concept ne peut cependant pas constituer la valeur d’une donnée. En effet, le nommage d’un marqueur individuel n’a aucune importance - sauf peut être à un niveau implémentation -, seul son aspect unique compte, tandis que par exemple42peut aussi bien identifier un entier, un

nombre réel ou encore une chaîne de caractères.

Notons qu’une donnée générique, c’est-à-dire ne disposant pas de valeur, ne peut être modélisée en OWL ni en UML car lors de la déclaration et du typage d’une donnée la valeur qui caractérise cette donnée doit nécessairement être précisée. Le modèle des GCs considéré (Section 1.2.4) offre par contre la possibilité de modéliser une donnée générique par un sommet concept particulier appelé un sommet concept donnée non-valuée.

6.2 Les notions de lien et d’attribution en OWL, Gra-

phes Conceptuels et UML

Les liens et attributions - ou plus exactement les instances de ces deux notions - per- mettent dans une base de faits de caractériser des individus en les liant à d’autres indivi- dus ou à des données.

6.2.1 Lien

Un lien est un composant du niveau factuel d’une modélisation des connaissances qui associe deux individus entre eux.

Définition 6.6 (Lien) Un lien entre deux individus est une assertion d’une relation binaire. Cette relation constitue letype du lien. Un lien obéit à la définition de son type, c’est-à-dire que

le premier argument du lien est un individu dans l’extension du domaine de la relation et le second argument un individu dans l’extension du co-domaine.

La Figure 71 présente un exemple de lien : une assertion de la relationdirigerentre les

individusserieysetTRMR; la relationdirigerest présentée en Figure 65.

En OWL, nous faisons correspondre à la notion de lien celle de rôle d’objet. Ainsi, l’identifiant de la relation, qui est le type du lien, est utilisé comme prédicat d’un triplet RDF où le sujet est le premier argument du lien et l’objet le second argument.

Dans le modèle des GCs, un lien est modélisé par un sommet relation qui est typé par un type de relation représentant une relation (voir la Section 5.1). Ce sommet relation a donc pour premier voisin un sommet concept dont le type est le premier argument du type de relation ou de tout subsumé et pour second voisin un sommet concept dont le type est le second argument ou de tout subsumé.

6.2 Les notions de lien et d’attribution en OWL, GCs et UML

Figure 71 – Lien entre deux individus.

Avec le modèle UML, un lien est modélisé par un trait continu entre deux objets (c’est- à-dire deux individus). Ce trait possède un label formé d’un texte souligné avec l’iden- tifiant du type du lien. Il n’y a pas d’ambiguïté quant à l’ordre des arguments du lien dans cet exemple, car il suffit de « regarder » leurs types et se reporter à la définition de la relation qui est le type du lien. La relation dirigerayant pour domaine et co-domaine

respectivement les classesDirecteuretÉquipe, l’individuserieysétant une instance deDirec- teur est interprété comme le premier argument du lien en Figure 71. Il en va du même

constat pour pour le second argument. De manière générale, nous représentons explici- tement en UML l’ordre des arguments d’un lien en nommant les extrémités de ce lien par

firstetsecond. Ceci nous permet de traiter cet ordre dans le cas général, notamment pour

les assertions d’une relation dont le domaine et le co-domaine sont la même classe (voir par exemple la relationdescendanten Section 5.2), ou plus généralement sont des classes

issues d’une même hiérarchie et que le le premier et second arguments du lien sont dans l’extension de la classe la plus spécialisée.