54
Ontologies et système d’information= Interopérabilité? Catherine ROUSSEY

interopérabilité en informatique

Embed Size (px)

DESCRIPTION

cours pour Enitab 2010 comment les différentes formes d'ontologies répondent au probléme de l'intéropérabilité en informatique

Citation preview

Page 1: interopérabilité en informatique

Ontologies et système d’information=Interopérabilité?

Catherine ROUSSEY

Page 2: interopérabilité en informatique

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

Page 3: interopérabilité en informatique

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

Page 4: interopérabilité en informatique

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

Page 5: interopérabilité en informatique

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

Page 6: interopérabilité en informatique

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

Page 7: interopérabilité en informatique

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

Page 8: interopérabilité en informatique

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

Page 9: interopérabilité en informatique

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

Page 10: interopérabilité en informatique

Exercices: formes géométriques

Point Ligne Triangle Triangle rectangle Carré Rectangle Trapèze Parallélogramme Cercle

ENITAB 201010

Page 11: interopérabilité en informatique

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

Page 12: interopérabilité en informatique

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

Page 13: interopérabilité en informatique

Ontologies Terminologiques: Composants

13

Classe

Terme

Instance

Relation

hasLabel

Linguistic Relation

Natural language Definition

hasArgument

hasID

hasName

*

*

*1

1

*

* *

*

*

ENITAB 2010

Page 14: interopérabilité en informatique

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

Page 15: interopérabilité en informatique

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

Page 16: interopérabilité en informatique

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

Page 17: interopérabilité en informatique

Ontologies terminologiques: format

SKOS:Simple

Knowledge

Organization

System

http://www.w3.org/2004/02/skos/intro

17ENITAB 2010

Page 18: interopérabilité en informatique

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

Page 19: interopérabilité en informatique

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

Page 20: interopérabilité en informatique

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

Page 21: interopérabilité en informatique

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

Page 22: interopérabilité en informatique

Ontologies de Données: Exemple GIEA

22ENITAB 2010

Page 23: interopérabilité en informatique

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

Page 24: interopérabilité en informatique

Ontologies de Données: Exemple OTAG

ENITAB 201024

Page 25: interopérabilité en informatique

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

Page 26: interopérabilité en informatique

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

Page 27: interopérabilité en informatique

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

Page 28: interopérabilité en informatique

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

Page 29: interopérabilité en informatique

Interopérabilité des modèles UML: Problème

Réseau des AGL utilisés au CEMAGREF

Page 30: interopérabilité en informatique

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

Page 31: interopérabilité en informatique

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

Page 32: interopérabilité en informatique

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

Page 33: interopérabilité en informatique

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

Page 34: interopérabilité en informatique

Ontologies Logiques: Exemple Hydrontology

34ENITAB 2010

Page 35: interopérabilité en informatique

Ontologies Logiques: Exemple Hydrontology

35ENITAB 2010

Page 36: interopérabilité en informatique

Ontologies Logiques: Exemple Hydrontology

36ENITAB 2010

Page 37: interopérabilité en informatique

Ontologies Logiques: Exemple Hydrontology

37ENITAB 2010

Page 38: interopérabilité en informatique

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

Page 39: interopérabilité en informatique

Ontologies Logiques: : format

OWL:

Ontology

Web

Language OWL Lite OWL DL OWL Full

39

www.w3.org 2007

ENITAB 2010

Page 40: interopérabilité en informatique

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

Page 41: interopérabilité en informatique

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

Page 42: interopérabilité en informatique

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

Page 43: interopérabilité en informatique

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

Page 44: interopérabilité en informatique

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

Page 45: interopérabilité en informatique

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

Page 46: interopérabilité en informatique

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

Page 47: interopérabilité en informatique

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

Page 48: interopérabilité en informatique

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

Page 49: interopérabilité en informatique

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

Page 50: interopérabilité en informatique

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

Page 51: interopérabilité en informatique

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

Page 52: interopérabilité en informatique

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

Page 53: interopérabilité en informatique

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

Page 54: interopérabilité en informatique

Ontologies in Agriculture

Catherine ROUSSEY

Vincent SOULIGNAC, François PINET, Jean-Claude CHAMPOMIER, Vincent ABT, Jean-Pierre CHANET,

Stephan BERNARD, Marc Zimmermann