Post on 20-Jun-2015
description
Ontologies et système d’information=Interopérabilité?
Catherine ROUSSEY
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 20102
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
3ENITAB 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
4ENITAB 2010
Données, Informations, Connaissances
5
Donnée
Information
Connaissances
Données Données typées
Modèle Classes POO
Modèle Classe IA
Modèle Entité BD
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: StringSexCode: StringBirthDay: DateRaceCode: StringEspeceCode: StringWeight: Number
Espece
IdentificationCode: StringName: String
6ENITAB 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: StringSex: StringBirthDay: DateRace: String
Bovin
beDeseased() getMilkProduction()
7ENITAB 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 ExploitationAgricoleestAssocié
Organisation
*1
8ENITAB 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 POODescription sous forme d’attribut (description quantitative & qualitative ) + méthodes (traitements)
Classes en IADes 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
9ENITAB 2010
Exercices: formes géométriques
Point Ligne Triangle Triangle rectangle Carré Rectangle Trapèze Parallélogramme Cercle
ENITAB 201010
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 …
11ENITAB 2010
Term
Les composants des ontologies
12
Concept
Instance
Semantic Relation
InstanceRelation
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
InstanceRelation
ENITAB 2010
Ontologies Terminologiques: Composants
13
Classe
Terme
Instance
Relation
hasLabel
Linguistic Relation
Natural language Definition
hasArgument
hasID
hasName
*
*
*1
1
*
* *
*
*
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: Autres exemples
GEMET Thesaurus http://www.eionet.europa.eu/gemet/index_html?langcode=fr
AGROVOC thesaurus http://aims.fao.org International Hydrographic Dictionary
http://www.iho.int/english/home/
Wordnet lexical database: http://www.wordnet-online.com/
ENITAB 201016
Ontologies terminologiques: format
SKOS:Simple
Knowledge
Organization
System
http://www.w3.org/2004/02/skos/intro
17ENITAB 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
19ENITAB 2010
Interopérabilité lexicale: Semantic Web Search Engine
mapping
annotation
annotation
requê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
InstanceRelation
Natural language Definition
*1
ENITAB 2010
Ontologies de Données: Exemple GIEA
22ENITAB 2010
Ontologies de Données: Exemple SANDRE
23
Périmetre d’épandage
Zone homogene
Produit
Parcelle du périmètre
Exploitation agricole
Champ
Parcelle culturale
Parcelle d’épandage
Unité culturale
Parcelle épandue
Parcelle prévue
ENITAB 2010
Ontologies de Données: Exemple OTAG
ENITAB 201024
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 201025
Interopérabilité de Données: Format d’échange de données
Blue data
Blue system
Green data
Green system
Reddata
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
27ENITAB 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é ?
28ENITAB 2010
Interopérabilité des modèles UML: Problème
Réseau des AGL utilisés au CEMAGREF
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
30ENITAB 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: Composants
33
Classe
Term
Instance
Relation
hasLabel
Property
Semantic Relation
Natural language Definition
Logical formula
isInstanceOf
hasID hasArgument
hasArgument
hasName
hasName
*
*
*
1
*
*1
1
* *
**
1
*
*
*
InstanceRelation
ENITAB 2010
Ontologies Logiques: Exemple Hydrontology
34ENITAB 2010
Ontologies Logiques: Exemple Hydrontology
35ENITAB 2010
Ontologies Logiques: Exemple Hydrontology
36ENITAB 2010
Ontologies Logiques: Exemple Hydrontology
37ENITAB 2010
Ontologies Logiques: Exemple
Relations topologiques définies
par l’utilisateurNTPP (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 352 4
Liste des incohérences
Validation automatique de contraintes topologiques
38ENITAB 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
queryretrieve
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
Mappingblue
database
bluedatabase
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
Conclusion
42Increasing Interoperability Capability
Incr
easi
ng
Kn
ow
led
ge
Lexical Interoperability
DataInteroperability
Knowledge ModelInteroperability
ObjectInteroperability
List
Thesaurus
Taxonomy
Conceptual Model
Logical Theory
Controlled Vocabulary
Glossary
UML
DB SchemaXML Schema
ER Model
OWL
Description Logic
Lexical Database
RDF
SKOS
DataOntology
LogicalOntology
TerminologicalOntology
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.
43ENITAB 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
47ENITAB 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 XMIOntologie de données
Fichier OWL« ontologie logique »
ExtractionEnrichissement
Fichier OWLamélioré
Détection d’erreurs
53ENITAB 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