soutenance_these_stephane_jean - TEL (Thèses-en

publicité
Laboratoire d’Informatique Scientifique et Industrielle
École Nationale Supérieure de Mécanique et d’Aérotechnique
et Université de Poitiers
OntoQL, un langage d’exploitation des
bases de données à base ontologique
Présenté par Stéphane JEAN
le 5 décembre 2007 à l’ENSMA, Futuroscope
Laboratoire Informatique Scientifique et Industrielle
(LISI)
sous la direction de Yamine AIT-AMEUR et Guy PIERRA
Motivation
Base de Données à Base Ontologique
Utilisation accrue des ontologies
 Nombreux modèles d’ontologies : RDF-Schema, OWL, PLIB, etc.
Gros volumes de données à base ontologique
 Méta-données du Web Sémantique
 Bases de données composants et e-catalogue
=> Bases de Données à Base Ontologique (BDBO)
 Ontologies + Données + Liens Ontologies / Données
Données
Ontologies
liens
2
Motivation
Langage d’exploitation de BDBO
Utilisation des ontologies par différentes communautés
 BD : Intégration, Indexation Sémantique
 IA : Web Sémantique
 Linguistique informatique : traitement du langage naturel
=> Grande hétérogénéité des architectures de BDBO

Différents modèles d’ontologies

Différents schémas de représentation
RDF-Schema pour
RDF-Suite,
Sesame, RSTAR ...
Ontologies
Données
Table de triplets pour
3Store, Jena1 ...
PLIB pour
OntoDB, OntoDB2
Représentation binaire
pour RDF-Suite, Sesame ...
OWL pour
DLDB, OntoMS
Représentation
horizontale pour OntoMS,
OntoDB ...
Unification des modèles d’ontologies
Elaboration d’un langage d’exploitation pour les BDBO
3
Motivation
Intégration de bases de données
Problème : l’hétérogénéité sémantique

Conflits de nommage

Conflits de structures

Conflits d’unités de mesures
Ontologie partagée
Ontologie
Modèle Logique
Ontologie
Customer
Modèle
Logique
Clients
ID
Name
VIP
Credit
Address
ID
Nom
Crédit
Adresse
AAA
Dupont
Yes
1 000$
dup@far
AAA
Dupont
5 000€
01 avenue Clément Ader
Banque 1
Banque 2
Une solution : les BDBO [NGuyen Xuan 06]
Préservation d’une compatibilité avec les BD usuelles
4
PLAN
1Architecturede
deBDBO
BDBOcible
cible
1- Architecture
Notion d’ontologie
Modèle d’ontologies
2- Exigences
pour le langage
Base de données à base ontologique
3- Le langage OntoQL
2- Exigences pour le langage
4- Mise en œuvre
3- Le langage OntoQL
5- Conclusion et perspectives
4- Mise en œuvre
5- Conclusion et perspectives
5
Ontologie de domaine
Une définition
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
Qu’est-ce qu’une ontologie ?
 « An explicit specification of a conceptualization » [Gruber 93]
Une ontologie = conceptualisation d'un domaine
classes et propriétés
 Formelle
 Consensuelle
 Référençable
« un dictionnaire formel et consensuel des catégories et
propriétés d’entités existant dans un domaine d’étude et
des relations qui les lient »
6
Typologie des ontologies
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
 BD  Vocabulaire canonique des concepts d’un domaine
identifiants + notions primitives {classes / propriétés / types}
 Ontologie Conceptuelle Canonique (OCC)
 IA  Possibilités de déductions
Opérateurs d’équivalence conceptuelle
 Ontologie Conceptuelle Non Canonique (OCNC)
 Linguistique Informatique  Termes d’un domaine
{ mots } + relations de similarités et linguistiques
 Ontologie Linguistique (OL)
Trois points de vue = trois types d'ontologies
complémentaires => modèle en couches
7
Liens entre les différents types
d’ontologies : le modèle en oignon
 OCC = Prolongement naturel des modèles conceptuels
•
•
•
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
Couche
Caractérisation
Référence pour l’intégration sémantique
Accès au niveau connaissance
Vocabulaire canonique pour l’échange
Couche
Intégration
Couche
Discours
OL
OCNC
 OCNC = Introduction d’équivalence conceptuelle
•
•
Possibilité d’inférence
Flexibilité pour l’intégration
 OL = Représentation linguistique
•
•
expression
de propriétés
Règles de
dérivation
OCC
expression
de classes
Logique de
description
Fonction de Dérivation
Traitement du langage naturel
Interface langagière pour les données
Modèle en oignon
 3 couches aux capacités spécifiques
 Coexistence des différents modèles
8
Les modèles d’ontologies et le
modèle en oignon
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
 RDF-Schema  ~ Classe, Propriété, Type de données
 PLIB  Noyau + Fonctions de dérivation
 OWL  Noyau + Opérateurs des Logiques de Description
 F-Logic  Noyau + Opérateurs de la Logique des Frames
LO
OCNC
PLIB
OWL
Expressions
booléennes
de classes,
...
Fonctions
~ RDF-S
PLIB
Classe,
Property,
~ RDF-S
Datatype
OCC
de
dérivation
F-Logic
Règles
déductives …
Modèle d’ontologies unifié
Modèle noyau extensible
9
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
Une typologie des BDBO
Métabase
TRIPLES
+Flexibilité
SUBJECT
PREDICATE
OBJECT
Etudiant
- Efficacité
rdf:type
rdfs:class
Etudiant
rdfs:subClass
Personne
…
…
…
Etudiant#1
rdf:type
Etudiant
Etudiant#1
nom
Peter
• Ajout/Suppression
Personne
rdf:type de propriétés/instances
rdfs:class
Données
Ontologie
• Beaucoup d' auto-jointures
nom
rdf:type
rdf:property
• Clustering
nom
rdf:range
xsd:String
Type 1 : Jena, 3Store
Métabase
Instance
+ Meilleure
efficacité
[RDF-Suite]
…
…
…
Class
Property
Ontologie
Données
- Modèle d’ontologies figé
ID
name
ID
name
Student
1
Person
3
name
ID
ID
VALUE
ID
VALUE
2
Student
4
grade
student#1
student#1
Peter
student#1
PHD
name
grade
Type 2 : Sesame, RDF-Suite
Entity
Attribute
ID
name
ID
name
1
Class
3
ID
2
Property
4
name
Class
Property
ID
name
ID
name
1
Person
3
name
2
Student
4
grade
Métaschéma
Ontologie
Métabase
+ Passage à l’échelle
+ Modèle d’ontologies évolutif
Données
Student
- Cadre d’hypothèses
ID
name
grade
• Typage
des propriétés
Student# fort Peter
PHD
…
…
• Mono-instantiation
Type 3 : OntoDB[Dehainsala 07]
…
10
Architecture cible
Généralisation des BDBO de type 3
Méta-Schéma
OWL
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
Métabase
PLIB
~ RDF-S
F-Logic
Ontologie
Données
 Compatibilité avec l’architecture ANSI/SPARC
 Ajout du niveau ontologique suivant le modèle en couches
 Représentation du modèle d’ontologies utilisé
 Besoin d’un langage homogène pour ce modèle cible
11
PLAN
1- Architecture de BDBO cible
2- Exigences pour le langage
Principales exigences
Les langages SPARQL et RQL
3- Le langage OntoQL
4- Mise en œuvre
5- Conclusion et perspectives
12
Principales exigences pour un langage
d’exploitation de BDBO
Méta-Schéma
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
Métabase
OWL
PLIB
~ RDF-S

F-Logic

Ontologie
Données

 - Exploitation des données au niveau logique : compatibilité SQL
 - Exploitation des données au niveau ontologique
 indépendance par rapport à une représentation logique
 Selon les 3 couches du modèle en oignon
 - Indépendance vis-à-vis d’un modèle d’ontologies particulier
13
Les langages d’exploitation pour les
BDBO de type I
 Langages définis pour exploiter des données RDF
• Exemples : SPARQL, RDQL, etc.
 Langage représentatif : SPARQL
• W3C Proposed Recommendation
• « graph-matching query language »
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
Métabase
Données
BDBO de Type 1
SELECT ?p ?email
FROM http://example.org/foaf/aliceFoaf
WHERE {
?p type Person . ?p mbox ?email
?p name ?name FILTER (name=“durand”)
}
ORDER BY DESC (?email)
LIMIT 5
14
Analyse du langage SPARQL
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
Quelles sont les instances de la classe
personne ?
Métabase
SELECT ?p
WHERE { ?p rdf:type Personne }
Données
SUBJECT
TRIPLES
PREDICATE
OBJECT
Etudiant
rdfs:subClassOf
Personne
Salarié
rdfs:subClassOf
Personne
…
…
…
durand
rdf:type
Personne
jean
morin
rdf:type
Personne
Etudiant
dupont
rdf:type
Personne
Salarié
morin
rdf:type
Etudiant
dupont
rdf:type
Salarié
?p
durand
?p
?p
durand durand
morin morin
dupont directes
dupont
Instances liées à leurs classes
Instances liées
leurs classes
directes et
enàfonction
de l’implantation
indirectes
 - Exploitation des données au niveau logique : Compatibilité SQL
 - Exploitation des données au niveau ontologique : dépend de l’implantation
 - Indépendance d’un modèle d’ontologies particuliercaché dans l’interpréteur
15
Les langages d’exploitation pour les
BDBO de type II
 Langages définis pour exploiter des ontologies
RDF-Schema et leurs instances
• Exemples : RQL, SeRQL, eRQL, etc.
 Langage représentatif : RQL
• Implanté sur RDF-Suite et Sesame
• Complété par RUL et RVL (LMD et LDV)
• Notion d’expression de chemin généralisée
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
Métabase
Ontologie
Données
BDBO de type 2
SELECT P, Email
FROM Person{P}.name{Name}, {P}mbox{Email}
WHERE Name=“durand”
16
Analyse du langage RQL
Quelles
Quelles sont
sont les
les classes
instances
des
ontologies
de la classe? personne ?
Métabase
Ontologie
ID
Person
Student
Class
nameFR
Personne
Etudiant
Employee
Salarié
SELECT *
SELECT P
FROM Class{C}
FROM Person{P}
Données
nameEN …
Person
Student
Personne
Salarié
ID
ID
ID
durand
jean
dupont
Employee
Subsomption
sub
sup
Student
Personne
Employee
Personne
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
Etudiant
Salarié
C
Person
SELECT
P
Student
FROM
^Person{P}
Employee
P
durand
morin
dupont
P
durand
ID
morin
Requête sur les ontologies Requête sur les données
 - Exploitation des données au niveau logique : Compatibilité SQL
 - Exploitation des données au niveau ontologique (pas OL)
 - Indépendance d’un modèle d’ontologies particulier
17
PLAN
1- Architecture de BDBO cible
2- Exigences pour le langage
3- Le langage OntoQL
Exigence 1 : Compatibilité SQL
Exigence 2 : Exploitation niveau ontologique
Exigence 3 : Exploitation des ontologies
4- Mise en œuvre
5- Conclusion et perspectives
18
Exigence 1 : Exploitation des
données au niveau logique
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
 Sous-ensemble de SQL supporté par les SGBD usuels
LID
Métabase
SELECT id, pgender
FROM Table_Person
id
pgrade
p1
M

Données
LMD
INSERT INTO Table_Person
VALUES (‘p2‘, ‘Tony’, ‘M’)
ID
p1
p2
Table_Person
pname pgender
Jack
M
Tony
M
Table_Student
ID
pname
pgrade
LDD
CREATE TABLE Table_Student (
id INTEGER,
pname VARCHAR(32),
pgrade VARCHAR(32)
)
19
Exigence 2 : Exploitation des données
au niveau ontologique, couche OCC
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
 Extension et adaptation de SQL99
Distinction niveaux logique/ontologique :
Métabase
SET NAMESPACE l = http://www.lisi.ensma.fr
LID
1
SELECT l:oid, l:gender
FROM l:Person
ONLY (l:Person)
LMD
Entity
ID
oid
p1
gender
M
INSERT INTO l:Person VALUES (‘Tony‘, ‘M’)
e1
NULL
LDD
Distinction niveaux
ontologie/modèle d’ontologie : #
2
Attribute
name
ID
Class
3
ID
4
name
Property
name
Ontologie
ID
Person
Student
Class
nameFR
Personne
Etudiant
nameEN …
Person
Student
Subsomption
sub
sup
Employee
Personne
Student
Personne
CREATE #Class l:Student UNDER l:Person (
DESCRIPTOR (#name[fr]=‘Etudiant’)
#Property ( l:grade String ) )
CREATE EXTENT OF l:Student (name, grade)
ID
p1
p2
Données
Table_Person
pname pgender
Jack
M
Tony
M
Table_Employee
ID pname
psalary
e1
Tim
10000
Table_Employee
ID pname
pgrade
 Couche OCC
20
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
Exigence 2 : Exploitation des données
au niveau ontologique, couche OCNC
 Langage de définition de vues (LDV)
Métabase
Définition de classes OCNC
Entity
ID
Ex : Homme = Personne & sexe = ‘M’
CREATE #Class Homme AS
VIEW UNDER Personne
Définition d’instances
CREATE VIEW OF Homme AS
SELECT *
FROM Personne
WHERE gender = ‘M’
1
2
Attribute
name
ID
Class
3
ID
4
name
Property
name
Ontologie
ID
Personne
Homme
Données
Class
nameFR
Personne
Homme
isView
False
True
Subsomption
sub
sup
Homme
Personne
…
ID
p1
…
Table_Person
pname pgender
Jack
M
…
…
ID
p1
…
Vue_Homme
pname pgender
Jack
M
…
…
 Couche OCNC
21
Exigence 2 : Exploitation des données
au niveau ontologique, couche OL
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
 Utilisation de termes dans les instructions OntoQL
Ex : rechercher l’identifiant et
le sexe des personnes
Métabase
Entity
ID
1
SELECT oid, gender
FROM Person
SET LANGUAGE = ‘EN’
‘FR’
sexe
SELECT oid, gender
Personne
FROM Person
2
Attribute
name
ID
Class
3
ID
4
name
Property
name
Ontologie
ID
Person
Student
Class
nameFR
Personne
Etudiant
ID
gender
Person
nameFR
sexe
Données
nameEN …
Person
Student
nameEN …
gender
ID
p1
…
Table_Person
pname pgender
Jack
M
…
…
Table_Student
ID pname
pgrade
s1
Peter
PHD
…
…
…
 Couche OL
22
Exigence 3 : Indépendance d’un
modèle d’ontologies particulier
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
 Définition d’un modèle d’ontologies noyau extensible (préfixe #)
Langage de Définition
d’Ontologies (LDO)
PLIB
CREATE ENTITY #PLIB_Class
~ RDF-S
UNDER #Class (
#note String)

OWL
CREATE ENTITY #OWL_Class
UNDER #Class (
#deprecated Boolean)
LMO
INSERT INTO #PLIB_Class
(#name, #note)
VALUES (‘Personne’, ‘…’)
LIO
SELECT #name[fr],
#definition
FROM #Class
Métabase
Métaschéma
Entity
ID
name
1
Class
2 PLIB_Class
3 OWL_Class
Attribute
ID
name
10
id
11
name
12
note
13 deprecated
Ontologie
Class
nameFR
ID
ID
Person
Données
…
PLIB_Class
nameFR
note
Person
…
ID
Employee
name[fr]
definition
Personne
…
Salarié
…
…
…
OWL_Class
nameFR deprecated …
Salarié
False
ID
p1
…
Table_Person
pname pgender
Jack
M
…
…
Table_Student
ID pname
pgrade
s1
Peter
PHD
…
…
…
23
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
Interrogation simultanée des
ontologies et des données
 Combinaison du LID et du LIO
Ontologie vers Données
SELECT C.#name[fr], i.oid
FROM #Class AS C , C AS i
WHERE C.#name LIKE ‘Per%’
name[fr]
oid
Personne
p1
Personne
s1
…
…
Métabase
Entity
ID
name
1
Class
2
Property
Ontologie
ID
Person
Student
Données vers Ontologie
SELECT p.name, typeof(p) .#name[fr]
FROM Personne p
name
#name[fr]
Jack
Personne
Peter
Etudiant
…
…
Attribute
ID
name
10
id
11
name
Class
nameFR
Personne
Etudiant
Subsomption
sub
sup
Student
Person
Données
nameEN …
Person
Student
C AS i
typeOf(.)
LIO
ID
p1
…
ID
s1
…
Table_Person
pname pgender
Jack
M
…
…
Table_Student
pname
pgrade
Peter
PHD
…
…
LID
24
PLAN
1- Architecture de BDBO cible
2- Exigences pour le langage
3- Le langage OntoQL
4- Mise en œuvre
Formalisation
Prototypage
5- Conclusion et perspectives
25
Formalisation
Modèle formel d’une BDBO
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
Model
M = (E, A, OC, C, P, Extent)
Meta-schema: E, A, OC
SuperEntities
Type
AttDomain
E  2E
OC  E
Méta-Schéma
OWL
PLIB
~ RDF-S
AE
AttRange
AE
Val
OC  A  OC
Métabase
F-Logic
Ontologie
Ontology: C, P
SuperClasses C  2C
propDomain P  C
propRange
PC
Données
Nomination: Content: Extent, I
C  Extent
Type
I  Extent
Abstraction: SchemaProp Extent  2p
Extent  C
Val
IPI
26
Formalisation
Algèbre OntoAlgebra pour les BDBO
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
 Conçue à partir de l’algèbre Encore définie pour les BDOO
 Signature des opérateurs
TUPLE
ADT), …, (String, ADT)>] x 2V
Relation[<(String,
x …  Relation
 TUPLE [<(String, ADT), …, (String, ADT)>] x 2V

Tuples composés de
Principaux
: OntoProject, OntoSelect, OntoOJoin
• valeursopérateurs
simples,
• d’éléments des ontologies (OC) ou
String x Fonction  Relation
OntoProject
: Relation
• d’instances
de classesx(I)2
Applique une ou plusieurs fonctions aux tuples en paramètre
OntoSelect : Relation x Prédicat  Relation
Supprime les tuples de la relation en entrée ne respectant pas un prédicat
donné
OntoOJoin : Relation x Relation X Predicat  Relation
Réalise la jointure entre deux relations
27
Formalisation
Sémantique des opérateurs
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
 Opérateurs d’interrogation des ontologies
éléments des ontologies = instance d’un modèle d’ontologies
(un modèle orienté-objet)
 Sémantique des opérateurs de ENCORE
 Opérateurs d’interrogation des données
Propriétés non valuées
 Introduction de la valeur NULL
 Opérateurs d’interrogation des ontologies et des données
Lien entre les éléments de l’ontologie et les instances de classes

TYPEOF : I  C
 OntoAlgebra  Interprétation du langage OntoQL
Requête OntoQL  Expression algébrique de OntoAlgebra
28
Formalisation
Techniques d’optimisation
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
 Règles d’équivalence :
Ex : pousser les sélections en bas de l’arbre algébrique
 Technique d’évaluation partielle :
Propriété non utilisée => pas d’accès à la partie données pour cette propriété
SELECT * FROM Person
WHERE gender = ‘M’
SELECT * FROM ONLY(Person)
WHERE gender = ‘M’
UNION
SELECT * FROM ONLY(Employee)
WHERE gender = ‘M’
UNION
SELECT * FROM ONLY(Student)
WHERE gender = ‘M’
SELECT * FROM ONLY(Person)
WHERE gender = ‘M’
Méta-schéma
Métabase
Données
Ontologie
ID
Person
Employee
Student
Class
nameFR nameEN …
Personne Person
Salarié Employee
Etudiant Student
Subsomption
sub
sup
Employee
Person
Student
Person
ID
p1
Table_Person
pname pgender
Jack
M
Table_Employee
ID pname
psalary
e1
Tim
10000
Table_Student
ID pname
pgrade
s1
John
PhD
29
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
Prototypage
Implantation de OntoQL sur OntoDB
 Modèle de données
Meta-schema: E, A, OC
Partie méta-schéma
Id
11
Entity
name
Item_Class
…
…
Id
12
Attribute
name
name
…
…
Partie ontologie
Id
11
rdfs:Class
label
Personne
…
…
rdf:Property
Id
label
…
12
email
…
Item_Class
name
Personne
Partie méta-base
Partie données
…
…
rid
111
EPersonne
Pname
Pemail
Durand
dura@
Property_det
rid
name
…
12
email
…
rid
112
ECours
Ptitle
Pnote
BD
20
rid
11
Personne
ID
111
name
ID VALUE
111 Durand
email
ID VALUE
111 dura@
Cours
ID
112
title
ID VALUE
112
BD
note
ID VALUE
112
4
Représentation binaire
Ontology: C, P
Content: Extent, I
Nomination:
C  Extent
30
Prototypage
Traitement d’une requête OntoQL
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
 Traitement d’une requête OntoQL
Requête
OntoQL
Expression
algébrique
OntoAlgebra
Expression
algébrique
Requête
SQL
Algèbre
Relationnelle
OntoDB
 Exemple
SELECT nom as n
FROM Personne
OntoQL

OntoProject


ext* <(n, nom)>
Personne
Arbre
OntoAlgebra
EPersonnepnomn ESalarié nulln
Arbre
SELECT pnom AS n
FROM EPersonne
UNION
SELECT pnom AS n
FROM ESalarié
SQL
Algèbre Relationnelle
31
Prototypage
Outils associés au langage OntoQL
1- Architecture cible
2- Exigences
3- Le langage OntoQL
4- Mise en œuvre
Méta-Schéma
Outils
Métabase
OntoQL+
OntoQBE
OntoAPI
JOBDBC
Moteur OntoQL
Ontologie
Données
SPARQL
Recherche
par mots-clés
Applications
 Projet ANR e-WOK HUB : Géosciences
 Projet EpiSEM : Pétrographie
 Bases de données techniques : Ingénierie
32
PLAN
1- Architecture de BDBO cible
2- Exigences pour le langage
3- Le langage OntoQL
4- Mise en œuvre
5- Conclusion et perspectives
33
Conclusion
1. Théorie des ontologies :
modèle d’ontologies unifié à sémantique partagée et extensible
2. Conception des BD :
extension de l’architecture ANSI/SPARC
3. Définition d’un langage d’exploitation de BDBO : le langage OntoQL
 Exploitation des données au niveau logique : compatibilité SQL
 Exploitation des données au niveau ontologique (OCC, OCNC, OL)
 Indépendance vis-à-vis d’un modèle d’ontologies donné (LDO, LMO, LIO)
4. Mise en oeuvre du langage OntoQL
 Formalisation : modèle de données d’une BDBO + OntoAlgebra
 Prototypage : implantation de OntoQL sur OntoDB + outils associés
JOBDBC
MétaSchéma
Métabase
OntoProject : Relation x 2String x Fonction  Relation
OntoQL+
OntoQBE
…
Moteur
OntoQL

Ontologie
Données

OntoSelect : Relation x Predicat  Relation
OntoOJoin : Relation x Relation X Predicat  Relation
Model = (E, A, OC, C, P,
Extent)

34
Perspectives
Évolution du langage OntoQL
 Extension sémantique du modèle noyau de OntoQL
• Requêtes paramétriques
• Approche « plugin »
 Optimisation des requêtes OntoQL
• Techniques usuelles (Vues matérialisées, Index, etc.)
• Techniques particulières (Partitionnement par langue naturelle)
 Construction automatique des relations de subsomptions
Autres contextes d’utilisation de OntoQL
 Ingénierie Dirigée par les Modèles : transformation de modèles
 Indexation sémantique de base de données
 Ontologies émergentes : enrichissement d’ontologies locales
35
Merci de votre écoute
?
36
Téléchargement