37
Institut de la Francophonie pour l'Informatique -----------------o0o----------------- Mémoire de fin d’études DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS Etudiant : HUNH HU HƯNG Professeur : BERNARD LEFEBVRE Mars 2003

DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

Institut de la Francophonie pour l'Informatique -----------------o0o-----------------

Mémoire de fin d’études

DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS

Etudiant : HUỲNH HỮU HƯNG

Professeur : BERNARD LEFEBVRE

Mars 2003

Page 2: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

Remerciements

Mon stage de fin d'études à laboratoire "Gestion et Diffusion du Savoir en Télécommunication" (GDST) de l’Université du QuéBec à Montréal s'est terminé et ce mémoire présente tout mon travail. Avant tout, je souhaite exprimer mes remerciements à ceux qui m'ont aidé à bien finir le stage.

Je voudrais d'abord remercier M. Bernard Lefebvre, mon responsable de stage. Il a consacré son temps précieux pour m'aider à surmonter des problèmes difficiles survenus durant le stage. Je lui dois une profonde reconnaissance pour ses instructions détaillées et sa gentillesse. Monsieur Bernard Lefebvre a corrigé pour moi le rapport avec enthousiasme, je lui réserve ma reconnaissance profonde.

Ensuite, j'adresse toute ma gratitude à M. Yassine Gargouri qui m'a initié à la recherche dans le domaine des ontologies. Ses suggestions, ses critiques et ses conseils ont contribué à l'aboutissement de ce travail.

Je remercie beaucoup les professeurs de l’IFI, qui me donnent des connaissances profondes au cours de mes études.

Je remercie mes amies à l’IFI pour leurs conseils, leur collaboration. Je remercie également mes amies à Montréal, leur accueil, leurs aides.

HUYNH Huu Hung

Page 3: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

Table des matières RÉSUMÉ ...................................................................................................................................4

ABSTRACT ..............................................................................................................................5

1. INTRODUCTION ................................................................................................................6

2. WEB SÉMANTIQUE ..........................................................................................................7

2.1 CONCEPTS DE BASE............................................................................................................7 Web sémantique..................................................................................................................7 Le Web sémantique est une prolongation du Web courant laquelle l'information possède une signification bien définie qui permet aux ordinateurs et aux personnes de mieux travailler en coopération. ...................................................................................................7 Ontologie ............................................................................................................................7 Méta-données .....................................................................................................................8 Méta-données relationnelles...............................................................................................8 Annotation ..........................................................................................................................8 Dublin Core ........................................................................................................................8

2.2 BASE D’ONTOLOGIE ...........................................................................................................8 Définition d’ontologie ........................................................................................................8 Quels sont les composants principaux d'une ontologie?....................................................9 Types d’ontologie .............................................................................................................10 Langage de spécification d’ontologie ..............................................................................10 Un squelette de méthodologie pour construire des ontologies.........................................14 Un exemple d’ontologie....................................................................................................16

2.3 BASE D’ANNOTATION ......................................................................................................17 Des exigence pour l’annotation........................................................................................18 Des outils d’annotation ....................................................................................................19 Des commentaires sur les outils et les modèles d’annotation ..........................................20

3. SOLUTION .........................................................................................................................20

3.1 MODÈLE MO ...................................................................................................................20 3.2 MODÈLE CREAM ...........................................................................................................22 3.3 PROPOSITION D’UNE SOLUTION........................................................................................25

3.3.1 Le modèle d’annotation proposé .............................................................................25 3.3.2 L’outil AnnoCitaTool...............................................................................................31

4 ANALYSE ............................................................................................................................33

4.1 TROIS TYPES D’ANNOTATION...........................................................................................33 4.1.1 L’annotation manuelle.............................................................................................33 4.1.2 L’annotation par sélection ......................................................................................34 4.1.3 L’annotation automatique .......................................................................................34

4.2 RESTRICTIONS .................................................................................................................35 5 CONCLUSION....................................................................................................................37

Page 4: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

Résumé

Dans des domaines d'application comme les agents personnels d'information et les systèmes tuteurs intelligents, les modèles d'usager maintiennent typiquement les représentations sophistiquées des profils d'intérêt personnels et des niveaux de la connaissance/compétence. Ces représentations peuvent être utilisées pour la recherche, la livraison efficace de document et le filtrage aussi bien que pour la présentation personnalisée de l'information.

Les services de livraison de l'information dans le modèle Mémoires d'Organisation (MO) adressent principalement les mêmes buts, mais déduisent les besoins réels d'information à partir de la tâche d’affaire actuelle (par exemple, voyez [1].) À cet effet, des modèles de processus d'affaires sont prolongés par les besoins spécifiques d’information pour la tâche et le rôle. Habituellement, on ne l’utilise pas en considérant quel l'employé traite réellement une tâche donnée. Les services d'information intelligents dans un environnement d'affaires devraient combiner les deux modèles, la perspective personnelle et celle du processus d'affaires.

Dans mon mémoire de fin d’études, je présente mes travaux dans le projet "Gestion et Diffusion du Savoir en Télécommunication" (GDST). Le projet GDST a pour principal but de mettre en place une gestion informatisée de documents pour une entreprise, qui puisse permettre le développement des compétences des ressources humaines pour les besoins de l’entreprise. Mes travaux sont: mettre en place une ontologie du document ayant des relations avec les autres ontologies: ontologie du domaine, ontologie de l’usager, ontologie du processus, ontologie de la compétence ; réaliser un outil semi-automatique (AnnoCitaTool), qui nous permet de faciliter les processus d’annotation, de citation des termes de l’ontologie du domaine pour les documents. L’ontologie du document (comme les autres) est rédigée en DAML+OIL - un langage de représentation de la connaissance qui est développé pour le Web sémantique. L’outil AnnoCitaTool crée et exporte des annotations DAML, et elles sont validées grâce à DAML Validator sur l’Internet (le site www.daml.org/validator).

La présentation de la connaissance des entreprises selon le modèle MO en utilisant des ontologies, est une approche à la mode. L’ontologie est une nouvelle technique pour présenter de la connaissance, elle possède des avantages, par exemple: être compréhensible par une machine, être réutilisable, partage...

Page 5: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

Abstract

In application areas like personal information agents and intelligent tutoring systems, user models typically maintain sophisticated representations of personal interest profiles and knowledge / skill levels. These representations can be utilized for effective information retrieval, delivery and filtering as well as for personalized information presentation.

Information delivery services within model of Organizational Memories (OM) mainly address the same goals, but prevalently derive actual information needs from the concrete business task at hand (e.g., see [1]). To this end, business process models are extended by task and role specific information needs. Usually, it is not taken into account which employee actually deals with a given task. Apparently, intelligent information services in a business environment should combine both, the personal and the business process perspective.

In my essay, I present my work in the project "Management and Diffusion of the Knowledge in Telecommunication" (GDKT). The main purpose of the project GDKT is to set up a computerized management of documents for a company, which can makes it possible to allow the development of competences of human resources for the needs of an enterprise. My work is: to set up a document ontology having relations with other ontology: domain ontology, user ontology, process ontology, competence ontology, and to produce a semi-automatic tool (AnnoCitaTool), which enables us to facilitate the processes of annotation and quotation of the terms of the domain ontology appering in the documents. The document ontology as well as the others is written in DAML+OIL - a language for knowledge representation that is developed for the semantic Web. AnnoCitaTool creates and exports DAML annotations to a DAML file that are validated thanks to DAML Validator on the Internet (the site www.daml.org/validator).

The presentation of the knowledge of the enterprises done according to the OM model and using an ontology is a modern approach. The ontology is a new technique to present knowledge that has strong properties: machine understandable, reusable, sharing...

Page 6: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

1. Introduction La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

accessibles non seulement aux humains, mais également aux processus automatisés comme celui d’un agent automatisé errant le Web, accomplissant des tâches utiles telles que la recherche améliorée (en termes de précision), la découverte de ressource, le courtage d'information et le filtrage d'information. L'automatisation des tâches nécessite d'élever le statut du Web de lisible par machine à quelque chose que nous pouvons appeler compréhensible par machine. L'idée principale est d'avoir des données sur le Web définies et liées de telle manière que leur signification soit explicitement interprétable par des humains.

Dans cette vision du Web sémantique, les ontologies sont de plus en plus devenus une matière de recherches importante. Elles sont utilisées dans de nombreux domaines et elles jouent un rôle crucial dans le développement du Web sémantique.

Pour réaliser cette vision, il sera nécessaire d’annoter des ressources Web avec les méta-données (c.-à-d., les données décrivant leur contenu/fonctionnalité ). En particulier, nous pouvons souhaiter annoter des ressources Web avec les méta-données sémantiques qui fournissent une certaine indication de la teneur d'une ressource. C'est plus qu’une annotation textuelle simple, car l'intention dans le contexte du Web sémantique est que cette information soit accessible non seulement aux humains mais également aux agents logiciels. Afin de faire ceci, nous avons besoin de langages qui soutiennent la représentation des méta-données sémantiques. Les propositions de langages de méta-données sont issues de recommandations du World Wide Web Consortium (W3C), c’est le cas particulier de Resource Description Framework (RDF), de RDF Schema (RDF(S)) et de XML/XML Schema [3]. Cependant, de telles annotations auront une valeur limitée au processus automatisé à moins qu'elles ne partagent une compréhension commune quant à leur signification. Les ontologies peuvent aider à répondre à cette exigence en fournissant une "représentation d'une conceptualisation partagée d'un domaine particulier" et un vocabulaire partagé, contrôlé et qui peut être communiqué à des personnes et des applications.

Dans le cadre de mon stage, j’ai étudié les résultats récents dans le domaine du Web sémantique, le modèle OM qui permet de diffuser des documents aux usagers selon leurs tâches et leurs rôles actuels, j’ai participé au projet GDST, j’ai développé une base documentaire dans domaine des télécommunications et associé des classes (des termes) dans l’ontologie du domaine aux documents, j’ai enrichi des documents en ajoutant des balises sémantiques dans le contexte du processus d’annotation-citation. Les travaux principaux sont de proposer un modèle pour présenter des documents en utilisant le schéma de Dublin Core – qui définit l’ontologie d’information et présente la structure et les propriétés des objets d’information. Ils sont ensuite de proposer un modèle qui représente la relation sémantique entre les classes dans l’ontologie du domaine et des documents, i.e. la création des annotations sémantiques basées sur l’ontologie. Le travail de création des annotations sémantiques demande beaucoup de temps. Il est trop long et fastidieux de lire tous les documents, de chercher si les documents contiennent des termes de l’ontologie du domaine et d’annoter ces termes (ajouter des annotations DAML+OIL). Le but principal est donc de développer un outil de type semi-automatique pour faciliter le processus d’annotation-citation, basé sur le modèle proposé. Les résultats obtenus sont validés grâce au l’outil DAML Validator, à l’adresse www.daml.org/validator sur l’Internet.

Ces travaux concernent plusieurs domaines: l’ontologie, le Web sémantique, et le traitement du langage naturel. L’ontologie est une nouvelle technique utilisée pour présenter

Page 7: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

de la connaissance. Plusieurs méthodes sont proposées pour la construction des ontologies à partir de corpus, qui impliquent des traitements du langage naturel qui sont reconnus difficiles et complexes. Il existe aussi des contraintes techniques. Les langages de spécification d’ontologie, les outils d’exploitation d’ontologie sont dans phrase de développement, et ils possèdent des limitations que l’on va considérer dans les sections suivantes.

Mon stage se déroule au sein du laboratoire de recherche GDAC (Gestion, Diffusion et Acquissions de Connaissances - http://info.uqam.ca/recherche/laboratoires.html), de l’Université du Québec à Montréal, sous la direction de Bernard Lefebvre – professeur, directeur des programmes de certificat en informatique et Yassine Gargouri - doctorant en Informatique Cognitive, Université du Québec à Montréal.

Dans le reste de mon mémoire, la section 2 présente le Web sémantique avec des concepts de base du Web sémantique, les méta-données, les ontologie, les langages de présentation de la connaissance, certains des outils de construction d’ontologie et quelques outils d’annotation. La section 3 présente modèle MO, le modèle CREAM[4], notre modèle d’annotation et l’outil d’annotation à développer. Ce mémoire se termine par l’analyse de résultats et la conclusion.

2. Web sémantique Le Web sémantique est le Web de demain. Dans le Web sémantique, les données

sémantiques jouent un rôle important. Elles sont définie à l’aide de Méta-données, un type de données sémantique, qui permettent d’enrichir des pages Web. Les méta-données décrivent les attributs et la sémantique des documents. La différence principale entre le Web sémantique et le Web courrant est que dans le Web sémantique, on fait la recherche des termes avec le contexte qui leur correspond, en revanche, on fait la recherche par mot-clé sur le Web courant.

2.1 Concepts de base

Web sémantique

Le Web sémantique est une prolongation du Web courant laquelle l'information possède une signification bien définie qui permet aux ordinateurs et aux personnes de mieux travailler en coopération.

Les points clés à noter sont "la lisibilité par une machine" et "le traitement automatique". Ceci nous mène directement au fait qu'une certaine sorte de données additionnelles, indépendamment du contenu réel des pages Web, est exigé de sorte que n'importe quel outil puisse accéder à ces données, les traiter selon ses conditions et présenter les résultats à l'utilisateur avec plus de pertinence et d’intelligence plutôt qu'un texte simple qui résulte de la recherche par mot-clé. Ces données additionnelles sont les méta-données.

Ontologie

Dans le domaine de l'informatique, les ontologies visent à capturer la connaissance de domaine d'une manière générique et fournissent une compréhension généralement convenue à travers un domaine. Elles peuvent être réutilisées et partagées entre les applications et les groupes [5]. Les ontologies fournissent un vocabulaire commun d'un secteur et définissent - avec différents niveaux de formalité - la signification des termes et les relations entre eux.

Page 8: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

Une ontologie est un ensemble de spécifications formelles et explicites d'une conceptualisation partagée d'un domaine d'intérêt.

Méta-données

C'est une chose étrange de noter qu'en dépit des milliards de pages Web disponibles partout sur l'Internet, nous sommes à court d'information. Ce que nous avons ce sont seulement des données. Il n'existe pas aujourd'hui, un outil qui lit automatiquement toutes ces données et qui nous les présente avec ce que nous voulons exactement. Tous ces moteurs de recherche et robots de recherche errant autour de l'Internet se fondent la plupart du temps sur la recherche par mot-clé, tendis que nous voulons des données sur la base d’un contexte sémantique.

Les méta-données sont des données au sujet des données, elles sont compréhensibles et traitables par des machines automatiquement. Ces données ne sont pas seulement relatives aux pages Web, elles peuvent être au sujet de n'importe quelles données.

Méta-données relationnelles

Nous utilisons le terme de méta-données relationnelles pour dénoter les annotations qui contiennent des instances de relation.

Annotation

L'annotation est une des formes les plus communes de méta-données dans le contexte du Web. L’annotation sémantique peut être faite sous la forme de commentaires, de notes, d’explications, de questions, de références, d’exemples, de conseil, de correction ou de n'importe quel autre type de remarque externe qui peut être attaché à un document Web ou à une partie choisie de ce document. Puisque ces éléments sont externes, il est possible d'annoter n'importe quel document Web indépendamment, sans devoir éditer ce document. Du point de vue technique, des annotations sont habituellement vues comme des méta-données, car elles fournissent des informations additionnelles sur un morceau existant de données. Elles peuvent être stockées soit sur le poste de travail de l'usager pour son usage privé, soit sur des serveurs communs. Des annotations stockées sur des serveurs publics peuvent être rendues disponibles à quiconque avec l'authentification appropriée. De cette façon tout le monde peut partager son point de vue ou ses commentaires au sujet d'un site Web particulier concernant ses contenu, utilité, etc.

Dublin Core

Dublin Core est un ensemble des éléments de méta-données prévu pour faciliter la découverte des ressources électroniques en décrivant le titre, l’auteur, le sujet, la description, l’éditeur, le collaborateur (-trice), la date, le type, le format, l’identificateur, la source, la langage, la couverture, les droits.

2.2 Base d’ontologie

Définition d’ontologie

Une ontologie est une spécification formelle d’un haut niveau de certain domaine de la connaissance: une spécification formelle et explicite d'une conceptualisation partagée [6]. Une conceptualisation de domaine est une vue particulière, abstraite au sujet des entités réelles, des événements et de leurs rapports. Formel réfère au fait qu'une ontologie est une

Page 9: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

forme de représentation de la connaissance et a des spécifications formelles logicielles pour représenter de telles conceptualisations de domaine, c.-à-d. qu’une ontologie doit être compréhensible par une machine. Explicite signifie que tous les types primitifs, les concepts, et les contraintes qui sont utilisés dans les spécifications de l'ontologie sont explicitement définis. Finalement, partage signifie que la connaissance inclue dans l’ontologie est une forme de connaissance consensuelle [11], c.-à-d., qui n’est pas propre à un individu, mais qui est acceptée par un groupe. Figure xx présente l’exemple d’une otologie.

Quels sont les composants principaux d'une ontologie?

Comme nous l’avons abordé, les ontologies fournissent un vocabulaire commun d'un secteur et définissent – avec différents niveaux de formalité - la signification des termes et des relations entre elles. La connaissance dans les ontologies est principalement formalisée en utilisant les cinq types de composants: classes, relations, fonctions, axiomes et instances [12].

Les classes dans l'ontologie sont habituellement organisées dans des taxonomies. Classes ou concepts sont employés dans un sens large. Un concept peut être quelque chose au sujet duquel quelque chose est dite et pourrait, en conséquence, également être la description d'une tâche, d'une fonction, d'une action, d'une stratégie, d'un processus de raisonnement, etc...

Les relations représentent un type d'interaction entre les concepts du domaine. Elles sont formellement définies comme n'importe quel sous-ensemble d'un produit de n-ensemble : R dans C1 x C2 x... x Cn. Des exemples de relations binaires incluent: sous-classe-de et relier-à.

Les fonctions sont un cas spécial de relations dans lesquelles le nième élément de la relation est unique pour les n-1 éléments précédents. Formellement, des fonctions sont définies comme: F: C1 x C2 x... x Cn-1 -> Cn. Les exemples des fonctions sont Mère-de et Prix-de-une -voiture-utilisée, qui calcule le prix d'une voiture d’occasion selon le modèle de la voiture, la date de fabrication et le nombre de kilomètres.

Les axiomes sont employés pour modéliser les phrases qui sont toujours vraies. Ils peuvent être inclus dans une ontologie pour plusieurs buts, tels que définir la signification de composants d'ontologie, définir les contraints complexes sur les valeurs des attributs, les arguments de relations, etc., vérifier l'exactitude d'informations indiquées dans l'ontologie ou déduire une nouvelle information.

Les instances sont utilisées pour représenter les éléments spécifiques.

Une fois que les composants principaux des ontologies ont été présenté, la question suivante est que "à quoi ressemble une ontologie explicite? Uschold et Grüninger [5]) ont distingué les quatre genres d'ontologies selon le genre de langage employé pour les mettre en application. Ce sont: les ontologies fortement informelles s'elles sont écrites en langage naturel; les ontologies semi-formelles si elles sont exprimées sous une forme restreinte et structurée du langage naturel (c.-à-d., en utilisant des modèles); les ontologies formelles, qui sont définies dans un langage artificiel formellement décrit; et les ontologies rigoureusement formelles si elles sont définies dans un langage avec une sémantique formelle; des théorèmes et des preuves formelles de propriétés telles que la complétude et la consistance.

Page 10: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

Types d’ontologie

Cette section ne cherche pas à donner une typologie approfondie des ontologies. Cependant, elle présente les types le plus généralement utilisés d'ontologies. Ainsi le lecteur peut avoir une idée de la connaissance qui est incluse dans chaque type d'ontologie. Fondamentalement, les catégories suivantes sont identifiées: les ontologies de représentation de la connaissance, les méta-ontologies, les ontologies du domaine, les ontologies des tâches, les ontologies de domaine-tâche, les ontologies de la compétence, les ontologie du document, les ontologies d’information, les ontologie de l’usager, les ontologies d’application, les ontologies d'index, les ontologies de dire et de demander, etc.

• L’ontologie de représentation de la connaissance capture les primitives de représentation utilisés pour formaliser de la connaissance dans les paradigmes de représentation de la connaissance. L'exemple le plus représentatif de ce genre d'ontologie est l’ontologie du cadre, qui capture les primitives de représentation (classes, exemples, fentes, facettes, etc...) utilisées dans des langages basés cadres.

• Les ontologies générales incluent le vocabulaire lié aux choses, aux événements, au temps, à l'espace, à la causalité, au comportement, à la fonction, etc...

• Les méta-ontologies, également appelées ontologies génériques ou les noyaux ontologiques sont réutilisable à travers des domaines. L'exemple le plus représentatif pourrait être une ontologie de méréologie qui inclurait le terme partie-de.

• Les ontologies du domaine sont réutilisable dans un domaine donné. Elles fournissent des vocabulaires au sujet des concepts dans un domaine et leurs relations au sujet des activités qui ont lieu dans ce domaine, et au sujet des théories et des principes élémentaires régissant ce domaine.

• Les ontologies de tâches fournissent un vocabulaire systématisé des termes employés pour résoudre des problèmes liés aux tâches qui peuvent être ou non du même domaine. Ces ontologies fournissent un ensemble de termes au moyen desquelles nous pouvons décrire généralement comment résoudre un type de problèmes. Elles incluent des noms génériques, des verbes génériques, des adjectifs génériques et 'autres dans les descriptions de tâches.

• Les ontologies de domaine-tâche sont des ontologies de tâche réutilisables dans un domaine donné, mais pas à travers des domaines.

• Les ontologies d'application contiennent la connaissance nécessaire pour modéliser un domaine particulier.

• L'ontologie de la compétence représente la connaissance, les compétences, le rôle, les positions, le profil, les intérêts des individus, des groupes requis dans le lieu de travail pour exécuter certaines fonctions d'affaire de l'organisation.

Langage de spécification d’ontologie

Plusieurs langages de spécification d'ontologies (ou langage d’ontologies) ont été développés pendant les dernières années, et ils deviendront sûrement des langages d'ontologie dans le contexte du Web sémantique. Certains d'entre eux sont basés sur la syntaxe de XML, tels que XOL (Ontology Exchange Language), SHOE (Simple HTML Ontology Extension - qui a été précédemment basé sur le HTML), OML (Ontology Markup Language), RDF

Page 11: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

(Resource Description Framework), RDF Schéma. Les 2 derniers sont des langages créés par des groupes de travail du World Wide Web Consortium (W3C). En conclusion, trois langages additionnels sont établis sur RDF(S) pour améliorer ses caractéristiques: OIL (Ontology Inference Layer), DAML+OIL et OWL (Web Ontology Language). La figure ci-dessous présente des langages de spécification d’ontologie, qui ont été récemment développés. La figure 1 représente les rapports principaux entre tous ces langages sous la forme d’une pyramide des langages du Web sémantique.

Figure 1: La pyramide des langages basés Web.

XOL (XML-Based Ontology Exchange Language)

La communauté de bio-informatique des État-Unies a conçu XOL pour l'échange des définitions d'ontologies parmi un ensemble hétérogène de systèmes logiciels dans leur domaine. Les chercheurs l'ont créé après avoir étudié les besoins représentables des experts en matière de bio-informatique. Ils ont choisi Ontolingua et OML comme base pour créer XOL, fusionnant le haut pouvoir d’expression d'OKBC-Lite, un sous-ensemble du protocole OKBC (Open Knowledge Based Conectivity), et la syntaxe d'OML, basée sur XML. Il n'y a aucun outil qui permette le développement des ontologies en utilisant XOL. Cependant, puisque les fichiers de XOL emploient la syntaxe de XML, nous pouvons utiliser un rédacteur de XML pour écrire des fichier de XOL.

SHOE (Simple HTML Ontology Extension)

SHOE a été développé à l'Université de Maryland et il est utilisée pour développer OML. Il a été créé comme prolongation d’HTML, incorporant la connaissance sémantique compréhensible par une machine dans des documents HTML ou d'autres documents Web. Récemment, l'Université de Maryland a adapté la syntaxe de SHOE à la syntaxe de XML. SHOE permet que les agents ramassent des informations significatives sur des pages Web et des documents ce qui améliore les mécanismes de recherche et de rassemblement de la connaissance. Ce processus se compose des trois phases: définir une ontologie, annoter les pages HTML avec l'information ontologique et avoir un agent pour rechercher sémantiquement l'information en recherchant toutes les pages existantes et en maintenant l'information mise à jour.

OML (Ontology Markup Language)

OML a été développé à l'Université de Washington, est partiellement basé sur SHOE. En fait, on l'a considéré comme une sérialisation de XML. Par conséquent, OML et SHOE partagent beaucoup de caractéristiques. Quatre niveaux différents d'OML existent: l’OML de base est lié aux aspects logiques du langage et est inclus par le reste des couches; l’OML simple s’adresse directement à RDF(S); l’OML abrégé inclut les caractéristiques de graphique conceptuel et l’OML standard est la version la plus expressive. Nous avons choisi OML simple, parce que les couches élevées ne fournissent pas plus de composants que ceux identifiés dans notre cadre. Les couches plus élevées sont étroitement liées à la représentation

XML

SHOE XOL OML RDF(S)

OIL DAML+OIL OWL

Page 12: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

des graphiques conceptuels. Il n'y a aucun autre outil pour rédiger des ontologies en OML que les outils de rédaction des ontologies en XML.

RDF(S) (Resource Description Framework and SDF Schema)

RDF a été développé par le W3C pour décrire des ressources Web. Il permet les spécifications des données sémantiques basées sur XML d'une façon normalisée et inter-opérable. Il fournit également des mécanismes pour représenter explicitement des services, processus, et des modèles d'affaires, tout en permettant l'identification d'information non-explicite. Le modèle de données de RDF est équivalent au formalisme sémantique de réseaux. Il se compose de trois types d'objet: des ressources qui sont décrites par des expressions de RDF et sont toujours nommées par URIs plus des identifications; des propriétés définissent des aspects, des caractéristiques, des attributs ou des relations spécifiques employées pour décrire une ressource; et des instructions qui assignent une valeur à une propriété dans une ressource spécifique (cette valeur pourrait être une autre instruction de RDF). Le modèle de données de RDF ne fournit pas des mécanismes pour définir les rapports entre les propriétés (attributs) et les ressources - ceci est le rôle de RDFS. RDFS offre des primitives pour définir les modèles de la connaissance qui sont plus près des approches basées cadres. RDF(S) est largement utilisé comme format de représentation dans beaucoup d'outils et projets, comme Amaya, Protégé, Mozilla, SilRI, et ainsi de suite.

OIL (Ontology Interchange Language)

OIL a été développé dans le projet d'OntoKnowledge (www.ontoknowledge.org/OIL). Il permet l’interopérabilité sémantique entre les ressources Web, sa syntaxe et sa sémantique sont basées sur les propositions existantes (OKBC, XOL, et RDF(S)). OIL est construit sur RDF(S) (voir le schéma 1), a les couches suivantes: OIL Core groupe les primitives d’OIL qui sont en rapport direct aux primitives de RDF(S); OIL standard est le modèle complet, il utilise plus de primitives que celles définies dans RDF(S); OIL Instance ajoute des instances de concept et de rôles au modèle précédent; et OIL Heavy est la couche pour des prolongements futurs d'OIL. OILed, Protégé2000, et WebODE peuvent être employés pour rédiger des ontologies en OIL. La syntaxe d'OIL est non seulement exprimée en XML mais peut également être présentée dans une forme textuelle.

DAML+OIL (DARPA Agent Markup Language + OIL)

DAML+OIL a été développé par un Comité mixte des US et de l'union européenne (IST) dans le contexte de DAML, un projet de DARPA pour permettre l'interopérabilité sémantique en XML. Donc, DAML+OIL partage le même objectif que OIL. DAML+OIL est construit sur RDF(S). Son nom suggère implicitement qu'il y ait un rapport serré avec OIL. Les spécifications initiales se sont appelées DAML-ONT et ont été également basées sur le langage d'OIL. OILed, OntoEdit, Protégé2000, et WebODE sont des outils qui peuvent rédiger des ontologies en DAML+OIL. Dans l’outil à développer, on crée des annotations DAML, donc on présente ci-dessous quelques éléments de la syntaxes de DAML+OIL.

daml :Ontology

<daml:Ontology rdf:about="">

<daml:versionInfo>Description d’ontologie à développer</versionInfo>

<rdfs:comment>Des commentaires d’ontologie</rdfs:comment>

<daml:imports rdf:resource="URL d’une autre ontologie"/>

Page 13: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

</daml:Ontology>

daml:Ontology définit une ontologie avec des informations descriptives: version, conmmentaires.

daml:Class

<daml:Class rdf:ID=’Animal’>

<rdfs:label>Animal</rdfs:label>

<rdfs:comment>

This class of animals is illustrative of a number of ontological idioms.

</rdfs:comment>

</daml:Class>

Exemple ci-dessus définit une classe nommée ‘Annimal’ avec des informations descriptives comme: étiquette, commentaires.

daml:ObjectProperty

<daml:ObjectProperty rdf:ID="hasParent">

<rdfs:domain rdf:resource="#Animal"/>

<rdfs:range rdf:resource="#Animal"/>

</daml:ObjectProperty>

daml:ObjectProperty définit une relation (ou propriété), qui est appliquée à la classe Animal est la valeur pour cette relation doit être une instance de classe Animal.

daml:Restriction

<daml:Class rdf:ID="Person">

<rdfs:subClassOf rdf:resource="#Animal"/>

<rdfs:subClassOf>

<daml:Restriction>

<daml:onProperty rdf:resource="#hasParent"/>

<daml:toClass rdf:resource="#Person"/>

</daml:Restriction>

</rdfs:subClassOf>

</daml:Class>

daml:Restriction comme balise interne à daml:Class est utilisée pour définir des relations de classe. Elle définit aussi une classe anonyme. Dans exemple ci-dessus, Person est une sous-classe de Animal, elle est aussi une sous-classe d’une classe anonyme, qui est définie par daml:Restriction.

OWL (Web Ontology Language)

OWL peut être utilisé pour représenter explicitement des vocabulaires de termes et des rapports entre les entités dans ces vocabulaires. OWL est une révision de DAML+OIL qui

Page 14: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

utilise la conception et l'application de DAML+OIL. Il n’existe pas d’outil qui soutienne OWL, mais on peut également utiliser des éditeurs de texte pour rédiger des ontologies en OWL.

Un squelette de méthodologie pour construire des ontologies

Bien qu'il y ait beaucoup d'expériences collectives en développant et en utilisant des ontologies, il n'y a aucune méthodologie standard pour construire des ontologies. Une méthodologie complète proposée pour développer des ontologies inclut : l’identification du but et de l’étendue, la construction de l’ontologie, l’évaluation, la documentation.

Le but et l’étendue. Il est important de clairement identifier pourquoi l'ontologie est construite? ce que sont ses utilisations prévues ? Celles-ci peuvent être un point de départ pour l’identification du but d'une ontologie. Il sera également utile d'identifier et de caractériser la portée des utilisations prévues de l'ontologie.

Construction d’ontologie. Le processus de construction d’ontologie se compose de trois étapes: capturer, coder, intégrer des ontologies existantes:

Capturer, c.-à-d., identifier des concepts principaux et leurs rapports dans le domaine d'intérêt (l’étendue); produire des définitions non-ambiguës précises des textes pour ces concepts et rapports; être d’accord sur les définitions.

L’étape d’étendue inclut les tâches: brainstorming - produire tous les termes et les expressions potentiels; groupement - structurer lâchement les termes dans des secteurs de travail correspondant pour aboutir naturellement à des sous-groupes; correspondance - identifier les références croisées sémantiques entre les secteurs (concepts qui sont probables de se référer à ou d’être référés par des concepts dans d'autres secteurs.

L’étape de production des définitions: déterminer la méta-ontologie – considérer soigneusement les concepts et leurs inter-relations et déterminer les exigences pour la méta-ontologie; sélectionner des secteurs de travail - commencer par les secteurs de travail qui ont le plus de chevauchement sémantique avec d'autres secteurs de travail; définir des termes - procéder par l’approche par le milieu plutôt que la descendante ou l’ascendante. C'est-à-dire, on définit les limites les plus fondamentales dans chaque secteur de travail avant de passer à des termes plus abstraits ou plus spécifiques. Une petite comparaison entre ces trois méthodes dans les figures x1, x2, x3.

Être d’accord entre les définition: Pour quelques termes, le consensus sur la définition d'un concept simple peut être assez facile. Dans d'autres cas plusieurs termes semblent correspondre à une définition de concept. Ceci devrait être enregistré dans les notes avec la définition...

Page 15: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

Figure x1 : L’approche ascendante

Figure x2 : L’approche descendante

Figure x3 : L’approche par le milieu

Approche Ascendante

Détail de haut niveauDifficulté de communalisation

Inconsistance Re-faire & plus effort

Approche Descendante

Une meilleure contrôle du niveau de détail

Choisir des catégories de haut niveau quelconques

Re-faire et plus d’effort

Moins de stabilité

Approche par le milieu

Capturer la communalisation

Consistance & Précision

Mois de re-faire

Équilibre en termes de niveau de détail Stabilité

Commencer par la plupart des concepts importants

Mois re-fait et moins effort

Page 16: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

Un exemple d’ontologie

Le code ci-dessous présente l’exemple d’une ontologie, rédigée en DAML+OIL : <!--efinition namespace-->

<rdf:RDF

xmlns:rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"

xmlns:daml="http://www.daml.org/2001/03/daml+oil#"

>

<!—header of ontology-->

<daml:Ontology rdf:about="">

<daml:versionInfo>$Id v1.9 2001/05/03 Exp $</daml:versionInfo>

<rdfs:comment>

An example ontology, with data types taken from XML Schema

</rdfs:comment>

<daml:imports rdf:resource="http://www.daml.org/2001/03/daml+oil"/>

</daml:Ontology>

<!—defintion class Animal-->

<daml:Class rdf:ID="Animal">

<rdfs:label>Animal</rdfs:label>

<rdfs:comment>

This class of animals is illustrative of a number of ontological idioms.

</rdfs:comment>

</daml:Class>

<!—defintion class Male, sub-class of class Animal-->

<daml:Class rdf:ID="Male">

<rdfs:subClassOf rdf:resource="#Animal"/>

</daml:Class>

<!—defintion class Male, sub-class of class Animal-->

<daml:Class rdf:ID="Female">

<rdfs:subClassOf rdf:resource="#Animal"/>

<daml:disjointWith rdf:resource="#Male"/>

</daml:Class>

<daml:Class rdf:ID="Man">

<rdfs:subClassOf rdf:resource="#Person"/>

<rdfs:subClassOf rdf:resource="#Male"/>

</daml:Class>

Page 17: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

<daml:Class rdf:ID="Woman">

<rdfs:subClassOf rdf:resource="#Person"/>

<rdfs:subClassOf rdf:resource="#Female"/>

</daml:Class>

<!—defintion relation for class Animal-->

<daml:ObjectProperty rdf:ID="hasParent">

<rdfs:domain rdf:resource="#Animal"/>

<rdfs:range rdf:resource="#Animal"/>

</daml:ObjectProperty>

<daml:ObjectProperty rdf:ID="hasFather">

<rdfs:subPropertyOf rdf:resource="#hasParent"/>

<rdfs:range rdf:resource="#Male"/>

</daml:ObjectProperty>

....

</rdf:RDF>

2.3 Base d’annotation

L’annotation est le processus de création des méta-données, et des méta-données relationnelles pour les documents Web pour les attacher aux documents. Auparavant, les annotations étaient crées en définissant les champs décrits dans Dublin Core. Maintenant, avec la présence d’ontologies, les annotations sont crées non seulement à partir des champs de Dublin Core mais aussi par extraction de la connaissance des documents en utilisant l’ontologie. Cette approche est appelée annotation basée sur des ontologies. Les annotations peuvent être insérées directement aux documents ou stockées séparément. Si le point de vue des annotateurs est différent, il vaut mieux alors avoir une base d’annotation indépendante des documents, particulièrement, dans le cas d’annotation basée sur des ontologies où le volume des méta-données est très grand. Un exemple d’annotation :

<html xmlns:uw="http://www.cs.washington.edu/research/semweb/vocab#">

<uw:event>

<uw:topic><i>New Grad</i> Orientation Lunch </uw:topic>

<uw:date>Sep 26, 2002</uw:date> at

<uw:time>1:00-2:30 p.m.</uw:time> on the

<uw:location>HUB Lawn</uw:location>.

</uw:event>

</html>

Cette méthode est utilisée dans le cas où le nombre de balises sémantiques est rare.

L'annotation sémantique est une technologie de base pour le contenu intelligent. Elle est aussi salutaire dans un éventail d'applications intelligentes orientées contenu. Cependant, l'annotation sémantique des documents et des pages Web est une tâche pénible et longue.

Page 18: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

Avec le développement du Web sémantique, des méthodes, des outils d’annotation sémantique ont été développés, avec l’objectif principal de créer et de maintenir ces ajouts basés sur l’ontologie dans des documents Web statiques. En fait, ils sont utilisés pour gérer facilement des instances, des attributs et des rapports entre les ressources Web qui sont mises en application dans SHOE, lRDF(S) ou DAML+OIL. Ces outils sont catégorisés en annotation manuelle, annotation semi-automatique, annotation automatique et hybride.

Les outils semi-automatiques soutiennent l'association des mots dans un document aux classes et aux propriétés de DAML sur la base du jugement humain. Le lien réel est fait avec une certaine forme d'interface de type "drag and drop". OntoMat [7] est un exemple de ces outils d'annotation semi-automatique.

Les outils automatiques appliquent des techniques de traitement de langage naturel pour assigner des mots aux classes et aux propriétés. Ces outils peuvent fonctionner avec un certain ensemble prédéterminé d'ontologies (par exemple OpenCyc, IEEE Standard Upper Ontology) ou des ontologies quelconques (par exemple, Universal Standard Products and Services Classification Code (UNSPSC), Unified Medical Language System (UMLS)). Un outil automatisé peut également incorporer un soutien plus sophistiqué du développement d'une ontologie du domaine ou d’une ontologie adaptée à une application spécifique et la création de règles associées d'extraction.

Le dernier type d'outil est apparu lorsque des approches semi-automatiques et automatiques sont combinées dans un outil hybride qui soutient des tâches d’assignation des mots par jugement humain et des techniques de traitement de langage naturel.

Des exigence pour l’annotation

Consistance: Les structures sémantiques devraient adhérer à une ontologie donnée afin de tenir compte d'un meilleur partage de la connaissance. Par exemple, on devrait éviter que les gens utilisent un attribut là où l'ontologie exige une instance de concept.

Référence juste: Les identificateurs des instances, par exemple des personnes, instituts ou compagnies, devraient être uniques.

Éviter la rédondance: L'approvisionnement décentralisé de la connaissance devrait être possible. Cependant, quand les annotateurs collaborent, il devrait être possible qu’ils identifient les sources (ou des parties de ces sources) qui ont été déjà annotées et réutilisent la connaissance précédemment capturée afin d'éviter des annotations superflues et laborieuses.

Méta-données relationnelles: Comme l'information en HTML, qui est éparpillée sur le Web, mais identifiée par des hyper liens, le marquage de la connaissance peut être distribué, mais il doit sémantiquement être relié.

Entretien: Le marquage de la connaissance doit être maintenu. Un outil d'annotation devrait soutenir la tâche d'entretien. Ceci doit être exploré dans les travaux futurs.

Facilité d'utilisation: Il est évident qu’un environnement d'annotation devrait être facile à employer afin d'être vraiment utile. Cependant, cet objectif n'est pas facilement atteint car la création de méta-données implique une navigation complexe dans des structures sémantiques.

Page 19: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

Efficacité: L'effort pour la production de méta-données peut être un facteur contraignant. Plus de l'outil soutient efficacement la création des méta-données, plus les utilisateurs des méta-données tendent à produire. Cette exigence est liée à la facilité d'utilisation. Elle dépend également de l'automatisation du procédé de création des méta-données, par exemple au niveau du pré-traitement du document.

Des outils d’annotation

On présente ci-dessous en bref quelques outils d’annotation parmi les plus intéressants.

Annotea [8]. Annotea est un système pour créer et éditer des annotations des documents Web construit sur HTTP , RDF , et XML. Annotea fournit un protocole inter-opérable approprié pour l'exécution dans des navigateurs Web qui permet à des utilisateurs d'attacher des données aux pages Web, voir les données jointes quand ils passent en revue plus tard les mêmes pages. Au sujet de la génération de méta-données, Annotea remplit automatiquement des champs décrits par Dublin Core mais il ne soutient pas l'extraction de l'information. Il possède cependant un serveur d'annotation qui rend les annotations publiquement disponibles.

OntoMarkup [6]. OntoMarkup est un outil d’annotation basé ontologie qui permet à l'annotateur d'incorporer l'information sémantique dans les documents. L'outil d'annotation sémantique contient un composant de marquage basé sur l’ontologie, qui permet à l'usager de naviguer et marquer des morceaux d’information appropriés; un composant d'apprentissage qui apprend des règles à partir d’exemples et un composant d'extraction d’information qui extrait les objets et les relations entre ces objets.

OntoMat-Annotizer [9]. OntoMat-Annotizer est un outil d’annotation DAML+OIL, facile à utiliser et interactif avec des pages Web. Il possède deux navigateurs, l’un pour une ontologie et l’autre pour HTML. Le navigateur d’ontologie vise à explorer des ontologies et des instances et celui pour HTML montre les parties annotées du texte. OntoMat-Annotizer est basé sur Java et fournit un module d’interface pour des extensions. Les utilisateurs prévus sont des annotateurs individuels c.-à-d. des personnes qui veulent enrichir leurs pages Web avec des métadonnées DAML. Au lieu d'annoter manuellement la page avec un éditeur de texte tels que XEmacs, OntoMat permet à l'annotateur de souligner les parties appropriées de la page Web et de créer de nouvelles instances par interaction de type "drag and drop". Cet outil applique le modèle CREAM – un modèle ouvert pour développer des outils d’annotation basés sur des ontologies. La section suivante présente plus en détail ce modèle.

MnM [10] MnM est un outil d'annotation semi-automatique et automatique qui marque les pages Web avec un contenu sémantique. MnM intègre un navigateur Web, avec un rédacteur d'ontologie et fournit des APIs ouverts pour se relier èa des serveurs d'ontologie et pour intégrer des outils d'extraction d'information. MnM supporte des annotation SGM et XML.

OntoAnnotate [11]. OntoAnnotate est un outil d’annotation semi-automatique qui permet de rassembler la connaissance des documents et des pages Web. Il crée une base de documents comprenant des méta-données et enrichissant des ressources Web ou des Intranets avec ces méta-données. Avec cet outil, on peut annoter non seulement les documents statiques en HTML, mais également des documents Excel ou Word.

SHOE Knowledge Annotator [6]. SHOE Knowledge Annotator est un programme en Java qui permet aux utilisateurs de marquer des pages Web avec de la connaissance exprimée

Page 20: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

en SHOE. L'Annotator est disponible sous forme d’applet ou d’application autonome en Java. SHOE génère des méta-données èa l’aide de champs décrits dans Dublin Core.

AeroDAML [12]. AeroDAML vise à générer automatiquement des annotations DAML à partir de documents réels sans contrainte des textes. Il est disponible sur le Web. Il emploie AeroText, qui analyse le texte en langage naturel et extrait les termes intéressants, il possède une interface utilisateur graphique sophistiquée pour adapter les règles d'extraction de défaut aux besoins du client. AeroDAML utilise des ontologies prédéterminées, l’usager entre seulement un URL et le système retourne automatiquement des annotations DAML.

Des commentaires sur les outils et les modèles d’annotation

La plupart des outils d’annotation génèrent des annotations en utilisant RDF, XML, SHOE et ils utilisent des ontologies prédéterminées. Parmi eux, quelques outils fonctionnent avec des ontologies isolées (c.-à.-d. des ontologies dans un seul fichier qui n’ont pas de relations à d’autres ontologies définies dans d’autres fichiers, ex. OntoMat). Les annotations sémantiques sont générées en utilisant des champs décrits dans Dublin Core. Ces outils ne peuvent pas extraire des informations sémantiques présentées dans une ontologie. Les outils d’annotation semi-automatiques supportent des annotations manuelles mais ils risquent de produire des erreurs syntaxiques ou des références incorrectes. Parmi les outils mentionnés ci-dessus, OntoMat a des points forts, il est développé en utilisant modèle CREAM.

3. Solution Dans cette section, je présente le modèle MO, qui permet des services actifs ainsi qu'une

évaluation puissante de l'importance de l'information en ce qui concerne le contexte réel de travail. Je présente ensuite le modèle CREAM (CREAting Metadata) – comme un cadre pour développer des outils d’annotation, qui nous permet de créer des méta-données, annoter des documents. Cette section se conclut par notre modèle d’annotation adapté du modèle MO et par une proposition d’outil d’annotation inspirée du modèle CREAM.

3.1 Modèle MO

Le but final de modèle MO est de fournir à des travailleurs intellectuels la connaissance dont ils ont besoin pour leur tâche actuelle. Nous combinerons ceci avec l’approche du Modèle de l’Usager avec une orientation stricte vers les besoins et les conditions personnels. Pour ce qui nous concerne, le contexte des besoins de l'information d'un travailleur intellectuel est déterminé par trois facteurs principaux: 1) la personne individuelle, 2) sa position dans la structure d'organisation, 3) sa tâche actuelle.

Tenir compte de toutes ces dimensions permet d’obtenir de meilleurs résultats qu’en se concentrant sur n'importe quel sous-ensemble. Par exemple, différentes personnes peuvent avoir les besoins variables d'information en ce qui concerne les mêmes tâches, selon leurs habilités et leurs connaissances personnelles. La connaissance peut évoluer de façon individuelle dans un groupe de personnes qui accomplissent la même tâche. Une grande partie de la connaissance sera néanmoins typiquement partagée dans un tel groupe. Le besoin de l'information à un moment spécifique est principalement déclenché par la tâche actuelle. Les listes de courriel ou les groupes de nouvelles sont un exemple de systèmes qui révèlent les intérêts des usagers dans des matières spécifiques mais qui ignorent le contexte réel de la tâche. Un système orienté tâche ou de orienté sujet, qui néglige les rôles organisationnels et

Page 21: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

qui ne considère pas les points de vue spécifiques, les centres d'intérêt ou les préférences de présentation entre, par exemple le chef de projet et la secrétaire, peut être également improductif.

La figure 5 montre la distribution de la connaissance relativement aux besoins d'information pour plusieurs profils et constituants dans le modèle MO. Veuillez noter que cette figure ne contient pas tous les éléments et rapports qui sont appropriés, mais juste ceux qui sont en rapport avec le contenu de ce mémoire.

Figure 5. Intégration des Tâches, Usagers et Profils de rôle dans MO.

Quels sont les éléments principaux de ce modèle?

Les modèles de processus d'affaire se composent d'un certain nombre de tâches. Les tâches spécifiques sont des instances des tâches génériques (par exemple, programmation, négociation, recherche d'information...) qui sont décrites dans une ontologie des tâches.

Le rôle d'organisation est inclus dans le modèle d'organisation. Il est associé à un profil de rôle.

Le profil de rôle énonce les besoins génériques et stéréotypés d'information pour les personnes qui remplissent ce rôle dans l'organisation. Ces besoins d'information sont indiqués en termes de thèmes d'intérêts dans les méta-données de l'ontologie de l'information (par exemple, tous les chefs de département sont intéressés par tous les articles du ‘Financial Times’ indépendamment de leur contenu).

hériter

Effectué par

Processus

Ontologie de tâches

Tâche n

Modèle

d’organisation

Besoin d’information

pour tâche

Usager

Rôle Avoir un

jouer

Profil personnel

Profil de rôle

Compétences

Expériences

Intêrets

Description d’Information

Ontologie du domaine

Objet d’information

Ontologie d’Information . . .

Avoir un

Avoir un

Page 22: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

Les intérêts en tant qu'éléments d'un profil se rapportent à un thème dans l'ontologie du domaine d'application. Ils peuvent être caractérisés par des attributs comme la force d'intérêt.

Les descriptions d’information instancient et utilisent les concepts et les notions de l'ontologie de l'information afin de caractériser des objets d'information en ce qui concerne leur forme, leur structure, leur contexte, leurs propriétés et leur contenu exprimé en termes de l'ontologie du domaine.

Des rôles peuvent être remplis par les usagers concrets et différents (une personne peut avoir différents rôles dans l’entreprise, et un rôle peut également être réparti sur plusieurs personnes) qui possèdent un profil d'utilisateur personnel.

Les profils personnels font des prétentions au sujet des compétences, du niveau d'expérience, et des intérêts d'une personne donnée.

Les compétences décrivent la capacité d'un employé à accomplir certaines tâches (contrairement aux responsabilités ou aux compétences, habituellement attachées au rôle d'organisation). De telles compétences influencent non seulement le processus d,affectation (qui devrait faire ce travail?), mais peuvent également avoir un impact sur la connaissance assumée ou les besoins d'information.

Un niveau d'expérience individuel décrit le degré de la connaissance antérieure d'une personne au sujet d'un thème indiqué.

Les intérêts personnels indiquent dans quels thèmes (avec quelle force et quel ordre, présentation etc., préférences) un usager est intéressé.

Un besoin d'information pour une tâche représente les thèmes d'intérêt appropriés pour une tâche donnée dans un processus d'affaires.

3.2 Modèle CREAM

CREAM est un cadre pour la création de méta-données et de méta-données relationnelles pour des pages Web. La conception du cadre CREAM poursuit l'idée d'être flexible et ouverte. La figure 6 représente l’architecture de CREAM.

Des modules de CREAM:

L’éditeur/afficheur de documents: l’éditeur/afficheur de documents visualise le contenu de document. Le créateur des méta-données peut facilement fournir les nouvelles méta-données en choisissant des morceaux de texte et en les alignant avec des parties de l'ontologie. La visionneuse de document devrait soutenir les divers formats (HTML, PDF, XML, etc.).

La génération de Contenu: Le rédacteur permet également d’écrire de façon conventionnelle des documents. En outre, des instances déjà disponibles peuvent être extraites d'une visualisation du contenu du serveur d'inférence d'annotation et être reportées dans le document. Ainsi, une certaine partie de texte et/ou un lien est produit en tenant compte de l'information fournie par une méta-ontologie. Le contenu

Page 23: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

nouvellement produit est déjà annoté et la méta-ontologie guide la construction de l'information.

Figure 6. L’architecture de CREAM

Le guidage par ontologies et le navigateur de fait: Le cadre d'annotations a besoin d’être guidé par une ou plusieurs ontologies. Afin de tenir compte du partage de la connaissance, les annotations nouvellement créées doivent être cohérentes par rapport à l'ontologie d'une communauté. Si les créateurs des méta-données instancient des classes et des propriétés arbitraires, la sémantique de ces propriétés demeure vide. Naturellement le cadre doit pouvoir s'adapter à diverses ontologies afin de refléter différents points de vue des créateurs des méta-données.

Il devrait être facile d’utiliser le navigateur de faits et l’éditeur/afficheur de documents: Les aides de type ‘drag and drop’ permettent d’éviter des erreurs de syntaxe et une bonne visualisation de l'ontologie peut aider à choisir correctement la classe la plus appropriée pour des instances.

Le moteur de balayage (Crawler): La création des méta-données relationnelles se fait dans le contexte du Web sémantique. Au cours de la création des méta-données, les sujets doivent se rendre compte de quelles entités existent déjà dans leur partie du Web. C'est seulement possible si un moteur de balayage rend les entités appropriées immédiatement disponibles. Ainsi, les créateurs de méta-données peuvent rechercher les références appropriées si une entité a déjà un URI et ils peuvent identifier si des propriétés ont déjà été instanticiées.

ExtraireAnnotation par tapper

Guidage par ontologies

Editeur,

Afficheur des documents

plugin

plugin

plugin

Composante d’extraction

d’information

Annotation par marquer Annotation par élaborer

Annotisez

Requête

Charger

Balayage

Copier Interface de l’outil d’annotation

L’Environnement d’Anotation WWW

L’ontologie du domaine

Pages web

Pages annotisées

Page 24: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

Le Serveur d'Inférence d'Annotation: La création de méta-données relationnelles, la recherche des références appropriées et l’élimination des annotations superflues exigent de savoir quelles instances existent déjà. À cette fin aussi bien que pour la vérification de consistance, CREAM fournit un serveur d'inférence d'annotation Ce serveur raisonne sur des instances nouvellement créés et sur l'ontologie. Il sert également à la navigation dans l’ontologie et les faits, parce qu'il permet d’interroger les classes, les instances et les propriétés existantes.

La gestion de Document: Nous distinguons deux scénarios. Dans le premier, on annote dans les pages Web elles mêmes, on sait ainsi si elles sont changées et on peut installer des routines qui maintiennent l'annotation et les changements de l'annotation (par exemple sur le serveur d'inférence d'annotation). Dans le deuxième scénario, on peut vouloir annoter par des ressources externes. Dans ce cas on doit éviter la redondance des efforts d'annotation. Il n'est pas suffisant de demander si les instances existent au serveur d'inférence d'annotation. Quand un annotateur décide de capturer la connaissance d'une page Web, il ne veut pas consulter toutes les instances simples qu'il considère approprié à cette page, mais il veut savoir si et comment cette page Web a été annotée avant. Dans le cas de pages HTML dynamiques sur le Web, il est souhaitable de stocker les pages Web avec leurs annotations. Quand les pages Web changent, les annotations peuvent encore être valides ou devenir invalides. L'annotateur doit décider en se basant sur les anciennes annotations et sur les changements des pages Web. Un but futur de la gestion de documents dans le cadre de CREAM sera de maintenir semi automatiquement les annotations aux pages Web.

La re-identification des Méta-données et l’extraction de l'Information: Même avec les outils sophistiqués, il est laborieux de fournir des annotations sémantiques. Un but important est que la création des méta-données devienne semi-automatique . On peut tirer profit des techniques d'extraction de l'information pour proposer des annotations aux créateurs de méta-données et ainsi faciliter la tâche de création des méta-données. Pour ce qui concerne cet environnement, CREAM envisage trois techniques principales:

1. D'abord, la re-identification des méta-données par comparaison avec les méta-données littérales existantes avec des textes tapés ou des textes existants.

2. Des formes génériques peuvent être apprises d’un marquage existant afin d'annoter automatiquement des pages structurées pareillement.

3. L'extraction de messages peut être employée pour identifier les entités nommées, proposer des co-références et pour extraire des rapports à partir de textes.

La méta-Ontologie: Le but de la méta ontologie est de séparer la conception de l’ontologie de son utilisation.

Le stockage: CREAM soutient deux approches différentes de stockage. Les annotations sont stockées à l'intérieur du document qui est dans le composant de gestion de documentou dans le serveur d'inférence d'annotation.

La reproduction: Ce modèle fournit un mécanisme de reproduction simple par exploration des annotations dans notre serveur d'inférence d'annotation. L’inférence alors peut être employée pour éliminer des inconsistances formelles.

Page 25: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

3.3 Proposition d’une solution

Le but principal du projet GDST est de gérer et diffuser de la connaissance aux usagers selon leurs tâches actuelles. Modèle MO est appliqué et adapté à notre problème, il fournit plusieurs services d’information orientés tâche.

Le modèle CREAM est un modèle général, ouvert et complet, il nous permet de développer des outils d’annotation. Nous appliquons ce modèle pour le développement de notre outil d’annotation.

La description ci-dessous représente une partie de notre modèle d’annotation. Ce modèle est une adaptation du modèle MO. Il représente la relation entre les documents et l’ontologie du domaine. Il nous permet d’annoter les concepts dans l’ontologie du domaine pour les documents. Ensuite, nous adaptons le cadre CREAM à notre modèle d’annotation pour implanter un outil d’annotation semi-automatique dédié à l,annotation de concepts de l’ontologie du domaine pour des documents (générer des annotations basées sur l’ontologie).

3.3.1 Le modèle d’annotation proposé

Chaque document contient des paragraphes et chaque paragraphe contient des termes, des concepts. Les documents sont décrits par des méta-données en appliquant le schéma Dublin Core qui définit un ensemble d’attributs (auteur, date,…). Les paragraphes citent les termes, les concepts de l’ontologie du domaine. Réciproquement, les termes et les concepts sont mentionnés dans les paragraphes. La figure 7 représente un modèle d’annotation des documents.

Figure 7: Modèle d’annotation

Concept

Citation + hasImportanceLevel

DocumentPart + description

Document + title + subject + creator + …

isQuotedIn

isRelatedTo belongs

quotes

isPartOfDocument

Ontologie du Domaine Ontologie des documents

Page 26: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

Ce modèle propose une méthode pour la création des annotations basée sur l’ontologie. Selon ce modèle, les annotation sont stockés à part des documents. Cette méthode a des avantages: elle est indépendance au point de vue des annotateurs et elle ne change pas le document quand l’ontologie du domaine change.

Dans ce modèle, la relation entre Concept et Citation est de type 1-n : un concept est cité dans plusieurs citations. La relation entre Citation et DocumentPart est aussi une relation de type 1-n: une partie de document cite plusieurs citations. De cette façon, nous implantons la relation n-n entre Concept et DocumentPart,.

Ce modèle nous permet de créer les méta-données pour un document (en utilisant les champs du schéma Dublin Core) et les méta-données relationnelles pour les concepts dans l’ontologie du domaine. Le code source ci-dessous représente ce modèle en DAML+OIL.

Ontologie du domaine

Je vous présente une partie dans l’ontologie du domaine dans la version actuelle. Le code complet est sur l’Internet [27]. Cette ontologie est construite grâce à Numexco – un outil pour le repérage de termes-clés dans le domaine des télécommunications sans fils entre ordinateurs.

… <daml:Class rdf:ID='Concept'>

<rdfs:label>Concept</rdfs:label>

<rdfs:comment>A concept is a Thing which can be quoted or ... in a part of a document intersection of: All the things that linked to a member of this class by the mean of the isQuotedIn property (role) are elements of Citation

</rdfs:comment>

<rdfs:subClassOf>

<daml:Restriction>

<daml:onProperty rdf:resource='#isQuotedIn'/>

<daml:toClass rdf:resource='&doc;#Citation'/>

</daml:Restriction>

</rdfs:subClassOf>

</daml:Class>

<daml:ObjectProperty rdf:ID='isQuotedIn'>

<rdfs:label>isQuotedIn</rdfs:label>

</daml:ObjectProperty>

<daml:Class rdf:ID='Component'>

<rdfs:comment xml:lang='en'>

A component of a system

</rdfs:comment>

<rdfs:subClassOf rdf:resource='#Concept'/>

<rdfs:label xml:lang='en'> component </rdfs:label>

Page 27: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

<rdfs:label xml:lang='fr'> composante </rdfs:label>

</daml:Class>

<daml:Class rdf:ID='Physical-Component'>

<rdfs:comment xml:lang='en'>

Any tangible component of a system.

</rdfs:comment>

<rdfs:label xml:lang='en'> physical component</rdfs:label>

<rdfs:label xml:lang='fr'> composante physique </rdfs:label>

<rdfs:subClassOf rdf:resource='#Component'/>

</daml:Class>

<daml:Class rdf:ID='Logical-Component'>

<rdfs:comment xml:lang='en'>

An intangible component of a system.

</rdfs:comment>

<rdfs:label xml:lang='en'>logical component</rdfs:label>

<rdfs:label xml:lang='fr'> composante logique </rdfs:label>

<rdfs:subClassOf rdf:resource='#Component'/>

</daml:Class>

Cette ontologie définit des termes et des concepts du domaine des télécommunication. Chaque terme est défini comme une classe dans DAML+OIL et il est décrit par des éléments RDF et XML. Dans cette définition, les sous-classes de classe Concept héritent des relations et des propriétés des classes parentes.

L’ontologie des documents

L’ontologie des documents se concentre sur la gestion des sources d’information parmi des groupes de personnes. Elle est conçue selon les exigences du modèle MO qui considère la connaissance organisationnelle comme une source d’information [28]. L’ontologie des documents inclut des éléments de méta-données qui décrivent le document indépendamment du domaine.

La figure ci-dessous représente une partie de l’ontologie des documents en DAML+OIL.

<daml:Class rdf:ID='Citation'>

<rdfs:label>Citation</rdfs:label>

<rdfs:comment>

A citation is a thing which has the property of having exactly one level of importance which is an integer. A citation is related to exactly one domain concept.

</rdfs:comment>

<daml:subClassOf>

<daml:Restriction daml:cardinality='1'>

Page 28: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

<daml:onProperty rdf:resource='#hasImportanceLevel'/>

<daml:toClass rdf:resource='&xsd;#integer'/>

</daml:Restriction>

</daml:subClassOf>

<daml:subClassOf>

<daml:Restriction daml:cardinality='1'>

<daml:onProperty rdf:resource='#isRelatedTo'/>

<daml:toClass rdf:resource='&dom;#Concept'/>

</daml:Restriction>

</daml:subClassOf>

<daml:subClassOf>

<daml:Restriction daml:cardinality='1'>

<daml:onProperty rdf:resource='#belongs'/>

<daml:toClass rdf:resource='#DocumentPart'/>

</daml:Restriction>

</daml:subClassOf>

</daml:Class>

<daml:Class rdf:ID='DocumentPart'>

<rdfs:comment>

A DocumentPart is a part of document.

</rdfs:comment>

<daml:subClassOf>

<daml:Restriction daml:cardinality='1'>

<daml:onProperty rdf:resource='#description'/>

<daml:toClass rdf:resource='&rdfs;#Literal'/>

</daml:Restriction>

</daml:subClassOf>

<daml:subClassOf>

<daml:Restriction daml:cardinality='1'>

<daml:onProperty rdf:resource='#isPartOfDocument'/>

<daml:hasClass rdf:resource='#Document'/>

</daml:Restriction>

</daml:subClassOf>

<daml:subClassOf>

<daml:Restriction>

<daml:onProperty rdf:resource='#quotes'/>

<daml:toClass rdf:resource='#Citation'/>

</daml:Restriction>

</daml:subClassOf>

</daml:Class>

Page 29: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

<daml:Class rdf:ID='Document'>

<rdfs:label>Document</rdfs:label>

<rdfs:comment>

A Document is a concept described by DublinCore Ontology properties. An document can contains parts of document.

</rdfs:comment>

<daml:subClassOf>

<daml:Restriction daml:cardinality='1'>

<daml:onProperty rdf:resource='&dc;#identifier'/>

<daml:toClass rdf:resource='&xsd;#anyURI'/>

</daml:Restriction>

</daml:subClassOf>

<daml:subClassOf>

<daml:Restriction daml:cardinality='1'>

<daml:onProperty rdf:resource='&dc;#title'/>

<daml:toClass rdf:resource='&xsd;#string'/>

</daml:Restriction>

</daml:subClassOf>

<daml:subClassOf>

<daml:Restriction daml:minCardinality='1'>

<daml:onProperty rdf:resource='&dc;#creator'/>

<daml:toClass rdf:resource='&xsd;#string'/>

</daml:Restriction>

</daml:subClassOf>

<daml:subClassOf>

<daml:Restriction>

<daml:onProperty rdf:resource='&dc;#contributor'/>

<daml:toClass rdf:resource='&xsd;#string'/>

</daml:Restriction>

</daml:subClassOf>

<daml:subClassOf>

<daml:Restriction>

<daml:onProperty rdf:resource='&dc;#publisher'/>

<daml:toClass rdf:resource='&xsd;#string'/>

</daml:Restriction>

</daml:subClassOf>

<daml:subClassOf>

<daml:Restriction>

<daml:onProperty rdf:resource='&dc;#description'/>

<daml:toClass rdf:resource='&xsd;#string'/>

</daml:Restriction>

</daml:subClassOf>

Page 30: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

<daml:subClassOf>

<daml:Restriction>

<daml:onProperty rdf:resource='&dc;#subject'/>

<daml:toClass rdf:resource='&xsd;#string'/>

</daml:Restriction>

</daml:subClassOf>

<daml:subClassOf>

<daml:Restriction>

<daml:onProperty rdf:resource='&dc;#date'/>

<daml:toClass rdf:resource='&xsd;#date'/>

</daml:Restriction>

</daml:subClassOf>

<daml:subClassOf>

<daml:Restriction>

<daml:onProperty rdf:resource='&dc;#language'/>

<daml:toClass rdf:resource='&xsd;#string'/>

</daml:Restriction>

</daml:subClassOf>

</daml:Class>

<daml:ObjectProperty rdf:ID='quotes'>

<daml:inverseOf rdf:resource='#belongs'/>

</daml:ObjectProperty>

<daml:DatatypeProperty rdf:ID='description'/>

<daml:DatatypeProperty rdf:ID='hasImportanceLevel'/>

<daml:ObjectProperty rdf:ID='belongs'/>

<daml:ObjectProperty rdf:ID='isRelatedTo'>

<daml:inverseOf rdf:resource='&dom;#isQuotedIn'/>

</daml:ObjectProperty>

<daml:ObjectProperty rdf:ID='isPartOfDocument'/>

Un exemple d’annotation pour ce modèle

La figure 8 représente un exemple d’annotations pour ce modèle, on peut voir la relation entre les instances de Concept, de DocumentPart et de Document. Network est un concept, il est une instance de classe Concept. Il est mentionné dans l’instance Doc13_P89_Citation-Network et aussi dans l’instance Doc13_P92_Citation-Network qui sont deux instances de la classe Citation. Ces deux citations sont utilisées dans les parties de document correspondantes : Doc13_P89 et Doc13_P92 - qui font partie de Doc13.

Page 31: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

Figure 8. Un exemple d’annotation

Dans la section suivante, je vous présente l’outil d’annotation à développer, qui réalise ce modèle. Bien que il existe plusieurs d’outils d’annotations, aucun n’est applicable. L’outil à développer adapte le cadre CREAM. Il est de type semi-automatique et il est nommé AnnoCitaTool.

3.3.2 L’outil AnnoCitaTool

Spécification

AnnoCitaTool implémente le modèle proposé ci-dessus, il nous aide de générer des annotation DAML basé sur les ontologies. Les fonctionnements principaux d’AnnoCitaTool sont:

• Charger des ontologies: ontologie du domaine, ontologie des documents; naviguer parmi les éléments d’une classe: étiquette, propriétés, commentaire,… et les instances d’une classe.

• Charger des document source à annoter.

• Mettre en couleur toutes les références par rapport aux classes, à une classe sélectionnée, aux classes parentes, aux classes enfant dans un document ou dans un paragraphe.

isQuotedIn isRelatedTo

belongs quotes

isPartOfDocument

Ontolo gies

<doc:Document rdf:ID='Doc13'>

<dc:identifier>http://www.redbooks.com/g24.pdf</dc:identifier>

<dc:title>An Introduction to Wireless Technology</dc:title>

<dc:creator>Derek E. Jones</dc:creator>

<dc:date>1995-10-25</dc:date>

....

</doc:Document>

<doc:DocumentPart rdf:ID='Doc13_P89'>

<doc:isPartOfDocument rdf:resource='#Doc13'>

<doc:quotes rdf:resource=‘#Doc13_P89_Citation-Network'>

<doc:quotes rdf:resource='#Doc13_P89_Citation-Antenna'>

<dc:description>XYZ.....</dc:description>

</doc:DocumentPart> <doc:Citation rdf:ID='Doc13_P89_Citation-Network'>

<dom:hasImportanceLevel>1</dom:hasImportanceLevel>

<dom:isRelatedTo rdf:resource="#Network">

<dom:belongs rdf:resource="#Doc13_P89">

</dom:Concept>

<dom:Concept rdf:ID='Network'>

<dom:isQuotedIn rdf:resource='#Doc13_P89_Citation-Network'>

<dom:isQuotedIn rdf:resource='#Doc13_P92_Citation-Network'>

</dom:Concept>

Network <------------------------------(hyperlink)

13-89T Intelligent vending machines will automatically place just-in-

time wireless calls for restocking, cash removal, and service;

allowing vendors to operate at enormously improved levels of

efficiency. 11. Wireless networks will provide value added services

both directly and by means of links into other services. Delivery of

timely, accurate and relevant information such as weather warnings,

traffic delays and emergency messages will become an essential part

of any wireless network service.

isQuotedIn

isRelatedTo quotes

belongs

isPartOfDocument

Document

Concept

Citation

DocumentPart

(Meta-data of)

Page 32: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

• Créer des annotations DAML manuellement en entrant ou sélectionnant un texte.

• Créer des annotations DAML de document automatiquement en se basant sur l’ontologie du domaine et l’ontologie des documents. Afficher le résultat des annotations DAML en différentes syntaxes:RDF/XML, RDF/XML-ABBREV.

• Exporter les annotations DAML dans un fichier.

Solution technique

Parmi les langages de spécification d’ontologie, DAML+OIL est choisi pour présenter les ontologies et générer des annotations. DAML+OIL supporte une description logique des concepts, des termes. On choisit DAML+OIL parce que il existe des outils, des librairies, qui supportent la création des ontologies et des services de requêtes [29].

L’ API Jena est une librairie de l’environnement Java. Elle nous permet de manipuler sur les ontologies rédigées en DAML+OIL. DAML Validator est disponible sur le Web. Il est développé en utilisant Jena et permet de vérifier la syntaxe des ontologies rédigées en DAML+OIL.

L’ API Jena DAML supporte le chargement des ontologies DAML dans des modèles RDF. Jena inclut des fonctionnalités suivantes:

• charger un document d'ontologie DAML d’une URL donné;

• détecter les éléments dans daml:Ontology qui importent d'autres ontologies, et les chargez (option);

• toute l'information est stockée réellement dans un modèle Jena, donc le plein accès est toujours disponible à l’ontologie en format RDF;

• les classes de Java son associées aux composants du vocabulaire de DAML (classe, propriété, liste, etc..) et permettent aux programmes d’accéder directement aux diverses propriétés qu'ils soutiennent (par exemple disjointWith sur une classe);

• la navigation de la hiérarchie de sous-classe et de sous-propriété;

• créer ou mettre à jour n'importe quelle valeur de DAML;

• écrire l'ontologie dans un dossier ou sur un flux;

• récursité pour les classes, les instances et les propriétés dans les hiérarchies des classes et propriétés.

De plus, Forte for Java, (version 4.0) est un environnement intégré pour développer les applications en Java. Avec Forte for Java, on peut développer les applications Java, les services basés Web, les composants Web, les composants JavaBean et utiliser des connectivités JDBC.

Page 33: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

4 Analyse La version primaire d’AnnoCitaTool répond aux exigences proposées dans la

spécification. Avec cet outil, on peut générer manuellement ou automatiquement des annotations DAML pour les documents selon un modèle. AnnoCitaTool supporte trois types d’interaction: annotation manuelle, annotation par sélection et annotation automatique.

Afin de clarifier le rôle différent des trois types d'interaction, nous décrivons ici comment utiliser AnnoCitaTool pour produire de trois types de méta-données: générer des instances de classe; générer des instances d’attribut; générer des instances de relation. La figure 9 représente l’interface principale de l’outil d’AnnoCitaTool après avoir chargé des ontologies et un document.

Figure 9: L’interface principale d’AnnoCitaTool

4.1 Trois types d’annotation

4.1.1 L’annotation manuelle

L'annotation manuelle est presque purement basée sur la navigation dans une ontologie et les patrons. Fondamentalement, l'usager plus expérimenté navigue dans l'ontologie et l’usager moins expérimenté devrait plutôt employer des patrons. L’usager génère des méta-données (instances de classe, instances d’attribut, instances de relation) qui sont complètement indépendant de la page Web actuellement affichée.

Page 34: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

L’usager sélectionne une classe pour une instance à créer. Il entre les valeurs pour les attributs, les propriétés et l’identificateur pour l’instance à créer. Si l’identificateur existe déjà, AnnoCitaTool refuse de créer cette instance. La figure 10 représente un exemple de création des annotations en entrant.

Figure 10: Création une instance pour le concept Antenna

4.1.2 L’annotation par sélection

L'idée fondamentale de l'annotation par sélection est l'utilisation du contenu sélectionné dans l’éditeur/visionneuse de document pour générer des instances. L’usager marque un texte, le copie, le colle sur une classe sélectionnée pour créer une instance. Les instances pour les relations sont créées directement.

Les opérations sont semblables à celles de l’annotation manuelle. Au lieu d’entrer le nom d’instance, on marque un texte, on le copie et on le colle sur une classe pour créer une instance pour cette classe.

4.1.3 L’annotation automatique

C’est un fonctionnement important d’AnnoCitaTool. AnnoCitaTool analyse la relation entre les ontologies chargées, apprend l’ontologie du domaine, extrait l’information dans les documents, crée des instances pour les termes dans l’ontologie du domaine et crée des instances pour les relations.

Page 35: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

Les annotations sont affichées dans une autre fenêtre, sur laquelle, on exerce des opérations d’édition: copier, coller,… . La figure 11 présente un exemple d’annotation automatique.

Figure 11: Création automatique des annotations.

4.2 Restrictions

Dans le développement de l’outil AnnoCitaTool, j’ai rencontré plusieurs problèmes, surtout les problèmes techniques. Jena est dans la phase de développement et donc pose des restrictions. Je vous présente quelques restrictions quand on navigue dans une ontologie pour créer des instances.

Dans l’ontologie du domaine si l’on définit les classes comme:

<daml:Class rdf:ID="Concept">

<rdfs:label>Concept</rdfs:label>

<rdfs:comment>

A concept is a Thing which can be quoted or ... in a part of a document intersection of: All the things that linked to a member of this class by the mean of the isQuotedIn property (role) are elements of Citation

Page 36: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

</rdfs:comment>

<rdfs:subClassOf>

<daml:Restriction>

<daml:onProperty rdf:resource="#isQuotedIn"/>

<daml:toClass rdf:resource="&doc;#Citation"/>

</daml:Restriction>

</rdfs:subClassOf>

</daml:Class>

<daml:Class rdf:ID="Component">

<rdf:type>

<daml:Class rdf:about="#Concept"/>

</rdf:type>

<rdfs:comment xml:lang="en">

A component of a system

</rdfs:comment>

<rdfs:subClassOf rdf:resource="#Concept" />

<rdfs:label xml:lang="en"> component </rdfs:label>

<rdfs:label xml:lang="fr"> composante </rdfs:label>

</daml:Class>

...

De cette façon, la classe Component est définit comme une sous-classe de classe Concept. De plus, Component est définie comme une instance de classe Concept. J’utilise Jena pour charger et naviguer cette ontologie. Le problème est que Jena considère Component comme une instance de la classe Concept, Component n’est pas considéré comme une sous-classe de la classe Concept alors que cette propriété est syntaxiquement vraie..

Pour surmonter ce problème, on doit couper cette définition en deux comme suit:

<daml:Class rdf:ID="Component">

<rdfs:comment xml:lang="en">

A component of a system

</rdfs:comment>

<rdfs:subClassOf rdf:resource="#Concept"/>

<rdfs:label xml:lang="en"> component </rdfs:label>

<rdfs:label xml:lang="fr"> composante </rdfs:label>

</daml:Class>

<dom:Concept rdf:ID="Component"/>

...

Un autre problème, quand on crée des instances pour des classes, Jena redéfinit les classes, qui sont utilisées pour créer des instances. Dans le définition ci-dessus, Component

Page 37: DÉVELOPPEMENT UN OUTIL EFFICACE POUR ANNOTER DES DOCUMENTS - Université du … · 2004-01-27 · La vision du Web sémantique est celle d’un Web dans lequel les ressources sont

est une classe DAML. En effet, il est une instance de classe DAML. Quand on utilise Jena pour créer des instances de Component, Jena redéfinit Component comme une classe RDF.

<rdf :Class rdf:about="...domainOntology.daml#Component"/>

Ce sont des limitations de Jena. Jena version 1.6 nous permet manipuler assez bien sur les modèles RDF. Avec les modèles DAML, Jena supporte quelques fonctionnements pour charger et manipuler les l’ontologies. Jena version 2.0 supportera DAML et OWL.

5 Conclusion Le Web sémantique est le Web de demain. Dans le Web sémantique, des données

sémantiques jouent un rôle important. Les méta-données sont un type de données sémantique qui permettent d’enrichir des pages Web. Les méta-données décrivent les attributs et le sémantique des documents. L’ontologie est une nouvelle technique pour la présentation de la connaissance. L’annotation des documents basé sur l’ontologie pose plusieurs avenues de recherches. Le Web sémantique, les outils d’annotation sont dans phase de développement mais aucun ne satisfait toutes les exigences.

Le modèle proposé permet d’annoter, enrichir les documents avec des données sémantiques. C’est une implémentation pour le modèle MO - un modèle de gestion des connaissances d’une entreprise et de diffusion des informations aux usagers selon leurs tâches actuelles.

AnnoCitaTool implémente le modèle proposé, il est un outil d’annotation de type semi-automatique, qui génère des annotations DAML basé sur l’ontologie, il implémente une partie du modèle MO, c’est la relation entre les documents et les ontologies; qui facilite le travail de développement d’une base de documents annotés. AnnoCitaTool surmonte les restrictions des outils d’annotation existants. AnnoCitaTool est développé en utilisant des langages et des outils récents. Comparé avec les outils existants selon quatre dimensions, AnnoCitaTool évite les erreurs syntaxiques, les références inadéquates, il peut accepter n’importe quelle ontologie, extraire l’information des documents et annoter des documents avec l’ontologie du domaine.

On peut améliorer AnnoCitaTool en ajoutant un module de traitement du langage naturel. Avec ce module, on annote des documents indépendamment de l’ontologie. C’est un travail difficile et compliqué qui concerne plusieurs domaines. De plus, on peut améliorer le module de traitement des documents pour qu’il puisse traiter directement des documents PDF, HTML ou autres dans l’environnement Java. Un objectif est aussi de renforcer l’outil de construction de l’ontologie du domaine à partir de corpus en utilisant l’outil Numexco.

Bien que j’aie obtenu quelques résultats, il existe encore des restrictions. C’est la première fois que je travaille dans ce domaine et donc l’étude les résultats récents prend beaucoup de temps. C’est aussi un nouveau domaine, donc il existe des restrictions techniques. Les langages sont dans une phase de développement et les outils ne supportent pas complètement ces langages.