Modélisation des connaissances



Documents pareils
Structuration des décisions de jurisprudence basée sur une ontologie juridique en langue arabe

Les ontologies pour l intégration sémantique : enjeux et défis

Formula Negator, Outil de négation de formule.

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

Définition et diffusion de signatures sémantiques dans les systèmes pair-à-pair

Une méthode d apprentissage pour la composition de services web

Big Data et Graphes : Quelques pistes de recherche

XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)

Problématiques de recherche. Figure Research Agenda for service-oriented computing

Principe de symétrisation pour la construction d un test adaptatif

Linked Open Data. Le Web de données Réseau, usages, perspectives. Eric Charton. Eric Charton

Big Data et Graphes : Quelques pistes de recherche

Je catalogue, tu FRBRises, il/elle googlise. L évolution des catalogues et les bibliothécaires Vendredi 29 mars 2013 Manufacture des tabacs

OPEN DATA : CHALLENGES ET PERSPECTIVES D ENTREPOSAGE

Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014

Bigdata et Web sémantique. les données + l intelligence= la solution

XML et travail collaboratif : vers un Web sémantique

Architectures d'intégration de données

Vers une approche Adaptative pour la Découverte et la Composition Dynamique des Services

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

Cours de Master Recherche

Ingénierie et gestion des connaissances

Lamia Oukid, Ounas Asfari, Fadila Bentayeb, Nadjia Benblidia, Omar Boussaid. 14 Juin 2013

Catalogue des formations Edition 2015

Hervé Couturier EVP, SAP Technology Development

An Ontology-Based Approach for Closed-Loop Product Lifecycle Management

INSTALLATION ET CONFIGURATION DE OPENLDAP

Introduction aux concepts d ez Publish

Once the installation is complete, you can delete the temporary Zip files..

TP Bases de données réparties

REMOTE DATA ACQUISITION OF EMBEDDED SYSTEMS USING INTERNET TECHNOLOGIES: A ROLE-BASED GENERIC SYSTEM SPECIFICATION

Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION

UNE EXPERIENCE, EN COURS PREPARATOIRE, POUR FAIRE ORGANISER DE L INFORMATION EN TABLEAU

AGROBASE : un système de gestion de données expérimentales

Differential Synchronization

Gestion de références bibliographiques

Une plateforme de développement d espaces webs sémantiques communautaires dédiés au partage de ressources multimédia

ICA Congress, Brisbane 2012 Thème général : Les temps qui changent. La confiance et les archives*

XML, PMML, SOAP. Rapport. EPITA SCIA Promo janvier Julien Lemoine Alexandre Thibault Nicolas Wiest-Million

Étude de l application DNS (Domain Name System)

Propriétés du Document EMA. Résumé

Compte-rendu re union Campus AAR 3 mars 2015

Service On Line : Gestion des Incidents

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>

GKR. Geological Knowledge Representation Base de connaissances métallogéniques

Intégration de la dimension sémantique dans les réseaux sociaux

Gestion des références bibliographiques. Comment simplifier la gestion des références bibliographiques?

Vers une Interopérabilité Multi-Niveaux des Métadonnées

Master Informatique Aix-Marseille Université

Prise en main rapide

Le Web de Données Dan VODISLAV Université de Cergy-Pontoise Master Informatique M2 Plan

Définitions. Numéro à préciser. (Durée : )

Le pilotage des collaborations et l interopérabilité des systèmes d information Vers une démarche intégrée

LES TECHNOLOGIES DU WEB APPLIQUÉES AUX DONNÉES STRUCTURÉES

et Active Directory Ajout, modification et suppression de comptes, extraction d adresses pour les listes de diffusion

Application de la méthode QFD comme outil d'extraction des connaissances métier en conception intégrée

Préparer un état de l art

Application Form/ Formulaire de demande

Module BDWEB. Maîtrise d informatique Cours 9 - Xquery. Anne Doucet. anne.doucet@lip6.fr

24/11/2011. Cours EJB/J2EE Copyright Michel Buffa. Plan du cours. EJB : les fondamentaux. Enterprise Java Bean. Enterprise Java Bean.

Forthcoming Database

SQL Parser XML Xquery : Approche de détection des injections SQL

JEAN-LUC VIRUÉGA. Traçabilité. Outils, méthodes et pratiques. Éditions d Organisation, 2005 ISBN :

Techniques d analyse et de conception d outils pour la gestion du processus de segmentation des abonnés des entreprises de télécommunication

Évaluation d une architecture de stockage RDF distribuée

Recherche d information en langue arabe : influence des paramètres linguistiques et de pondération de LSA

Pourquoi l apprentissage?

Chapitre IX. L intégration de données. Les entrepôts de données (Data Warehouses) Motivation. Le problème

Glossaire. ( themanualpage.org) soumises à la licence GNU FDL.

SEMIN- Gestion des couleurs sous R. Michel BAYLAC. MNHN Département Systématique et Evolution OSEB

Dossier I Découverte de Base d Open Office

Référencement et visibilité sur Internet Comment améliorer la visibilité de son site internet sur les principaux moteurs de recherche?

Créer une base de données vidéo sans programmation (avec Drupal)

Installer Joomla Pearson France Joomla! Le guide officiel Jennifer Marriott, Elin Waring

La base de données dans ArtemiS SUITE

Rappels sur les suites - Algorithme

Généralités. javadoc. Format des commentaires. Format des commentaires. Caractères spéciaux. Insérer du code

données en connaissance et en actions?

Etude d un cas industriel : Optimisation de la modélisation de paramètre de production

# let rec concat l1 l2 = match l1 with [] -> l2 x::l 1 -> x::(concat l 1 l2);; val concat : a list -> a list -> a list = <fun>

Chapitre VI- La validation de la composition.

Université Paris-Dauphine DUMI2E 1ère année, Applications

La classification automatique de données quantitatives

Université Paris XI Faculté des sciences d Orsay THÈSE. présentée pour l obtention du grade de Docteur en Sciences de l Université Paris-Sud XI Orsay

Une méthode de classification supervisée sans paramètre pour l apprentissage sur les grandes bases de données

Classification Automatique de messages : une approche hybride

BES WEBDEVELOPER ACTIVITÉ RÔLE

Le projet PALETTE et les CoPs L exemple de la CoP eprep

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

LECTURE CRITIQUE. Accompagner les enseignants et formateurs dans la conception d une formation en ligne

Face Recognition Performance: Man vs. Machine

Eteindre. les. lumières MATH EN JEAN Mme BACHOC. Elèves de seconde, première et terminale scientifiques :

L UNIVERS INSTANTANÉ:

Bases de Données. Plan

Chap 4: Analyse syntaxique. Prof. M.D. RAHMANI Compilation SMI- S5 2013/14 1

Le langage SQL Rappels

NORME INTERNATIONALE INTERNATIONAL STANDARD. Dispositifs à semiconducteurs Dispositifs discrets. Semiconductor devices Discrete devices

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

Recherche dans un tableau

Atelier de l Ecole doctorale : Latex, Lyx, and friends Chapitre 2 : Gestion de la bibliographie

Transcription:

Actes de l'atelier Modélisation des connaissances des 6èmes journées francophones «Extraction et Gestion des Connaissances» 17 Janvier 2006 Lille 1

Sommaire Mappings pour l'intégration de de documents XML Chantal Reynaud, Brigitte Safar Exemple d une application de consultation à base d ontologie Didier Riou, Philippe Kervella, Rémi Lehn Analyse par les modèles pour la complétion des données Amandine Duffoux MTSA : Un Modèle de Traces pour la Supervision de l Apprentissage Fatoumata Diagne Comité de programme de l'atelier Salem Benferhat (CRIL, Université d'artois) Giuseppe Berio (Université de Turin, Italie) Corine Cauvet (LSIS, Université de Marseille) Michel Chein (LIRMM, Université Montpellier 2) Nadine Cullot (LE2I, Université de Bourgogne) Rose Dieng (INRIA Sophia-Antipolis) Béatrice Duval (LERIA, Université d'angers) Fabrice Guillet (LINA, Ecole Polytechnique de l'université de Nantes) Mohan Said Hacid (LIRIS, Université Lyon 1) Marie-Laure Mugnier (LIRMM, Université Montpellier 2) Chantal Reynaud (LRI, Université de Paris Sud) Comité d'organisation de l'atelier Henri Briand (LINA, Université de Nantes) David Genest (LERIA, Université d'angers) Stéphane Loiseau (LERIA, Université d'angers) Amedeo Napoli (LORIA, Université de Nancy) 2

Mappings pour l intégration de documents XML Chantal Reynaud, Brigitte Safar Université Paris-Sud XI, CNRS (L.R.I.) & INRIA (Futurs) 91405 Orsay cedex {Chantal.Reynaud, safar}@lri.fr http://www.lri.fr/~cr Résumé. Ce travail se situe dans le domaine de l intégration de sources d informations hétérogènes. Il vise l intégration d une nouvelle source XML à un serveur d information en exploitant une ontologie, c est-à-dire une description explicite et déclarative de la sémantique d un domaine d application. Nous proposons d automatiser la génération des mises en correspondance, ou mappings, entre l ontologie et la source à intégrer. Nous montrons que ce processus repose non seulement sur l exploitation des schémas des modèles à connecter mais aussi sur les données associées. Un prototype, DétectHybride- Map, développé en Java, est à l origine d expérimentations sur des données réelles fournies par France Télécom R&D dans le domaine du tourisme. 1 Introduction L intégration d information est une problématique importante du fait du nombre croissant de sources d information disponibles via le Web. Appliquée à un serveur d information, elle donne l impression à un utilisateur qu il interroge un système unique et centralisé grâce à une interface d interrogation uniforme basée sur un modèle du domaine d application, l ontologie. Notre travail se situe dans le cadre d un tel serveur, intégrant les schémas de sources externes déjà intégrées au sein d un entrepôt local 1. Des mises en correspondance (ou mappings) ont déjà été établies entre l ontologie du domaine et les schémas intégrés au serveur. Notre objectif porte sur la génération automatisée de mappings entre l ontologie et une nouvelle source à intégrer. La source à intégrer est une source XML structurée à l aide du vocabulaire de l ontologie du serveur d information. En revanche, la structure de ce document est particulière dans le sens où elle ne correspond pas forcément à la structure des documents déjà intégrés. L approche de découverte de mappings que nous adoptons est guidée par l ontologie du domaine : recherche des mises en correspondances entre concepts, puis entre propriétés avant de s intéresser aux mises en correspondance entre relations. Elle s appuie sur les mappings déjà établis entre l ontologie et les sources intégrées au sein du serveur. Le processus de génération des mappings se veut être le plus automatisé possible. Le concepteur ne doit intervenir qu en fin de processus pour valider les résultats trouvés. Enfin, l approche doit être générique c est-à-dire utilisable quel que soit le domaine d application. Notre objectif, au travers de ce papier, est de montrer que la génération automatisée de mappings dans ce 1 Travail de recherche développé dans le cadre du projet Picsel3 (2005-2008) en partenariat avec France-Telecom R&D. 3

Mappings pour l intégration de documents XML contexte nécessite l exploitation à la fois du schéma des sources XML (les DTDs) et des données des sources à connecter. Ce papier est organisé de la façon suivante. Dans la section suivante, nous présentons quelques travaux portant sur la détection de mappings et situons notre approche. Nous décrivons ensuite l environnement de travail, puis les techniques utilisées pour la détection de mappings. La section 5 est consacrée aux expérimentations réalisées dans le domaine du tourisme. Enfin, nous concluons et présentons quelques perspectives. 2 Travaux proches Il existe de nombreux travaux qui visent à automatiser la génération de mappings. Une synthèse des techniques utilisées est présentée dans Rahm et Bernstein (2001) ] et Shvaiko et Euzenat (2004). Nous distinguerons deux types de techniques, celles qui exploitent le schéma des sources et celles qui exploitent les données associées aux schémas. Les techniques basées sur le schéma des sources sont variées. Il peut s agir de comparer les éléments des schémas. Les méthodes utilisées sont : analyse de chaînes de caractères (comparaison des préfixes, des suffixes, distance de Levenshtein, technique des n-grammes (Euzenat et Valtchev (2004), Melnik et al. (2002), Do et Rahm (2001), Noy et Musen (2001), Giunchiglia et Shvaiko (2004)), techniques de traitement de langage naturel (décomposition, lemmatisation, etc. (Do et Rahm (2001), Giunchiglia et Shvaiko (2004), Euzenat et Valtchev (2004)) ou utilisation de ressources linguistiques (Giunchiglia et Shvaiko (2004), Euzenat et Valtchev (2004)). Il peut aussi s agir d exploiter la structure des schémas comparés, souvent représentés sous forme de graphes. Les algorithmes mettant en œuvre ces techniques implémentent diverses heuristiques. Une heuristique consiste, par exemple, à considérer que des éléments de deux schémas distincts sont similaires si leurs sous-concepts directs, et/ou leurs sur-concepts directs et/ou leurs concepts frères sont similaires (Do et Rahm (2001), Noy et Musen (2001) (Thanh Le et al. 2004)). Ces techniques structurelles peuvent être basées sur la notion de point fixe (Melnik et al. (2002)). Dans S-Match (Giunchiglia et Shvaiko (2004)), le problème de matching est vu comme un problème de satisfiabilité d un ensemble de formules du calcul propositionnel. Les graphes et les correspondances à tester sont traduits en formules de la logique propositionnelle en considérant la position des concepts dans le graphe et non seulement leur nom. Basé sur l utilisation d un modèle (SAT), ce système est également une illustration de l application de techniques sémantiques. D autres travaux se basent sur les données. Ainsi, FCA-Merge (Stumme et Maedche (2001)) exploite des instances dans le but de fusionner des ontologies locales. Les auteurs proposent d extraire ces instances de documents textes puis d appliquer l Analyse en Concepts Formels. Chaque nœud du treillis de concepts obtenu est associé à un ensemble de concepts des ontologies locales lorsque les instances associées sont contenues dans les mêmes documents. L étape finale d analyse du treillis pour construire l ontologie globale est à la charge du concepteur. OLA (Euzenat et Valtchev (2004)) est une classe d algorithmes d alignement d ontologies qui exploite toutes les caractéristiques possibles des ontologies représentées en OWL-Lite et qui inclut, de ce fait, la comparaison des extensions connues des concepts. Enfin, certains systèmes appliquent des techniques d apprentissage automatique. Ils exploitent différents types d informations : les mots, leur position, leur format, leur fréquence, les caractéristiques de la distribution de valeurs prises. C est le cas de GLUE 4

Chantal Reynaud et Brigitte Safar (Doan et al. 2003) qui porte sur l identification de mises en correspondance entre un schéma global et le schéma (DTD) de sources d information XML. Notre travail se distingue des travaux précédemment décrits. Nous avons été guidés par l intégration de données XML réelles dont l étude a montré que la définition de certains mappings faisait explicitement référence aux données des sources à mettre en correspondance. Une exploitation limitée aux schémas de ces sources n était donc pas suffisante, c est pourquoi nous proposons une approche hybride combinant exploitation de schémas et de données qui a été mise en œuvre dans DétectHybrideMap (Bisgin (2005)). 3 Environnement de travail Dans cette partie, nous décrivons l ontologie, l entrepôt de sources XML, la source à intégrer et les mappings. 3.1 L ontologie L ontologie est composée d un ensemble de classes ayant des propriétés et d un ensemble de relations de subsumption ou du domaine entre classes. Une ontologie O est définie comme un tuple (C, R) où C = {c 1, c 2,..., c n } est l ensemble des classes et où R = {r 1, r 2,,...,r m } regroupe l ensemble des relations entre classes (R 1 ) et les propriétés des classes (R 2 ). Une relation r 1 R 1 met en relation deux noms de classes, ( r 1 (t 1, t 2 ) t 1 C, t 2 C), et une propriété r 2 R 2 relie un nom de classe à un littéral, ( r 2 (t 1, t 2 ) t 1 C, t 2 λ où λ est un littéral). Dans le cadre du projet Picsel 3, le formalisme de représentation des connaissances adopté pour représenter l ontologie est RDF-S (Antoniou et Van Harmelen (2004)) dont les primitives permettent la représentation de classes, de propriétés, de hiérarchies de classes, et de hiérarchies de propriétés. Il s écrit à l aide de triplets RDF de la forme <sujet, prédicat, objet>. Ainsi les relations r(t 1, t 2 ) sont traduites en RDF-S sous la forme de triplet (t 1, r, t 2 ). 3.2 L entrepôt local L entrepôt local comprend un ensemble de sources XML pour lesquelles des mises en correspondance avec l ontologie du domaine ont déjà été définies. Ces mises en correspondance sont établies entre les schémas des sources, des DTDs représentées sous la forme d arbres, et l ontologie. La représentation des DTDs est simplifiée. Elle ne prend pas en compte le format des éléments ni des attributs, elle ignore leurs caractéristiques (EMPTY, REQUIRED, etc.) et les cardinalités. Un arbre T représentant une DTD est un ensemble tel que T = {N, A, AT, ATN} où : - N est l ensemble fini des nœuds : tous les éléments de cet ensemble sont des éléments de la DTD associée. - A est l ensemble fini des couples NxN représentant des arêtes entre deux nœuds non vides. Ils correspondent aux liens de composition entre éléments de la DTD. - AT est l ensemble fini des attributs de la DTD. Les attributs de cet ensemble ne sont pas des nœuds de N mais chaque attribut est lié à un élément de l ensemble N. - ATN est l ensemble fini des couples (e i, <at 1, at 2,, at n >) tel que i {1,n}. Si un élément e x n a pas d attribut, il n y aura pas de couple de cet élément dans ATN. S il a deux attributs at y, et at z, le couple correspondant dans ATN sera (e x, <at y, at z >). - 5

Mappings pour l intégration de documents XML Un exemple de DTD et sa représentation sous forme d arbre sont donnés FIG 1. Dans la suite, nous appellerons domaine d un nœud, l ensemble de ses nœuds fils dans l arbre. Ainsi, le domaine du nœud a de la DTD de FIG.1 est {b,c}. <!ELEMENT a (b,c)> <!ELEMENT b EMPTY> <!ELEMENT c NMTOKEN #REQUIRED)> <!ATTLIST c k CDATA #IMPLIED l NMTOKEN #REQUIRED > DTD D a b c {k,l} N = {a, b, c}, A = {(a, b), (a, c)} AT = {k, l}, ATN = {(c, <k, l>)}. Arbre de la DTD D 3.3 La source à intégrer FIG. 1 - Une DTD et sa représentation sous forme d arbre. La source à intégrer dans l entrepôt est une source XML à laquelle est associée une DTD représentée également sous forme d arbre comme les DTDs des documents de l entrepôt local (cf. section 3.2). Elle est structurée à l aide du vocabulaire de l ontologie à condition, bien entendu, que les termes pertinents soient présents. En revanche, la structure de la DTD associée au document ne correspond pas forcément à la structure des DTDs des documents déjà dans l entrepôt. A titre d illustration, FIG.2 présente deux sous arbres représentant des DTDs. Le premier correspond à une partie de l arbre de la DTD d une nouvelle source à intégrer et le deuxième à une partie de l arbre d une DTD de l entrepôt (les attributs ne sont pas représentés pour plus de simplicité). Ces DTDs contiennent des nœuds aux noms identiques (en gris dans la figure) : «poi, name, contact, nb, format, datum, unit, postal-address» mais leur position, dans chaque DTD, est différente. ALL poi xpoix format poix poi Postal_address contact name geo Postal_address Contact_list author unit datum point name nb rt format coordinate contact pos nb unit Coord_1 Coord_2 x y datum FIG. 2 - Sous arbre T 1 de la DTD à intégrer et sous arbre T 2 d une DTD de l entrepôt. 3.4 Les mappings Un mapping est une mise en correspondance entre un élément de l ontologie O et un élément (pris au sens général du terme) de l arbre T d une DTD. Pour les mappings déjà existants, il s agit des DTDs des sources XML de l entrepôt déjà constitué. Pour les map- 6

Chantal Reynaud et Brigitte Safar pings à générer, il s agit de la DTD de la nouvelle source XML à intégrer. Nous définissons un mapping comme une fonction qui fait correspondre à tout concept ou propriété de O, l élément ou l attribut avec lequel ce concept ou cette propriété est mis en correspondance, l élément ou l attribut étant défini par son chemin dans T. Cette mise en correspondance peut être conditionnelle. Les conditions qui doivent être éventuellement satisfaites portent sur les valeurs des éléments ou des attributs dans les documents XML satisfaisant la DTD d arbre T. Supposons, par exemple, que l on recherche un mapping pour le concept email spécialisation du concept contact de l ontologie. Un mapping conditionnel le reliera à l attribut type de l élément contact de la DTD, à condition que la valeur de type dans le document XML associé à la DTD soit email. Nous utiliserons le symbole " " pour représenter la liaison entre les éléments mis en correspondance. Nous explicitons ci-dessous les notations utilisées pour représenter chacune des parties d un mapping, puis les formats des différents mappings en Fig. 4. Notation de la composante ontologie. Soient c 1, c 2 deux concepts de l ontologie O, r 1 R 1 une relation entre c 1 et c 2 et r 2 R 2 une propriété de c 1. Les concepts de O seront désignés par leur nom, celui-ci les identifiant de manière unique. Les mappings concernant les concepts seront de la forme '' c 1 '' et '' c 2 ''. Les relations de R 1 seront désignées par leur nom suivi des concepts liés. Les mappings les concernant seront de la forme ''r 1 (c 1, c 2 ) ''. Les relations de l ensemble R 2 (les propriétés) seront désignées par leur nom associé au concept caractérisé. Les mappings les concernant seront de la forme : ''r 2 de c 1 '' et ''r 2 de c 2 ''. Notation de la composante source La deuxième entité liée au sein d un mapping correspond à un élément ou à un attribut d un arbre de DTD. Chaque élément ou attribut d un arbre est identifié, de façon unique, par le chemin qui le relie à la racine de l arbre. Nous utilisons Xpath, le langage de requête de XML standardisé par le W3C, comme langage de représentation de ces chemins (cf. FIG.3). b d l,m a c e k /a : désigne la racine de l arbre //c : désigne un élément c à un endroit quelconque du document. /a/b : désigne un élément b dont le père est a, a étant la racine. //b/d : désigne un élément d dont le père est b, b n étant pas la racine. //c/@k : désigne l attribut k de l élément c FIG. 3 - Représentations en Xpath. Ainsi, les mappings établissant un lien avec un élément dont le nom est e seront de la forme : //e. Les mappings établissant un lien avec un attribut (de nom att) d un élément (de nom e) de la DTD seront de la forme : //e/@att. Les mappings conditionnels établissant un lien avec un attribut d un élément de la DTD suivant la valeur de cet attribut dans le document XML associé à la DTD, seront de la forme : //e/[@ att= valeur ]/@att - 7

Mappings pour l intégration de documents XML concept c 1 O relation r 1 entre c 1 et c 2 O tels que c 1 //a et c 2 //b c 1 //e c 1 //e/@att c 1 //e/[@att = val ]/@att r 1 (c 1, c 2 ) //a/ /b propriété r 2 de c 1 O tel que c 1 //a et b est le correspondant de r 2 dans T r 2 de c 1 //a/ /b Fig. 4 Format des différents mappings Pour les mappings établissant un lien avec une relation de l ontologie, la partie du mapping concernant la source désignera le chemin, s il existe, reliant les correspondants dans la DTD des éléments de l ontologie reliés par la relation. 4 Techniques de recherche des mappings Le but de notre travail est de détecter semi-automatiquement des mappings entre une ontologie représentée en RDF-S et une DTD d une nouvelle source à intégrer, dont les balises reprennent, dans la mesure du possible, le vocabulaire de l ontologie. Les entrées du système sont donc (1) l ontologie, (2) la DTD de la nouvelle source et (3) la liste des mappings préexistants entre l ontologie et les DTDs des sources déjà intégrées à l entrepôt. L approche proposée est guidée par l ontologie. Dans un premier temps, on cherche à identifier les correspondants des concepts de l ontologie. On s appuie ensuite sur les correspondances de concepts trouvées pour chercher les mappings de leurs propriétés. On s intéresse, dans un troisième temps, aux relations entre concepts. Afin d illustrer le processus de découverte, composé de techniques basées à la fois sur les schémas des documents rapprochés mais aussi sur l exploitation des données, nous nous focalisons sur les techniques permettant d identifier les correspondants des concepts de l ontologie. Ce sont ces mêmes techniques qui sont utilisées pour trouver les mappings sur les propriétés. 4.1 Exploitation des schémas des documents à rapprocher L objectif est ici de trouver les correspondants des différents concepts c de l ontologie O parmi les éléments d une DTD d arbre T 1. Deux techniques sont utilisées, cf. l algorithme Fig. 5, l une exploitant l ontologie, la seconde exploitant les mappings pré-existants, la première précédant la seconde dans son application. La première technique appliquée consiste à poser que si, pour un concept c de l ontologie O, il existe dans T 1 un élément de même nom que c, un mapping peut être établi entre le concept et l élément considéré. Cette technique est justifiée par le fait que la DTD est construite à l aide du vocabulaire fixé dans l ontologie O, que l ontologie, telle qu elle est structurée, correspond à une description des connaissances d un certain point de vue, que le concepteur de la DTD connaît ce point de vue et choisit, en conséquence, les termes de l ontologie pour structurer son document. Si un même terme est utilisé dans l ontologie et le schéma d une source, c est que le concepteur de la nouvelle source est d accord avec l interprétation proposée par le concepteur de l ontologie. 8

Chantal Reynaud et Brigitte Safar La deuxième technique s applique quand la première a échoué, c est-à-dire quand il n existe pas de termes dans T 1 de même nom qu un concept c de l ontologie. Elle consiste à utiliser la liste des mappings pré-existants entre O et les DTDs des sources déjà intégrées dans l entrepôt local. On recherche à quel terme le concept c a été connecté dans les autres DTDs. Si pour une DTD d arbre T 2, un mapping existe pour le concept c avec un élément e présent également dans T 1, l approche consiste à étudier si ce mapping ne pourrait pas aussi s appliquer dans le contexte de T 1. Le mapping n est pas immédiatement réutilisé car il n est pas certain que les deux termes de même nom mais utilisés dans des contextes différents correspondent au même concept. Une vérification s impose. Elle est basée sur la comparaison du domaine (D 2 ) du terme considéré dans l arbre T 2 avec le domaine de ce même terme ou de ses ancêtres dans l arbre T 1. Une telle comparaison permet de trouver l élément e de T 1 le plus proche du e de T 2, c est-à-dire dont le domaine a le plus d éléments en commun avec le domaine D 2 de e dans T 2. L élément e retourné est soit l élément e initial, soit un ancêtre de e dans T 1. Recherche du correspondant d un concept c de l ontologie parmi les éléments d une DTD T 1 = {N 1, A 1, AT 1, ATN 1 } Si c N 1 Alors retourner c //c Sinon Si T 2 = {N 2, A 2, AT 2, ATN 2 } déjà intégré et e, tel que e N 2 et e N 1 et {c //e } ListeMappingEtablis Alors D 2 Domaine(e,T 2 ) ; e Cdom(e, T 1, D 2, 0, e) ; retourner c //e FinSi FinSi Cdom(e, T 1, D 2, Seuil, Origine) D 1 Domaine(e,T 1 ) ; N inter D 1 D 2 ; Selon le cas N inter N inter = D 2 : retourner e ; N inter > Seuil : Cdom(père(e), T 1, D 2, N inter, e) ; N inter = Seuil : retourner Origine FinSelon FIG. 5 - Algorithme d exploitation des schémas et illustration de son déroulement La comparaison s effectue de la façon suivante. Au départ, le nombre de termes communs aux deux domaines comparés, N inter, est initialisé à 0. En cours d exécution, si N inter est égal au nombre d éléments de D 2, cela signifie que les deux domaines comparés sont égaux, et que l élément le plus proche du e de T 2 est l élément avec lequel il est comparé dans T 1. Dans le cas contraire, si le nombre d éléments communs lors d une étape est supérieur à celui de l étape précédente, le processus est réitéré avec le père de l élément courant dans T 1. Lorsque le nombre d éléments communs ne progresse plus, l élément recherché retourné est l élément courant de l étape précédente. A titre d illustration, considérons les arbres de DTD T 1 et T 2 présentés FIG. 2 et suivons l exécution de l algorithme pour poi (abréviation de point d intérêt), nœud commun aux deux DTDs. Le domaine D 2 de poi dans T 2, {name, nb, rt, geo, format, unit, datum, coordinates, coord_1, coord_2, contact_list, contact, postal_address}, de cardinalité 13, est comparé au domaine de l élément courant poi dans T 1, {point, pos, x, y, name, nb, contact}. Trois éléments, {name, nb, contact}, sont communs aux deux domaines. N inter étant différent du cardinal de D 2 mais supérieur à N inter initialisé à 0, le processus est réitéré en comparant D 2 au domaine du nœud père de poi dans T 1, l élément poix (flèche numéro 1 sur FIG.5). Six éléments sont author unit format datum poix 1 2 x poi point pos 4 xpoix ALL Postal_address y 3 name nb contact - 9

Mappings pour l intégration de documents XML communs : {name, nb, contact, format, unit, datum}. N inter ayant augmenté, le processus est réitéré à partir du père de poix, xpoix (flèche 2) puis à partir du père de xpoix, ALL (flèche 3). A ce stade, le nombre d éléments communs n augmente plus, l élément de T 1 dont le domaine est le plus proche de celui de poi dans T 2 est donc xpoix, l élément courant de l étape précédente (flèche 4). De cette façon, le concept cultural-object de O qui n a pas de correspondant dans T 1 mais pour lequel un mapping a déjà établi avec le terme poi dans T 2 sera mis en correspondance avec xpoix dans T 1. 4.2 Exploitation des données des documents à rapprocher Les techniques considérées dans cette section exploitent les données contenues dans les documents XML. Cette nécessaire étude des données s explique par le fait que les concepteurs des sources XML n utilisent pas toujours des noms de balise individualisés aussi précis que ceux proposés dans l ontologie. Une pratique relativement courante consiste à caractériser les éléments décrits au travers de valeurs d attributs d éléments, de ce fait, assez généraux. En revanche, dans l ontologie, si des concepts ont des spécificités, ils sont généralement modélisés sous forme de concepts liés par une relation de spécialisation à des concepts plus généraux. Par exemple, dans l ontologie OntoTourism avec laquelle nous avons travaillé, plusieurs concepts (email, fax, tel, web) ont été définis comme des spécialisations du concept Contact. Ces noms de concepts sont utilisés par certains concepteurs de sources comme des noms de balises explicites, mais d autres concepteurs peuvent préférer représenter les spécificités des contacts via la valuation d un attribut (en général Type ou Subtype). Ainsi, un email pourra être représenté comme un contact dont la valeur de l attribut Type est email. Ce choix de représentation a un impact sur les mappings à générer car les noms de concept ou de propriétés qui n interviennent pas explicitement en tant que balise n apparaissent pas dans les arbres de DTD. Cet état de fait est pris en compte dans DétectHybrideMap par les mappings conditionnels, qui mettent en correspondance un concept de l ontologie et un élément d une DTD lorsque qu un de ses attributs prend une valeur donnée. Ainsi par exemple, le mapping concernant email, est représenté de la façon suivante : Email // contact[@type = email ]/@type, ce qui correspond à mettre en correspondance email de l ontologie avec contact de la source à intégrer à condition que la valeur de l attribut type de contact soit email. La recherche d éventuels mappings conditionnels avec l arbre T 1 d une nouvelle source à intégrer s appuie sur les mappings conditionnels déjà établis. L identification de nouveaux mappings de ce type impose de vérifier qu il existe dans T 1 un élément dont les valeurs dans les documents XML sont celles exprimées dans les conditions des mappings conditionnels déjà établis. Cette vérification sera faite parmi les termes de T 1 pour lesquels aucun mapping n a encore été établi. Pour des raisons d efficacité, l approche proposée pour effectuer la vérification consiste à partitionner l ensemble des mappings conditionnels déjà établis en différentes classes selon l élément avec lequel la mise en correspondance est établie. On obtiendra ainsi, par exemple, la classe des mappings conditionnels établis avec contact. A chaque classe de mappings sera associé un ensemble de valeurs, celles intervenant dans les conditions des mappings. {tel, fax, email, web} sera l ensemble de valeurs associées à la classe contact. La construction de ces ensembles de valeurs nécessite d exploiter les données des documents XML proprement dites. Cherchant à minimiser le volume des données à exploiter, seul un sous-ensemble des 10

Chantal Reynaud et Brigitte Safar documents de l entrepôt local sera considéré. La taille du sous-ensemble optimal à considérer a été déterminée de manière empirique par expérimentation (cf. section 5). Cette troisième technique consiste ainsi à travailler sur chaque concept c de l ontologie qui n a pas encore de correspondant dans T 1 mais pour lequel existe, dans la liste des mappings déjà établis, un mapping conditionnel avec un élément d une DTD d arbre T 2. Soit la classe de mapping Cl i à laquelle appartient le mapping considéré et son ensemble de valeurs V i, l élément de T 1 retenu pour le mapping sera celui dont le score, rapport entre le nombre de valeurs appartenant à V i prises par un attribut de cet élément et le cardinal de V i, sera le plus élevé. Une proposition de mapping est faite à l expert pour tous les éléments de T 1 dont le score est non nul. Par exemple, soit le concept museum de O qui n a pas encore de correspondant dans T 1 mais pour lequel a déjà été établi le mapping conditionnel suivant dans T 2 : Museum //category[@subtype='museum']/@subtype. Ce mapping appartient à une classe dont l ensemble des valeurs est {museum, touristic-site}. L attribut typepoi de l élément xpoix de T 1 ayant aussi pour liste de valeurs l ensemble {museum, touristic-site}, le score de xpoix est 2/2, et les 2 mappings conditionnels ci-dessous sont proposés à l expert pour validation : Museum //xpoix[@typepoi ='museum']/@typepoi Touristic-site //xpoix[@typepoi ='touristic-site']/@typepoi D autres techniques d exploitation des données des documents sont nécessaires. Un premier travail a été initié. Il consiste à rapprocher des éléments de noms syntaxiquement différents, qui n apparaissent pas dans des mappings conditionnels, mais dont les données associées ont le même format (date, monétaire, entier, réel, alpha-numérique, booléen). Une telle technique peut être intéressante pour des concepts ou des attributs ayant un format particulier, par exemple le format date, monétaire, etc. Ainsi, la propriété coord_1 du concept lieu_géographique de l ontologie n a pas de correspondant dans l arbre T 1 de la nouvelle source à intégrer. Il existe pour cette propriété un mapping avec l élément coor_x de T 2. L élément coor_x n existe pas dans T 1 mais il a le même format de valeurs que l attribut X de l élément position de T 1 sans correspondant dans l ontologie. Selon cette technique, un mapping entre coord_1 et X pourrait être proposé à l expert pour validation. Dans l état actuel de l implémentation, cette proposition n est pas faite car deux candidats au mapping sont possibles : X et Y, et le choix a été fait de ne faire aucune proposition en cas de mappings possibles multiples. 5 Expérimentations Les expérimentations de DétectHybrideMap ont été réalisées à partir de données réelles, relatives à des sites culturels, fournies par France Télécom Recherche & Développement (FT) et par le Comité Régional du Tourisme de l Île-de-France (CRT). L ontologie OntoTourism relative aux données étudiées comprend 34 concepts, 27 relations (8 sont des relations entre concepts, 19 sont des propriétés de concepts). 5.1 Génération des DTDs et des arbres associés Les données nous ont été transmises sous forme de documents XML. Les données du CRT, à l origine représentées dans un format propre, ont été traduites par FT qui y a introduit des balises identiques pour la plupart à celles utilisées dans ses propres documents. Elles se - 11

Mappings pour l intégration de documents XML présentent sous la forme d un grand fichier XML qui décrit 730 sites culturels de Paris, tous structurés de la même façon et encadrés par une balise, nommée «ALL». Une DTD a été générée à partir de ce fichier. Les données propres à FT se présentent sous la forme de 536 fichiers XML, tous structurés de la même façon et décrivant chacun un site culturel de Paris. Une DTD compatible avec l ensemble de ces fichiers a été générée. Les DTDs générées ont été simplifiées afin d obtenir des arbres ne comprenant que les noms des éléments et des attributs sous forme de balise. Il s agit d une copie exacte des DTDs des sources sans cardinalité et sans indication des types. 5.2 Établissement des mappings Nous avons établi manuellement des mappings entre l ontologie OntoTourism et, d une part, l arbre de DTD des données propres à FT, et d autre part, l arbre de DTD des données du CRT. La première liste de mappings (pour les données FT) représente l ensemble de mappings supposés déjà établis dans notre approche, et la deuxième liste, (pour les données du CRT), ceux que notre système doit être capable de générer automatiquement, à partir de l arbre de DTD de la nouvelle source. 58 mappings ont été établis entre l ontologie et l entrepôt local (couvrant 95 % des termes de l ontologie) et 51 mappings avec la nouvelle source à intégrer (couvrant 83 % des termes). 5.3 Tests réalisés L Algorithme DétectHybrideMap a réussi à détecter 90,1 % des mappings entre les termes de OntoTourism et ceux de CRT. La distribution des mappings détectés suivant la technique utilisée par DétectHybrideMap est donnée dans TAB.1. Les catégories 1 et 2 correspondent aux mappings portant sur des concepts ou des propriétés de l ontologie identifiés par exploitation du schéma, les catégories 3 et 4 à ceux identifiés par exploitation des données des sources et la dernière technique (non présentée dans le papier) établit un mapping pour une relation de l ontologie quand celle-ci relie deux concepts de l ontologie pour lesquels des mappings ont été identifiés. Le mapping consiste à associer la relation au chemin reliant les correspondants des deux concepts dans l arbre s il existe (cf. 3.4). Pour les mappings conditionnels, nous avons fait plusieurs essais afin de trouver la taille minimale de l échantillon à exploiter pour qu il soit représentatif. Nous avons d abord calculé les scores de chaque classe de mappings en exploitant tous les documents XML. Nous avons ensuite réduit le nombre des documents utilisés par pas de cinq pour cent. Nous avons constaté qu au-dessous de 25%, les scores de chaque classe de mappings diminuaient beaucoup. La taille de l échantillon a donc été fixée à 25% de l ensemble des documents. Les cat égories 1 2 3 4 5 Total des mappings Les catégories 1 2 3 4 5 Total des mappings Mappings de France Telecom 19 2 25 7 5 58 Mappings de CRT établis manuellement 16 2 25 3 5 51 Mappings de CRT 16 2 25 5 3 51 Mappings détectés 15 2 25* 0 4 46 TAB. 1 Répartition des mappings manuels et détectés par catégorie. 12

Chantal Reynaud et Brigitte Safar Les mappings conditionnels détectés sont corrects. Néanmoins, le système considère qu il ne s agit que de propositions. Il les présente, accompagnés de leur score, au concepteur du système qui doit les confirmer ou les refuser. Trois mappings dépendant de la technique de comparaison du format des valeurs (catégorie 4) n ont pas été trouvés par le système. Il s agit du mapping rapprochant les concepts appreciation de l ontologie et quality de la DTD de CRT, et ceux rapprochant les propriétés coord_1 et coord_2 du concept lieu_géographique, des attributs X et Y de l élément pos de la DTD de CRT. Pour détecter les mappings de ce type, il sera indispensable de faire une analyse plus profonde, comme une analyse sémantique afin d améliorer le taux de détection des mappings. Les deux mappings de relation qui dépendaient de l existence d un mapping pour le concept appreciation n ont de ce fait pas été détectés non plus : un mapping de catégorie 1 entre la propriété provider du concept appreciation de l ontologie et l attribut provider de la DTD de CRT et un mapping de catégorie 5, pour la relation is_appreciated_as reliant les concepts cultural_object et appreciation. L expérimentation montre que DétectHybrideMap a réussi à détecter 21 mappings avec les techniques automatiques de catégorie 1, 2 et 5, et 25 mappings conditionnels avec la technique 3 en interaction avec l utilisateur, ce qui fait au total 46 mappings sur 51 (90 %). Ce résultat est encourageant. Enfin, nous avons mesuré le temps d exécution total du programme en utilisant deux machines différentes. Le temps d exécution était d environ 30 secondes sur le serveur Compaq et de 21 secondes sur le terminal Aopen, temps que nous considérons comme satisfaisant. 6 Conclusion A travers l intégration au sein d un entrepôt d une nouvelle source de données, ce papier a montré comment il était possible de rapprocher différents modèles de connaissances, l un représentant en RDF-S l ontologie du domaine, et le second étant un document XML, représentant la nouvelle source à intégrer. Ce rapprochement s effectue en définissant explicitement des mappings entre les éléments des deux modèles, mappings que nous avons spécifiés et choisis de représenter en Xpath. Le papier montre, d une part, que les techniques utilisables pour générer ces mappings correspondent à des comparaisons des noms des termes, associées à l exploitation de la structure des modèles, techniques qu il serait vraisemblablement intéressant de compléter par l utilisation de ressources linguistiques. D autre part, ce papier met l accent sur la nécessaire exploitation des schémas des modèles comparés mais aussi des données associées. Pour cela, nous proposons des techniques qui exploitent uniquement un sous-ensemble des données. Les expérimentations réalisées sur des données XML réelles fournies par France Telecom R&D donnent des résultats tout à fait satisfaisants. Ce travail, intégré au projet Piscel3, va se poursuivre, l objectif étant de parvenir à automatiser la génération de wrappers. A court terme, il nécessite d approfondir la spécification des mappings établissant un lien avec une relation entre deux concepts de l ontologie, et leur représentation. Actuellement, pour une relation, la représentation de la partie du mapping concernant la source désigne le chemin reliant les correspondants dans la DTD des éléments de l ontologie reliés par la relation (cf. section 3.4). Ce choix semble être bien adapté aux relations entre un concept et une propriété. Il n est pas certain que les relations entre deux concepts doivent être représentées de la même façon. - 13

Mappings pour l intégration de documents XML Références Antoniou, G., F. Van Harmelen (2004). A Semantic Web Primer. MIT Press, p. 63-100. Bisgin O. E. (2005). Détection semi-automatique de mappings. Rapport de stage de master recherche en informatique, Université Paris-Sud XI. Doan, A., J. Madhavan, P. Domingos, A. Halevy (2003). Ontology matching: A machine learning approach. In Steffen Staab and Rudi Studer, editors, Handbook on Ontologies in Information Systems, pp. 397 416. Springer-Verlag, Heildelberg (DE). Do, H. H., E. Rahm (2001). COMA a system for flexible combination of schema matching approaches. VLDB, pp. 610-621. Euzenat, J., P. Valtchev (2004). Similarity-based ontology alignment in OWL-Lite. ECAI, Valencia (ES). Giunchiglia, F., P. Shvaiko (2004). Semantic Matching. The Knowledge Engineering review, 18(3), pp. 265-280. Melnik, S., H. Garcia-Molina, E. Rahm (2002). Similarity Flooding: A Versatile Graph Matching Algorithm and its Application to Schema Matching. ICDE, San Jose CA. Noy, N. F., M. A. Musen (2001). Anchor-PROMPT: Using Non-Local Context for Semantic Matching. Workshop on Ontologies and Information Sharing, IJCAI, Seattle, WA. Rahm, E., P. Bernstein (2001). A survey of approaches to automatic schema matching. VLDB Journal: Very Large Data Bases, 10(4), pp. 334-350. Shvaiko, P., J. Euzenat (2004). A survey of Schema-based Matching Approaches. Technical Report DIT-04-087, Informatica e Telecomunicazioni, University of Trento. Stumme, G., A. Maedche (2001). FCA-MERGE: Bottom-Up Merging of Ontologies. IJCAI. Thanh Le, B., R. Dieng-Kuntz, F. Gandon (2004). On Ontology Matching Problems for building a Corporate Semantic Web in a Multi-Communities Organization. ICEIS (4), pp. 236-243. Summary This work deals with integration of heterogenous information sources.the objective is to add a new XML source to an information server thanks to an ontology, which is an explicit and declarative description of the semantic of an application domain. We propose to generate automatically mappings between the ontology and the source to be integrated. We show that this process is based not only on the schemas of the sources but also on data contained in the sources. A prototype, DetectHybrideMap, developed in java, has been used to experiment the approach on real data in the tourism domain provided by France Telecom R&D. 14

Exemple d une application de consultation à base d ontologie Didier RIOU, didier.riou@ago.fr* Philippe KERVELLA, phillipe.kervella@ago.fr* Rémi LEHN, remi@fc.univ-nantes.fr ** Société ATLANTIDE* Technopôle Brest Iroise Site du Vernis CS 23866 29238 BREST Cedex 3, FRANCE http://www.ago.fr/ Université de Nantes ** 2 bis, rue Léon Bureau BP 96228 44262 NANTES Cedex 2 http://www.univ-nantes.fr Résumé. Ce document présente la réalisation et l expérimentation d un serveur WEB de données nautiques, basé sur une approche à base d ontologie. Les données particulières utilisées sont extraites des Instructions Nautiques et du livre des feux et signaux de brumes du SHOM (Service Hydrographique et Océanographique de la Marine). L ontologie, terme usité pour désigner un domaine de connaissance, est représenté en langage OWL (langage de modélisation de domaines de connaissances). RDQL est utilisé pour l interrogation des bases de connaissances. Le domaine de connaissance modélisé est dans notre cas celui du monde nautique, du point de vue de la navigation. Dans ce contexte, l ontologie est essentiellement utilisée pour faire de la recherche de données pertinentes. Ce document présente plus particulièrement la problématique de la gestion de la base de connaissances. Mots clés : ontologie, données nautiques, application de OWL, connaissances géoréférencées 15

1 Introduction Le document présente successivement les points suivants : Le projet de R&D INpertinentes, La gestion de la base de connaissance, Les avantages et inconvénients d un système à base d ontologie, Les moyens potentiels d atténuer les inconvénients, L architecture technique du système. Le projet INpertinentes est retenu dans le cadre de l'appel à projet Mégalis 2003 des Régions Bretagne et Pays de la Loire. Le projet est du type recherche et développement, il a pour sujet les Instructions nautiques du SHOM (Service Hydrographique et Océanographique de la Marine). Les instructions nautiques sont des documents papiers ou électroniques au format xpress, complémentaires des cartes marines. Elles contiennent des informations n apparaissant pas sur les cartes telles que la description des ports, les règlements, les conseils de navigations dans certaines zones... Les instructions nautiques contiennent l expertise de professionnels de la navigation nautique, elles fournissent par conséquent une aide précieuse lors d une navigation dans une zone inconnue d un navigateur. Ce document s adresse aux marins de commerce, militaires, pêcheurs ou plaisanciers. Les informations recherchées dans les IN (Instructions Nautiques) est variable selon le profil de l utilisateur (échouages pour le plaisancier, condition de prise de chenal pour le marin de commerce...). Ce projet vise à mettre sous forme numérique exploitable pour accéder aux informations de manière pertinente, dans la masse importante de connaissance contenue dans les IN, d où le nom du projet INpertinentes. Pour des raisons commerciales et techniques, le SHOM a souhaité que dans le cadre du projet, le terme Instructions Nautiques soit réservée au document papier officiel. Par conséquent, dans la suite du document nous emploierons le terme de Données Nautiques pour la version numérique des IN. La problématique du projet s articule autour de la recherche d information, rendue plus efficace en terme de pertinence, grâce à l apport de l ontologie dans l indexation des documents. Cette augmentation de l efficacité a une contre partie qui est un accroissement de la quantité d information pour alimenter la base de connaissances servant à indexer. 16

Usager WEB Poste de consultation INpertinentes Données Système de connaissance Alimentation base de connaissance L application permet à l utilisateur de faire des recherches d instances de concepts (île, port, dangers ) et de fragments documentaires géoréférencés, les contenant. La recherche se fait en deux temps, en commençant par une recherche géographique de l ensemble des fragments de documents ayant une intersection avec la zone géographique sélectionnée, puis en procédant à une recherche par concepts sur les fragments trouvés précédemment. Le résultat a la forme montrée par les captures d écran suivantes. Une première fenêtre contient la liste des fragments, une seconde la liste des instances contenus dans les fragments et une troisième visualise le fragment de texte. L instance sélectionnée dans la fenêtre des instances est automatiquement surlignée en rouge dans le fragment de texte affiché. Fragments de texte trouvés Fragment Instance Instances trouvées Figure 1 - Résultat d une recherche par un utilisateur de l application INpertinentes 2 Processus d indexation orienté ontologie L application se situe dans le contexte du Web Sémantique, nous nous sommes donc naturellement tournés vers le standard OWL [6] dédié au Web Sémantique et défini par le consortium W3C. OWL est une extension de RDF qui s appuie sur un formalisme XML. Le modèle RDF repose sur les principes de descriptions suivants : Classes et hiérarchies de classes (les classes représentant des concepts du monde réel : par exemple la classe navire), Propriétés de classes (par exemple, immatriculation du navire), Instances de classes (par exemple, un navire particulier dont l immatriculation est BR654) Association entre instance, définie par une propriété dont la valeur est une instance de classes. 17

OWL apporte deux aspects supplémentaires à RDF : La référence à des ontologies extérieures, sur lesquelles reposent la description de sa propre ontologie. Les références se font sur des ontologies déployées sur Internet. Des mécanismes d inférences de type déduction (transitivité, inverse de ) et de type ensembliste (union, intersection ) Des règles de cardinalité. Le système INpertinentes s appuie sur une ontologie définie en collaboration avec des professionnels de la mer, ce qui est garant d une bonne description du domaine et d un certain consensus pour cette communauté. L ontologie est constituée de trois aspects donnant lieu chacune à un fichier au format OWL : Navigation nautique (les concepts que l on trouve sur les cartes marines et dans les instructions nautiques), Référencement géographique (les objets nautiques donnant lieu à une position géographique, tels que les ports, les phares, les dangers ), Rédaction documentaire (la manière dont sont reliés les objets nautiques et les fragments documentaires). OWL offre trois niveaux d inférences (Lite : pas d inférence, DL : niveau d inférence garantissant des temps de réponse finis et FULL : sans garantie de temps de réponse, voire de temps infini). Pour des raisons de performances nous avons retenus la version LITE d OWL. Les ontologie définies dans le cadre du projet sont essentiellement des hiérarchies de concepts, portant des propriétés les définissant et des associations les reliant entre eux. La vision détaillée de l ontologie développée est accessible sur Internet à l adresse : http://inpertinentes.ago.fr/owl/ 2.1 fabrication des fragments documentaires au format XML L Instruction nautique existe uniquement sous forme papier, il a donc fallu numériser le document pour en extraire d une part le texte et d autre part les images. Un OCR (Optical Character Recognition) a permis la conversion graphique du texte en caractères UTF-8. Le découpage en fragments s est fait généralement par chapitre, sauf quelques exceptions. L étape suivante a été d assembler le texte et les images dans des fichiers XML. Les textes ont été structurés au moyen des éléments suivants : Fragment (Marquage du fragment), Paragraph (Marquage du paragraphe), Subparagraph (Marquage du sous paragraphe), Title (Marquage de titre), Localisation (Marquage de localisation géographique), Alinea id (Marquage du numéro d alinéa qui est un repérage des groupes de lignes dans l instruction nautique), Image (Référence à une image), 18

Instance (Lien avec une instance de la base de connaissances, comme un port, une pointe, un phare ). 2.2 Alimentation de la base de connaissances Le rôle de la base de connaissances, est d associer de la connaissance aux fragments définis dans le paragraphe précédent ; elle contient plus particulièrement les éléments suivants : La liste des fragments, Le géoréférencement des fragments (lié à une position géographique), La liste des instances de concepts, présents dans les fragments (ports, chenaux, phares ), Le géoréférencement des instances, Les associations de type réglementaires, sécuritaires et pratiques entre instances, Les synonymes des concepts du domaine «NavigationNautique», ces données servant à guider l utilisateur pour faire le lien entre ses mots clés personnels et les concepts connus du système. L alimentation de la base de connaissances avec ces éléments a été faite de manière manuelle à l aide de Protégé [7], mais pourrait être automatisée partiellement. Le résultat de la saisie est stocké dans des fichiers au format OWL [6] et servent à alimenter la base de données PosgreSQL. La saisie des fragments consiste à créer des instances de concepts «fragment» et à fournir l URL en attribut de l instance. Par exemple, le fragment concernant le «Plateau des Roches Douvres» se fait en créant une instance du concept «fragment» et en renseignant le champ correspondant à la propriété «URL», chaque fragment possédant sa propre URL déployée sur le réseau Internet. Comme le montre la capture d écran suivante, la création d une nouvelle instance de fragment avec Protégé, se fait en sélectionnant d abord la classe «Fragment» dans la fenêtre arbre de classes, puis en instanciant cette classe avec le bouton «C» de la fenêtre des instances et enfin en fournissant l adresse URL du fragment de texte correspondant à la nouvelle instance de Fragment, le contrôle de la validité de l URL se faisant par sa visualisation. Classe URL du fragment Nouvelle instance de classe Visualisation du fragment Figure 2 - insertion d'un fragment dans la base de connaissances 19

Les fragments sont géoréférencés à l aide d un plug-in ajouté au logiciel Protégé. Le géoréférencement se fait en deux temps, d abord en définissant une instance de zone géographique à l aide du plug-in et ensuite en attachant cette zone géographique à l instance de fragment. L exemple qui suit montre les deux étapes pour géoréférencer le fragment «Plateau des Roches Douvres». La capture montre la création d une zone géographique, d abord création d une nouvelle instance du concept «AutreZoneGéographiqueParticulière», puis positionnement géographique de cette nouvelle instance, sur un fond de carte, à l aide de la souris (fenêtre de droite). Classe zone géographique Placement géographique de l instance sur une carte marine Nouvelle instance de zone gèo Attribut zone géographique rectangulaire Figure 3 - Création d'une instance de "ReferenceGeographique" La capture suivante montre comment attacher une instance de fragment de texte à une instance de zone géographique. L attachement se fait en ajoutant dans la propriété «apourfragmentr» de l instance de la zone géographique, l instance du fragment que l on veut attacher à cette zone. Ajout du fragment en propriété de la zone géographique Figure 4 - Attachement du fragment à une zone géographique 20