• Aucun résultat trouvé

3 Etude des BDBO

3.2 Critères de comparaison des BDBO

Pour détailler notre comparaison desBDBO, nous avons identifié quelques critères de

com-paraison essentiels desBDBO. Le tableau 3.2 récapitule ces critères pour les BDBO

considé-rées (Oracle, IBM SOR, DB2RDF, OntoDB, Jena et Sesame).

Nous présentons brièvement chacune de ces caractéristiques hormis, les modèles de sto-ckage, l’architecture et le formalisme qui ont été déjà présentés et le SGBD qui sont les supports standards de persistance.

3.2.1 Échange de données

Cette caractéristique indique si laBDBO facilite le transfert de ses données sur une autre

BDBO. En effet, une BDBO est basée sur une ontologie qui est une conceptualisation

consen-suelle d’un domaine, dont chaque élément est référençable. Les données desBDBO utilisant

la même ontologie peuvent être échangées car cette ontologie peut être considérée comme un format d’échange de données sur ce domaine. Cette fonctionnalité est importante quand on est dans un environnement nécessitant de l’intégration des données.

3.2.2 Support linguistique

Cette caractéristique indique si uneBDBO est capable de prendre en compte les concepts

d’une ontologie définis dans plusieurs langues naturelles. En effet, comme nous l’avons vu au chapitre 1, dans certains modèles d’ontologies (RDFS, OWL, PLIB) le multilinguisme est utilisé pour décrire les ontologies et les données.

3.2.3 Langage de requêtes

A fin de permettre l’interrogation de ses ontologies et ses instances ontologiques, uneBDBO

doit supporter au moins un langage de requêtes. Celui-ci doit permettre d’ajouter, modifier et

supprimer les instances d’une BDBO ainsi que de définir les classes qu’elles instancient et

les propriétés qui les caractérisent. Pour chaqueBDBO, nous listons les langages de requêtes

qu’elle supporte dans le tableau 3.2.

3.2.4 Extraction d’ontologies

Cette caractéristique indique si on peut extraire d’uneBDBO un sous-ensemble des concepts

de l’ontologie. Les concepts extraits de la base de données doivent être cohérents. Dans la

plu-part des BDBO, une requête SPARQL portant sur le schéma d’ontologie peut permettre une

extraction.

3.2.5 Sécurité des données

Cette caractéristique est fondamentale dans les bases de données classiques. Les données

doivent être protégées des accès non autorisés ou mal intentionnés [154]. UneBDBO est sensée

disposer des mécanismes permettant l’autorisation, le refus ou la révocation de privilège d’accès

aux données et à une ontologie. La plupart desBDBO profite de mécanismes de sécurité offerts

3.2.6 Gestion des versions et évolutions des ontologies

Les ontologies sont susceptibles d’évoluer. En effet, les ontologies peuvent être modifiées quand elles ne satisfont plus les besoins d’une communauté. Les causes des modifications peuvent être :

– l’intégration de nouveaux concepts et/ou de nouvelles propriétés ; – la suppression des concepts ;

– le changement de système de classification ; – la modification de contraintes ;

– la modification des concepts (fusion ou séparation d’entités) ; – la modification du domaine ou du co-domaine des propriétés ; – etc.

Une évolution entraîne la définition de nouvelles versions de ces ontologies. Le principe de

versioning [155] énonce que la gestion de l’évolution de l’ontologie exige de pouvoir conserver

et accéder aux différentes versions de l’ontologie générées au cours de l’évolution, ainsi que de permettre de spécifier par un modèle les relations qui rendent compte des modifications faites entre les versions. Cette fonctionnalité est nécessaire pour préserver les relations sémantiques

existantes entre les différents concepts des ontologies lors de l’intégration dans laBDBO de

nouvelles versions. Cette caractéristique n’est pas prise en compte dans la plupart desBDBO

utilisées ; seule laBDBO OntoDB est prédisposée à cette gestion et à la gestion des cycles de

vie des instances décrit ci-dessous.

3.2.7 Cycle de vie des instances

C’est une fonctionnalité qui permet à une BDBO de gérer l’évolution des instances. De

la même manière que les ontologies, les données ontologiques évoluent. Une évolution d’une ontologie peut modifier la structure des instances comme par exemple lors de l’ajout d’une propriété ou d’un concept. Même les opérations sur les instances (ajout, suppression ou mise à

jour) entraînent l’évolution des instances. UneBDBO peut offrir un mécanisme pour pouvoir

accéder à toutes les instances des concepts existants dans une version donnée et des mécanismes pour une gestion du cycle de vie des instances des classes.

3.2.8 Moteur d’inférence

Un moteur d’inférence est un outil qui permet de déduire de nouvelles connaissances ou

données à partir de celles qui sont disponibles. CertainesBDBO disposent de leurs propres

mo-teurs d’inférence pour la déduction de nouvelle données à partir de celles qui sont disponibles (Oracle, SOR). D’autres font usage des moteurs d’inférence ontologiques existant comme Ra-cer, Pellet, Fact, Fact++.

3.2.9 Base de règles utilisateur

Parmi les BDBO qui disposent de moteurs d’inférence, certaines offrent à l’utilisateur la

possibilité de créer sa propre base des règles. C’est le cas d’Oracle, de Jena ou de Sesame. Les

règles sont en général de la forme : clause → consequence. La déduction peut se faire lors

du chargement de données (pour les BDBO saturées) ou à l’initiative de l’utilisateur après le

chargement de données.

3.2.10 Exportation des données

C’est une fonctionnalité qui permet d’extraire d’uneBDBO un sous-ensemble des instances

associées à certains concepts. Les instances extraites de la base de données doivent être consis-tantes et cohérentes. Cette fonctionnalité permet le partage et l’intégration des données.

3.2.11 Vérification de la consistance

Cette fonctionnalité permet à uneBDBO de s’assurer qu’une ontologie est consistante

c’est-à-dire qu’elle est conforme à son modèle. La vérification peut porter aussi sur les instances. La vérification de la consistance d’une instance se fait en utilisant les axiomes définis dans

l’onto-logie. La plupart desBDBO ont des modules qui effectuent cette vérification soit

automatique-ment (SOR, OntoDB) soit à la demande de l’utilisateur (Oracle, Jena, Sesame).