6 juin 2012
Dernières avancées du développement d’OntoCASE:
Michel Héon [email protected]
www.cotechnoe.com
un dispositif d’ingénierie ontologique fondé sur une élicitation semi-formelle et graphique
de la connaissance d’un domaine
Présentation
• But– Présenter les derniers développements d’OntoCASE
• Structure– Architecture d’OntoCASE– Cadre conceptuel de l’évolution d’OntoCASE– Problématique– Contexte de recherche– Extension du langage MOT pour soutenir
l’expressivité d’OWL (MOT-O)– Bilan et perspectives
2
Architecture d’OntoCASE
3
Vision d’OntoCASE
• Permettre de formaliser un patrimoine de modèles semi-formels
• Offrir à un non-spécialiste de l’informatique, un moyen de construire une base de connaissances formelle (une ontologie)
• Instrumenter l’outil de modélisation d’un mécanisme de rétroaction qui instruit le modélisateur sur le sens formel de la représentation qu’il construit
• Instrumenter le processus d’ingénierie ontologique afin de :– formaliser un modèle semi-formel graphique– valider l’ontologie de domaine avant son déploiement
4
Description et cas d’usage
5
OntoCASE
Structure logicielle et technologique
6
OSGi/Eclipse
PDE EMF GMFWTP
Applicatif
Assistant applicatif
Module (Plug-In)
Infrastructure
eLi OntoForm OntoVAL
Jena/Pellet … Jess
TopBraid Composer API-Protégé(OWL-SWRL)
Caractéristiques de MOT comme système de représentation semi-formelle graphique
• Avantages– Permet dans un même diagramme de représenter graphiquement des connaissances
déclaratives, procédurales, stratégiques, factuelles et abstraites– Permet de représenter des modèles:
• Taxonomique et Méronymique (de composition) • De séquence et algorithmique• Ontologique (dans une certaine mesure)• De définition de normes et de contraintes• Et autres
– Offre une grande souplesse d’expression– Favorise le processus d’explicitation de connaissances tacites– La spontanéité n’est pas bloquée par la charge cognitive associée à une formalisation
trop poussée de la pensée– Par rapport à un langage informel, elle fournit un certain guidage représentationnel
(Suthers, 2003) qui structure le processus de modélisation. Le modèle qui en résulte constitue une première itération de formalisation.
• Désavantages:– comporte des ambiguïtés dans la sémantique du langage (polysémie)– les modèles ne peuvent pas être interprétés par un ordinateur
7
Cadre conceptuel d’OntoCASE
8
Degré de formalisme des langages de représentation des connaissances
9
Typologie des connaissances
10
Factuel: se rapporte à une chose de la réalité observable du domaine du discoursAbstrait: se rapporte à l’idée qu’on se fait d’une choseDéclarative: se rapporte au quoi d’une choseProcédurale: se rapporte au comment d’une choseStratégique: se rapporte au qui, pourquoi, quand d’une chose
Expressivité d’un langage et métamodélisation
Linguistique
Langage
Discours concernant un domaine
11
Dans le contexte d’OntoCASE, l’expressivité c’est la capacité que possède un langage à représenter les éléments d’un domaine du discours.
Méta-métamodèle (Niveau M3)
Méta-modèle (Niveau M2)
Modèle (Niveau M0 & M1)
Définit
Définit
Éléments d’exp
ressivité
d’un langa
ge
Processus de transformation d’un modèle
• La transformation c’est:
• Ceci permet de conserver la sémantique (la signification) du modèle d’origine
12
Traduire le contenu d’un modèle d’origine en modèle cible …
Expressivité du langage d’origine
Expressivité du langage cible
… en respectant l’expressivité du langage d’origine dans la notation du
langage cible
Modèle d’origine Modèle cible
Implémentation informatique selon l’architecture conduite par les modèles
13
Linguistique
Langage
Discours concernant
un domaine
Méta-métamodèle (Niveau M3)
Méta-modèle (Niveau M2)
Modèle (Niveau M0 & M1)
Définit
Définit
Problématique
14
Hétérogénéité des types de connaissances
• Comment soutenir l’expressivité de la représentation de connaissances procédurales et stratégiques dans un langage qui ne supporte que la représentation déclarative ?
• En créant une ontologie de l’expressivité de MOT qui peut, en ingénierie ontologique, porter le nom de: core ontology, domain specific ontology, ontologie de représentation de connaissances, méta-ontologie, etc. FOAF, cardv, SKOS sont considérées comme étant des ontologies de cette catégorie.
15
Expressivité du langage d’origine (MOT)
(Déclarative/Procédurale/Stratégique)
Expressivité du langage cible (OWL)
(Déclarative)
Expressivité du langage d’origine (MOT)
(Déclarative/Procédurale/Stratégique)
Expressivité du langage cible (OWL)
(Déclarative)
Ontologie de l’expressivité de MOT
Ontologie cible selon l’expressivité de MOTModèle MOT d’origine
M2
M2
M3
M0&M1
Contexte actuel d’OntoCASE
• L’expressivité de MOT est supportée dans l’espace ontologique par la méta-ontologie MOT.OWL
• Mais…• Certains éléments de l’expressivité d’OWL ne
sont pas supportés par MOT, par ex:– L’expression de restriction– L’expression d’opérateurs logiques comme
l’union, l’intersection ou la différenciation– Etc.
16
Contexte de recherche• But
– Permettre de modéliser une ontologie avec l’ensemble de l’expressivité d’OWL en utilisant le langage MOT
• Que faire ?– Définir des patrons de modélisation MOT pour représenter l’expressivité d’OWL– Rehausser l’expressivité de MOT afin d’inclure les éléments d’expressivité
d’OWL• Objectifs
– Conserver l’expressivité de MOTMOT-O <=> MOT + Ontologie
– Préserver la compatibilité d’eLi avec les modèles précédents (MOT)– Conserver le caractère semi-formel graphique du langage– Respecter le principe d’utilisation d’un nombre restreint d’éléments de
vocabulaire• Question
– Quels sont les éléments d’expressivité à ajouter à MOT pour permettre de modéliser des ontologies de manière graphique et semi-formelle ?
17
Extension du langage MOT pour soutenir l’expressivité d’OWL (MOT-O)
(Les défis)
18
La grande quantité d’éléments du vocabulaire d’OWL n’ayant aucune correspondance en MOT
Éléments du vocabulaire d’OWL ayant une
correspondance en MOT
Éléments du vocabulaire d’OWL n’ayant pas une correspondance « triviale » en MOT
owl:Classowl:ObjectPropertyrdfs:subClassOfrdfs:subPropertyOfrdfs:domainrdfs:rangerdfs:typeOfprédicatindividu
owl:DatatypePropertyowl:TransitivPropertyowl:SymetricPropertyowl:FunctionalPropertyowl:InverseFunctionalxsd:booleanxsd:stringxsd:integerxsd:floatowl:Restrictionowl:someValuesFromowl:allValuesFromowl:hasValueowl:minCardinality
owl:maxCardinalityowl:cardinalityrdfs:onPropertyowl:intersectionOfowl:unionOfowl:oneOfowl:DataRangeowl:complementOfowl:distinctMembersowl:AllDifferentowl:equivalentClassowl:equivalentPropertyowl:sameAsowl:disjointWithowl:differentFromowl:inverseOf
19
Autres défis
• Représentation:– Des espaces de nommage– D’éléments ontologiques appartenant à un autre
espace de nommage (méta-représentation)• Linguistique
– Faire correspondre l’expressivité d’un langage fondée sur une structure sujet/prédicat/objet (le OWL) à l’expressivité d’un langage fondée sur une structure entité/relation
20
Extension du langage MOT pour soutenir l’expressivité d’OWL (MOT-O)
(Les éléments)
21
Quelques éléments déjà implantés dans OntoCASE-eLi• L’instance (rdf:type) représentée par le lienI• La classe (owl:Class) représentée par le Concept• La propriété (owl:ObjectProperty) représentée par
le Principe• Le domaine (rdfs:domain) et l’image (rdfs:range)
d’une propriété représentés par un lienR• La spécialisation d’une classe (rdfs:subClassOf) et
d’une propriété (rdfs:subPropertyOf) représentée par un LienS
22
Restriction
23
[ a owl:Restriction ; owl:allValuesFrom vin:Winery ; owl:onProperty vin:hasMaker ] .
La restriction est une classe anonyme qui:• associe un prédicat (allValuesFrom, someValuesFrom, hasValue, etc) à
une classe• associe le prédicat onProperty à
une propriétéExemple de représentation en graph et N3
Cette classe anonyme est l’ensemble des instances qui sont associées aux instances de Winery par le prédicat hasMaker
Exemple de représentation en MOT-O
Sémantique en langage naturel
Le conteneur est l’objet graphique qui est utilisé pour agglomérer les éléments
graphiques nécessaires à la représentation d’une restriction
Collection
Le conteneur est aussi utilisé pour représenter une collection
24
:WineDescriptor rdf:type owl:Class ; owl:unionOf ( WineTaste WineColor ) .
Ex: l’union de deux classes
Ex: l’intersection entre une classe et une restriction:WhiteWine rdf:type owl:Class ; owl:intersectionOf ( :Wine [ rdf:type owl:Restriction ; owl:hasValue :White ; owl:onProperty :hasColor ]) .
L’ensemble des instances de WineTaste et de WineColor sont des instances de WineDescriptor
L’ensemble des instances de Wine dont le prédicat hasColor est associé à l’instance White sont des WhiteWine. Ou encore, Le vin blanc est un vin de couleur blanc
Prédicat
• Le lien prédicat est un lien dont le libellé correspond à la définition d’une propriété
25
Dans cet exemple, le lienI en rouge indique qu’il s’agit d’une situation où ce lien est inféré par le moteur d’inférence
Ce ChateauDYquemSauterne qui hasColor white est un Wine
Équivalence
Le lienE est utilisé pour représenter l’équivalence entre deux entités ontologiques
(Classe, individu, propriété)
26
Condition nécessaire et condition nécessaire et suffisante
• Le lien S est utilisé entre une classe et une restriction pour représenter une condition nécessaire
• Le lien E est utilisé entre une classe et une restriction pour représenter une condition nécessaire et suffisante
27
Représentation des niveaux d’abstraction
• Lien I entre connaissances abstraites (rdf:type)
• Stéréotype
• Méta-modèle (Méta-variable et Méta-valeur)
28
Métamodèle de la recette de cuisine
Modèle de domaineFaire un gâteau
Modèle de domaineFaire un pâté Chinois
Extension de l’expressivité ontologique
Les éléments d’expressivité d’OWL sont étendus à la représentation de connaissances procédurales et
stratégiques
29
Mélange de connaissances procédurales, stratégiques et factuelles
Pour rouler légalement en automobile il est nécessaire et suffisant de toujours rouler à
une vitesse permise et posséder un permis de conduire valide
Les membres d’une équipe de hockey se compose de gardiens
de but, d’attaquants, de défenseurs , etc.
L’union de connaissances stratégiques
Bilan et perspectives
30
Différence entre MOT et MOT-O
31
(Paquette 2002)
Différence entre MOT et MOT-O
Destination
Origine
Connaissance abstraite Connaissance factuelle OntologieConcept Procédure Principe Exemple Trace Énoncé Collection Restriction
Concept C, S, I, A, E
I, A, IP I, R I, C IP R C, S, E S, E
Procédure I, A, IP C, P, S, E, I
I, P, R IP I, C, P P, R C, S, E S, E
Principe I, A, R C, R, P, A, I
C, R, S, I, P, E
R C, I, P, R C, I, P, R C, S, E S, E
Exemple IP C, E IP RTrace IP P IP C, P, E C, P, RÉnoncé R P, R P, R R C, P, R C, P, R,
E32
Règles pour appliquer des liens dans MOT-O
L’ajout des nouvelles règles est indiqué en caractère gras
Étapes à venir
• Terminer l’implantation de MOT-O dans eLi 2.0
• Adapter l’ontologie de transformation pour le traitement de l’expressivité d’OWL
• Valider la cohérence de MOT-O sur le terrain
33
Perspectives d’OntoCASE avec MOT-O
• En gestion des connaissances– Permettrait de représenter les processus, les contraintes, les agents, les
concepts et des notions ontologiques associées à l’organisation– Servirait de langage ontologique neutre pour l’échange de connaissances entre
des intervenants d’horizons académiques variés– Les modèles ontologiques construits graphiquement pourraient être réutilisés par
des systèmes à base de connaissances ou dans le web sémantique– Dans une séance d’élicitation, il permettrait de valider à chaud, devant l’expert, la
sémantique de l’ontologie produite• En représentation de connaissances
– Permettrait de représenter dans une ontologie des connaissances de types autres que déclaratif, notamment, procédural et stratégique
– Permettrait de construire des ontologies formelles à partir d’une représentation semi-formelle et graphique
• En informatique– Permettrait une meilleure représentation des cas d’utilisation tout en maintenant
un pont langagier neutre entre les spécialistes informatiques et les spécialistes du domaine
– Permettrait de représenter graphiquement le contenu d’une ontologie OWL
34