• Aucun résultat trouvé

Génération d’ontologie à partir de differentes sources de données

Réingénierie des applications Web vers les données liées &

5.4 Génération d’ontologie à partir de differentes sources de données

Dans cette section, nous présentons quelques travaux relatifs à la création d’ontologies (ingénierie des ontologies).

Kaljurand [Kaljurand 2007] a proposé une approche qui permet de transfor-mer un texte écrit en langage naturel contrôlé vers une ontologie OWL d’une part, et d’autre part, l’approche permet de verbaliser OWL en des fragments de texte. Les textes utilisés sont générés par ACE (Attempto Controlled English). ACE permet de représenter des séquences de phrases déclaratives simples ou composites en anglais. Kaljurand [Kaljurand 2008] a développé un outil baptisé ACEView pour l’édition et la visualisation de l’ontologie OWL en utilisant le format d’échange SWRL (Semantic Web Rule Language) afin d’étendre les axiomes OWL. L’outil est utilisé comme un plugin dans Protégé, afin d’enrichir son interface basée sur ACE CNL (Controlled Natural Languages). ACEView permet aux utilisateurs d’interagir avec l’ontologie à l’aide de questions ACE (Attempto Controlled English). Cette interaction se fait en mappant le texte ACE en OWL/S-WRL et vice-versa.

Kuhn [Kuhn 2009] a présenté un Wiki sémantique, appelé AceWiki, pour représenter les connaissances, et il a utilisé ACE pour impliquer les utilisateurs ordinaires pour étendre le contenu du Wiki. Kuhn [Kuhn 2013a] a présenté un travail étendu qui permet de transformer le contenu d’AceWiki en OWL en utilisant les avantages de la grammaire de notation de l’éditeur prédictif ACE (codeco). Kuhn [Kuhn 2013b] a fourni une extension d’AceWiki, connue sous le nom d’AcEWiki-GF, pour prendre en charge le multilinguisme en ajoutant un cadre grammatical (GF). Par conséquent, il a donné aux utilisateurs tous les avantages d’AceWiki.

Dimitrova et al. [Dimitrova et al. 2008] ont développé un outil appelé ontolo-gie Rabbit to OWL (ROO) pour l’édition d’ontoloontolo-gies. Ils visaient à couvrir tout le processus d’ingénierie d’ontologie. Cet outil nécessite un expert de domaine pour la création d’ontologies, en particulier dans la première étape du processus et dans la phase de conception.

Denaux et al. [Denaux et al. 2012] ont présenté un outil pour améliorer et augmenter la fonctionnalité de l’outil de création d’ontologies (ROO) par l’in-teraction avec les utilisateurs. Le Framework comprend et analyse les actions de l’utilisateur, et renvoie un retour sémantique pour contrôler les erreurs de modélisation lors de l’insertion d’un nouvel axiome dans l’ontologie. Les auteurs ont proposé dans [Denaux et al. 2013] un nouvel outil qui intègre une interface

Chapitre 5. Etat de l’art

de dialogue. L’outil est considéré comme une extension de Rabbit.

Ougouti et al. [Ougouti et al. 2015] ont présenté un outil appelé MedPeer, qui est un système de gestion de données "hétérogènes et distribuées" qui fonctionne dans un environnement peer-to-peer. La fonction principale de ce système est de générer une ontologie OWL à partir d’une base de données relationnelle.

Sequeda et al. [Sequeda et al. 2012] ont proposé une approche permettant de transformer une base de données relationnelle en un graphe RDF avec un vocabulaire sous forme d’une ontologie OWL. Le travail proposé est basé sur la norme W3C Direct Mapping. Les auteurs ont pris en compte deux propriétés fondamentales pour réaliser une cartographie directe. Ces propriétés sont la préservation des informations et la préservation des requêtes. En outre, ils ont étudié deux autres propriétés : la conservation de la monotonie et la conservation de la sémantique.

Astrova et al. [Astrova & Stantic 2005] ont proposé une approche pour créer une ontologie et ses instances. Cette approche comprend trois étapes : la conceptualisation, la transformation de schéma et la migration des données. La première étape est le résultat d’un processus de rétro-ingénierie qui consiste à créer un modèle représentant les données d’un formulaire. Le modèle est élaboré à partir de l’analyse des formulaires HTML. La deuxième étape est un processus d’ingénierie avancée, qui consiste à créer une ontologie à partir du résultat de la première étape. Enfin, des instances sont créées à partir de la base de données relationnelle lors de l’étape de migration des données.

Benslimane et al. [Benslimane et al. 2008] ont proposé une approche pour créer une ontologie et ses instances à partir des sites Web à forte utilisation de données. Cette approche comprend trois phases : conceptualisation, for-malisation et migration. La conceptualisation est le résultat d’un processus de rétro-ingénierie qui consiste à extraire les sous-schémas relationnels des for-mulaires HTML et leurs dépendances à partir du schéma XML. La phase de formalisation est un processus d’ingénierie avancée, qui consiste à créer un schéma conceptuel basé sur le modèle UML à partir du résultat de la phase précédente. Ensuite, ces modèles UML sont traduits en ontologie OWL. Enfin, les instances sont créées à partir des tuples relationnels pendant la phase de migration.

Le Tableau 5.3 résume les travaux précédemment cités. Il se compose de quatre colonnes : la première contient l’approche décrite. Dans la deuxième colonne, nous donnons les connaissances en entrée qui seront transformées en ontologie OWL. La troisième colonne donne la sortie du système. Enfin, la dernière colonne affiche le nom de l’outil qui a été implémenté pour supporter le travail proposé.

Table 5.3 – Résumé des travaux d’ingénierie des ontologies à partir de différentes sources de données

Approche Entrée Sortie Outil

Kaljurand 2007 Langage naturel

contrôlé (Anglais) OWL

Attempt ACE Kaljurand 2008 Texte ACE- OWL/SWRL OWL/SWRL- texte

ACE ACEView Kuhn 2009, Kuhn

2013a

Contenu Wiki

(Anglais) OWL AceWiki

Kuhn 2013b Contenu Wiki

multilingue OWL AceWiki-GF

Dimitrova et al., 2008 Expert de domaine ou utilisateur OWL Rabbit to OWL ontology (ROO) Denaux et al., 2012, Denaux et al., 2013 Expert de domaine ou utilisateur et feedback. OWL Framework + ROO Ougouti et al., 2015 Base de données

relationnelle OWL MedPeer Sequeda et al., 2012 Base de données relationnelle OWL + RDF / Astrova et al., 2005 Formulaires HTML et base de données relationnelle Ontologie / Benslimane et al., 2008 Formulaires HTML et base de données relationnelle + tuplets

Ontologie OWL Prototype

5.5 Conclusion

La plupart des travaux présentées ci-dessus génèrent soit des données liées à partir des données relationnelles ou à partir des données Web (tables HTML), soit ils génèrent une ontologie à partir des connaissances d’un expert du do-maine, d’un langage contrôlé, de bases de données relationnelles ou de formu-laires HTML.

Les travaux, basés sur les bases de données relationnelles, ne prennent en compte que la partie du langage de définition de données pour créer les instances d’on-tologie et les formulaires HTML pour créer les concepts d’ond’on-tologie.

Dans les deux chapitres suivants, on présente deux approches. La première ap-proche permet de générer des données liées à partir des données HTML, telles que les tables, les listes et même les liens hypertexte. Cette approche est basée sur l’IDM. La seconde approche permet de construire une ontologie à partir d’une application Web en se basant sur leur le code source.

6

Approche I

Sommaire 6.1 Introduction . . . 78 6.2 Exemple d’exécution. . . 78 6.3 Approche proposée. . . 79 6.3.1 Étape de pretraitement . . . 80 6.3.2 Étape de réingénierie basée sur l’IDM . . . 81 6.3.3 Étape de raffinement . . . 88

6.4 Evaluation . . . 90 6.4.1 L’outil implémenté . . . 90 6.4.2 Expérimentations et discussion des résultats . . . 91

6.1 Introduction

Dans ce chapitre nous allons présenter les détails de la première approche proposée pour résoudre le problème de la réingénierie des applications Web vers les données liées [Bouougada et al. 2018]. A travers ce que nous avons vu dans la première partie et exactement dans le chapitre des applications Web, nous avons défini une application Web comme un ensemble de fichiers classés en deux caté-gories : des documents HTML et des scripts PHP. Les fichiers PHP ne sont pas pris en compte dans ce premier système, puisqu’ils ne contiennent pas expli-citement des données, contrairement aux documents HTML. D’où l’idée vient, de transformer les données existantes dans les pages HTML en données liées. Donc, l’approche proposée prend les documents HTML, et elle les transforme en fichiers RDF en se basant sur l’ingénierie dirigée par les modèles. L’approche pro-posée est évaluée sur des pages HTML de Wikipédia, précisément les Infoboxes. Wikipédia est une encyclopédie gratuite et libre. Une infobox est une table située dans le coin supérieur droit d’une page Wikipédia ; elle résume les informations utiles sur un sujet.