Objectifs
Interopérabilité des Systèmes d’Information:
Capacité d’un SI ou de ses composants de
partager des informations ou des applications.
Comment l’usage de référentiel métier peut
améliorer la communication entre des systèmes
d’information…
Vrai pour les thematiciens et aussi vrai pour les
informaticiens
Mais attention il y a plusieurs niveaux d’interopérabilité…
Objectif facile a atteindre techniquement ?
eXtensive Markup Language (XML)?
Et dans la réalité qu’est ce qui se passe…
ENITAB 2010
2
Plan
Introduction
• Données, informations, connaissances
• Modèles informatique
• Ontologies
Types d’ontologies / Différents objectifs
Ontologies Terminologiques : interopérabilité lexicale
• Exemple, Format, Type de Système d’information
Ontologie de Données: interopérabilité de données
Ontologie Logique: interopérabilité d’objets
Construction d’ontologies
3
ENITAB 2010
Données, Informations, Connaissances
Donnée: un élément d’information
percevable
manipulable
Information: donnée +
sens + contexte
type
Connaissance: information +
stabilité + croyance
abstraction+ traitement
généralisation d’un ensemble d’information
toujours propre à une personne
partagée par d’autres personnes
4
ENITAB 2010
Modèle informatique
Entités en BD Relationnelle:
information + regroupement
+ vérification
Données quantitatives et
qualitatives
Stocker une grande masse de
données dans le but de faciliter
leur interrogation et leur gestion.
Éviter la redondance pour éliminer
les incohérences de Mise à Jour
Organisation se construit sur le
partage de données communes
(inclusion d’attributs).
Vérifier la cohérence des données
lors de l’insertion et de la MàJ
contraintes d’intégrité
Hypothèses du monde fermé
Ce qui n’est pas dans la BD n’existe
pas…
Animal
IdentificationCode: String
SexCode: String
BirthDay: Date
RaceCode: String
EspeceCode: String
Weight: Number
Espece
IdentificationCode: String
Name: String
6
ENITAB 2010
Modèle informatique
Classes objet au sens POO:
information + généralisation + traitement
Données quantitatives et qualitatives
Organiser les traitements complexes sur ces données
La classe « animal » a des données avec des méthodes
associées « beDeseased »
La hiérarchie des classes est construite sur les méthodes
(les comportements)
Grace au typage (la classe) certains traitements sont
impossibles « getMarried »
Animal
Identification: String
Sex: String
BirthDay: Date
Race: String
Bovin
beDeseased() getMilkProduction()
7
ENITAB 2010
Modèle informatique
Connaissances formelles en IA:
information + généralisation + vérification +
raisonnement
Description qualitative des objets
Type + conditions d’appartenances d’un objet à un type
Il n’y a pas d’entreprise agricole sans exploitation agricole
Raisonnement = traitement particulier
Validation du modèle
Classification automatique de la hiérarchie
Inférence = création de nouvelles connaissances
Hypothèse du monde ouvert
EntrepriseAgricole ExploitationAgricole
estAssocié
Organisation
*1
8
ENITAB 2010
Schéma général: donnée, information,
connaissances
Données
Information
Connaissances
Perception
Sens dans un contexte
Résultat d’un processus d’apprentissage: une
généralisation d’un ensemble d’information que
l’on va mémoriser
Données
Données typées
Classes en POO
Description sous forme d’attribut (description
quantitative & qualitative ) + méthodes
(traitements)
Classes en IA
Des traitement particuliers sur les données
qualitatives
Différent niveau de granularité : information
structurée non structurées
BD Relationnelle Données fortement structurées optimisées pour le
stockage
9
ENITAB 2010
Exercices: formes géométriques
Point
Ligne
Triangle
Triangle rectangle
Carré
Rectangle
Trapèze
Parallélogramme
Cercle
ENITAB 2010
10
Ontologies définition
Ontologie avec un O majuscule
(philosophie):
Une science: une branche de la métaphysique
qui a pour objectif l’étude de l’être, c'est-à-dire
l'étude des propriétés générales de tout ce qui
est…
Ontologies au pluriel avec un o minuscule
(informatique):
Outils informatiques
résultat d’une modélisation d’un domaine
d’étude
défini pour un objectif donné
acceptée par une communauté d’utilisateurs …
11
ENITAB 2010
Term
Les composants des ontologies
12
Concept
Instance
Semantic Relation
Instance
Relation
Logical Definition
Concept
Term
Instance
Property
Semantic Relation
Term Linguistic Relation
Textual Definition
Classe
Term
Instance
Relation
hasLabel
Property
Semantic Relation
Linguistic Relation
Natural language
Definition
Logical formula
isInstanceOf
hasArgument
hasID hasArgument
hasArgument
hasName
hasName
*
*
*
1
*
*
1
1
* *
**
1
*
* *
*
*
Terminological
Ontology
Data Ontology Logical Ontology
Semantic
Relation
Instance
Relation
ENITAB 2010
A relatively large
natural stream of
water
Ontologies Terminologiques: Exemple
14
rivière
fleuve
river
rio
A relatively large
natural stream of
water
Water course
Una corriente
relativamente larga
corriente de agua natural
Cours d’eau naturel de moyenne ou
de faible importance, qui en
principe n’aboutit pas directement à
la mer
Cours d’eau naturel
généralement important
(plus spécialement lorsque
ce cours d’eau se jette dans
la mer)
ENITAB 2010
Ontologies Terminologiques: Exemple
15
rivière
fleuve
river
rio
A relatively large
natural stream of
water
Water course
Una corriente
relativamente larga
corriente de agua natural
Cours d’eau naturel de moyenne ou
de faible importance, qui en
principe n’aboutit pas directement à
la mer
Cours d’eau naturel
généralement important
(plus spécialement lorsque
ce cours d’eau se jette dans
la mer)
A relatively large
natural stream of
water
ENITAB 2010
Ontologies terminologiques: format
RDF
Resource
Description
Framework
Douglas Richard Hofstadter. Gödel, Escher, Bach: an Eternal Golden
Braid. Basic Book 1999 (ISBN 0-465-02656-7)
<rdf:Description
rdf:about='http://cemagref/enitab/module7'>
<titre>Les Ontologies dans les Systèmes
d’Information</titre>
<enseignant>Catherine Roussey</enseignant>
</rdf:Description> 18
ENITAB 2010
Interopérabilité lexicale: Système de
Recherche d’Information
Système de
Recherche
d’Information
Multilingue
1
2
3
Corpus multilingue Requête
Liste de documents
ordonnés
Ressource
sémantique
multilingue
Ontologie
terminologique
19
ENITAB 2010
Interopérabilité lexicale:
Semantic Web Search Engine
mapping
annotationrequête
résultat
Moteur
d’inférence
Ontologie
du web
Base
d’annotation
Pages Web
identifiées par
des URI
20
annotation
annotation
ENITAB 2010
Ontologies de Données: Composants
21
Classe
Term
Instance
Relation
hasLabel
Property
Semantic Relation
isInstanceOf
hasID hasArgument
hasArgument
hasName
hasName
1
1
*
1
*
* *
*
1
*
1
1
Instance
Relation
Natural language
Definition
*
1
ENITAB 2010
Ontologie de données: Format XML
Unified Modeling Language (UML)
XML Metadata Interchange (XMI)
http://www.omg.org/technology/documents/formal/xmi.htm
Geographic Markup Language (GML)
http://www.opengis.net/gml/
ENITAB 2010
25
Interopérabilité de Données: Format d’échange
de données
Blue
data
Blue
system
Green
data
Green
system
Red
data
Red
system
Standard
d’échange de
données
Ontologie de
Données
26
Project: SYGEMO, SIE Pesticide
ENITAB 2010
Interopérabilité des modèles UML
Stage de Marc Zimmermann soutenue en sept 2010
Au Cemagref les modèles de données sont décrit
avec UML à l’aide d’Ateliers de Génie Logiciel
(AGL) :
décrire les modèles grâce à UML
générer du code
stocker le modèle dans un fichier XMI
27
ENITAB 2010
Interopérabilité des modèles UML: Problème
Evolution de la norme UML (1.3, 1.4, 2.0, 2.1,…)
Evolution de la norme XMI (1.0, 1.1, 1.2, 2.0, 2.1,…)
1 modèle UML = 1 version de UML + 1 version de XMI
De nombreux AGL (dans plusieurs versions) sont
utilisés par des agents du CEMAGREF
Est-ce qu’un modèle généré à Anthony en 1998 peut être
utilisé à Clermont en 2010 ?
Interopérabilité ?
28
ENITAB 2010
Interopérabilité des modèles UML: Solution
UML
(XMI)
UML
(XMI)ontologie
(OWL)
Construire le workflow XML pour l’interopérabilité
des données
Application Model Ontology StyleSheet
Transformation (MOST) disponible
XML, XMI, XSLT, OWL
30
ENITAB 2010
31
Interopérabilité des modèles UML: Conclusion
Modèles de données incorrectes
Mauvaise sérialisation en XMI des AGL:
• XML non conforme
• L’instance XMI ne suit pas la DTD ou le XSD associé à la
norme UML
• Le norme UML 2.1 semble être plus stable.
Mauvaise modélisation des utilisateurs
• Redéfinition de type simple,
• Utilisation de classes non définies
• Redéfinition d’attributs déjà existants: name, label, nom, id
• Manque de commentaires
• Manque de modularité
ENITAB 2010
32
Interopérabilité des modèles UML: Conclusion
Correction des modèles
par transformation des erreurs types (antipatrons)
Définir des bonnes pratiques (patrons de conception):
• Modèles de données de qualité et validé
• Normaliser le vocabulaire
• Réutilisable et combinable (modularité)
• Consensuel: Fusionner des modèles existants
ENITAB 2010
Ontologies Logiques: Exemple
Relations
topologiques définies
par l’utilisateur
NTPP (object1, object2)
EC (object2, object3)
NTPP (object3, object4)
…
code
generator
Fichiers de configuration
Transformation
rules
<owl:Class
rdf:about="#object1 ">
<rdfs:subClassOf
rdf:resource="#i_object2"/>
<rdfs:subClassOf
rdf:resource="&owl;Thing"/>
</owl:Class>
Ontologie logique
object1
object6
Protégé
+
DIG
reasoner
6
1 3
52 4
Liste des incohérences
Validation automatique de contraintes topologiques
38
ENITAB 2010
Ontologies Logiques: : format
OWL:
Ontology
Web
Language
OWL Lite
OWL DL
OWL Full
39
www.w3.org 2007
ENITAB 2010
Interopérabilité d’Objets:
médiation et intégration de bases de données
Blue
data
Green
data
Red data
query
retrieve
Wrapper for
the Blue DB
local schema Wrapper for
the Red DB
Mediator
mapping
local schema
Mediated
virtual
database
local schema
Global
schema
40
FORUM project
ENITAB 2010
Interopérabilité d’Objets:
médiation et intégration de bases de données
41
query
retrieve
PhenomenOntology
Mapping
blue
database
blue
database
Gomez-Pérez, A Ramos Gargantilla JA, Rodríguez Pascual A, Vilches Blázquez LM (2008). The
IGN-E case: Integrating through a hidden ontology Lecture notes in geoinformation and
cartography p 417-434
IGN-E project : the Phenomen Ontology
ENITAB 2010
Ontologies = des choix
1. Choix des traitements/ usage: pourquoi faire?
2. K partagée
consensus sur un domaine
Théorie minimale pour comprendre le domaine
3. Modélisation
Choisir des concepts
Choisir des invariants ou primitives qui permettent de
différencier les concepts les uns des autres
• propriétés
• relations
construire une taxonomie (une hiérarchie)
4. Nommer les éléments
Vocabulaire normalisé
5. Formalisme:
choix d’un langage capable d’effectuer les traitements
demandé en 1.
43
ENITAB 2010
Méthodes de construction d’ontologies
Cycle de vie en plusieurs étapes
1. Spécification
2. Acquisition de Connaissances
3. Formalisation
4. Évaluation
5. Documentation
44
ENITAB 2010
Spécification
a quoi va servir l’ontologie?
Identifier le but de l’application
limiter le domaine
les objets
les usagers, les points de vues
les sources documentaires
Les autres ontologies
Trouver les questions auxquelles devra répondre
l’ontologie.
Trouver les scénarios d’utilisation des connaissances
45
ENITAB 2010
Acquisition des connaissances
Réutiliser des ontologies existantes
top level ontology
Ontologie d’une partie du domaine ex. ontologie des unités
Identifier les termes importants
normaliser le vocabulaire
Identifier les concepts et les relations du domaine
Définition écrite en Langue Naturelle
Trouver les conditions minimales et suffisantes pour dire qu’un objet
appartient à une classe donnée.
Trouver les différences entre classes sœurs et classe mère/ classe fille
Stratégie différente suivant les sources étudiées:
Thesaurus,
Base de données,
texte etc…
46
ENITAB 2010
Construire la taxonomie de concepts
Hiérarchie avec une relation is a ou relation de
subsomption
3 stratégies pour identifier les concepts
Bottom-up :
spécialisé général,
concepts très détaillés pas nécessairement utiles
Top-down:
général spécialisé,
facilite la cohérence et la réutilisation mais dirige la
conception suivant un point de vue
Middle-out:
concept important spécialisé, général;
ontologies modulaires, facilite la stabilité des résultats
47
ENITAB 2010
Formalisation
Coder l’ontologie dans un langage formel
des outils: Protégé, Kaon, OntoEdit …
Trouver les classes, les attributs, les types, les
contraintes
Peupler l’ontologie: instancier les classes base
de connaissances
48
ENITAB 2010
Evaluation
Construction d’ontologie: un domaine récent
Valider la taxonomie:
Pas de cycle
Toutes les instances d’une classe sont aussi les instances
de la classe mère
Hiérarchie homogène: pas de classe isolée, pas de listes
de sous classes trop importante
Tester l’application
Répondre aux questions de la phase de spécification
49
ENITAB 2010
Documentation
Donner des explications
Expliquer les choix de modélisation
Définition en langage naturel
Concepts, propriétés, relations, contraintes
Lier les concepts aux sources dont sont issues les
définitions
50
ENITAB 2010
Conclusion
Toutes les méthodes sont faites pour des experts en
ontologies qui communiquent avec des experts du
domaine
La phase d’acquisition des connaissances est la
plus longue et la plus fastidieuse.
Écrire une ontologie valide n’est pas évident
Différence entre un concept et un terme, une instance et
une classe, …
Trouver un consensus entre experts du domaine
La relation partie-de n’est pas la relation hiérarchique de
la taxonomie
51
ENITAB 2010
Bibliographie sur la construction d’ontologies
Outils
Neon Toolkit
KAON
Protégé
…
Article de Références
Gómez-Pérez, A. (1998). Knowledge sharing and reuse.
Handbook of Applied Expert Systems. Liebowitz, editor,
CRC Press.
Gómez-Pérez, A., Fernandez-Lopéz, M., Corcho, 0 (2003).
Ontological Engineering, Springer Editor.
Uschold, M. and Gruninger, M. (1996). Ontologies:
Principles, Methods and Applications. Knowledge
Engineering Review 11(2)
Gruber, T. R. Toward principles for the design of ontologies
used for knowledge sharing. Padova, Italy, 1992.
52
ENITAB 2010
Conclusion: réutilisation de connaissances?
Fichier XMI
Ontologie de données
Fichier OWL
« ontologie logique »
Extraction
Enrichissement
Fichier OWL
amélioré
Détection
d’erreurs
53
ENITAB 2010
Construction d’une ontologie logique à partir
d’une ontologie de données.
Extraction des concepts et de leurs relations à partir
des classes et des associations
Enrichissement à partir des commentaires et de la
documentations de chaque classe: contraintes,
détection d’erreurs, ajout de nouveaux concepts
Vérification de la cohérence du modèle final
Ontologies in Agriculture
Catherine ROUSSEY
Vincent SOULIGNAC, François PINET, Jean-Claude
CHAMPOMIER, Vincent ABT, Jean-Pierre CHANET,
Stephan BERNARD, Marc Zimmermann