View
221
Download
2
Embed Size (px)
Citation preview
IntroductionIntroduction Using ontologies as a conceptual point of view on Using ontologies as a conceptual point of view on
repositories of data is increasinglyrepositories of data is increasingly
These ontologies deal with large amounts of dataThese ontologies deal with large amounts of data Most important parameter on computational Most important parameter on computational
complexity of reasoningcomplexity of reasoning
We will want a polynomial reasoning!We will want a polynomial reasoning!
Data sizeData size
And we want can do complex questionsAnd we want can do complex questions
IntroductionIntroduction
1. Perfect reformulation:1. Perfect reformulation: taking into account the TBOX taking into account the TBOX T, the q query is reformulated in a new queryT, the q query is reformulated in a new query
2 stapes: 2 stapes:
On a DL-LiteOn a DL-Lite
Conjunctive query is a union of conjunctive wich size Conjunctive query is a union of conjunctive wich size does not depend on Adoes not depend on A
We can evaluate it with LOGSPACE on We can evaluate it with LOGSPACE on the ABOX size the ABOX size
IntroductionIntroduction
2. Query Evaluation:2. Query Evaluation: the new query is evaluated only the new query is evaluated only in the ABox to produce the answer in the ABox to produce the answer
2 stapes: 2 stapes:
The evaluation of the query can be delegated to an engine The evaluation of the query can be delegated to an engine SQL database with optimization of querys strategiesSQL database with optimization of querys strategies
The ABox, is maintained through a RDBMS (Data The ABox, is maintained through a RDBMS (Data management systems relational) in the secondary management systems relational) in the secondary storage to control a large data numberstorage to control a large data number
Because is the unique tecnologyBecause is the unique tecnology
IntroductionIntroduction We presented two systems to work We presented two systems to work
with large amounts of data: with large amounts of data:
OWL-GresOWL-Gres
QuontoQuonto
IntroductionIntroduction TargetsTargets
Compare the OWL-Gres system with Compare the OWL-Gres system with Quonto systemQuonto system
Discover the DL-Lite fragment in which Discover the DL-Lite fragment in which is based in OWL_Gres is based in OWL_Gres
QuontoQuonto Is a tool that implements the DL-Lite Is a tool that implements the DL-Lite
query answering algorithmquery answering algorithm
Their limitations will depend of the single Their limitations will depend of the single engine DBMengine DBM
Is capable of answering questions Is capable of answering questions about ABOXes wich containing about ABOXes wich containing millions of assertionsmillions of assertions
Delegates to a RBDMS the storing of the Delegates to a RBDMS the storing of the ABOXABOX
Quonto: Quonto: DL-Lite A+DL-Lite A+
Represents the domain in terms of concepts, sets of Represents the domain in terms of concepts, sets of objects, and roles and permets: objects, and roles and permets:
Is the fragment DL-Lite largest known in order to obtain Is the fragment DL-Lite largest known in order to obtain LOGSPACE data complexityLOGSPACE data complexity
Value-Domains: domains that denote specific sets of values (data)Value-Domains: domains that denote specific sets of values (data)
Enjoys FOL-rewritabilityEnjoys FOL-rewritability
Concept attributes: binary relations between objects and valuesConcept attributes: binary relations between objects and values
Role attributes: ternary relations between pairs of objects and valueRole attributes: ternary relations between pairs of objects and value
Allows for functionality assertions and role inclusion Allows for functionality assertions and role inclusion assertions, but with some restrictions:assertions, but with some restrictions: No functional role or attribute can be specialized by using it in No functional role or attribute can be specialized by using it in
the right-hand side of a role or attribute inclusion assertionsthe right-hand side of a role or attribute inclusion assertions
Quonto: Quonto: DL-Lite A+DL-Lite A+
The knowledge The knowledge base (KB) is base (KB) is formed by: formed by:
K=<T, A> K=<T, A>
T: TBOXT: TBOX to to represent intensional represent intensional knowledgeknowledge
A: ABOXA: ABOX to represent to represent extensional extensional knowledgeknowledge
Member AssertionsMember Assertions
Concept inclusion assertion: B ⊑ CConcept inclusion assertion: B ⊑ C
Role functionality assertion: funct Q Role functionality assertion: funct Q
Role inclusion assertion: Q ⊑ R Role inclusion assertion: Q ⊑ R
Value-domain inclusion assertion: Value-domain inclusion assertion: E ⊑ F E ⊑ F
Attribute inclusion assertion: U ⊑ V Attribute inclusion assertion: U ⊑ V
Attribute functionality assertion: Attribute functionality assertion: funct U funct U
A(c), P(c; c0), A(c), P(c; c0),
UUCC(c; d) U(c; d) URR(a, b, c)(a, b, c)
Attribute Role: funct R Attribute Role: funct R
Quonto:Quonto: Query answeringQuery answering
x: Distinguished variablesx: Distinguished variables y: Non-distinguished variables y: Non-distinguished variables conj (x, y): atoms:conj (x, y): atoms:
A(xA(xoo)) P(xP(xoo, y, yoo)) D(xD(xvv) ) UUCC(x(xoo,, xxvv)) UURR(x(xoo,y,y00 x xvv))
Query conjunctive in a KB K:Query conjunctive in a KB K:
q(x) ←q(x) ←y. conj(x,y)y. conj(x,y) xxoo, y, yoo are variables in x and y or are variables in x and y or
constants in Гconstants in ГOO xxvv is a variable in x and y a constant is a variable in x and y a constant
in in ГГVV
Union of conjunctive queries (UCQ):Union of conjunctive queries (UCQ):
Certain answers all tuples t of elements of Certain answers all tuples t of elements of ГГVV Г ГOO such that, when substituted to x in such that, when substituted to x in
q(x), we have that K |= q(t)q(x), we have that K |= q(t)q(x) ←Vq(x) ←Viiyyii. conj(x,y). conj(x,y)
Firs TargetFirs Target On what DL-Lite fragment On what DL-Lite fragment
is based OWL-Gres? is based OWL-Gres?
2 step
s:
2 step
s: See the characteristics of potential See the characteristics of potential
fragments and differentiate itfragments and differentiate it
See if OWL-Gres accept this characteristicsSee if OWL-Gres accept this characteristics
Java ProgramJava Program
Protege toolProtege tool
First Target: First Target: FragmentsFragmentsConstructor Sintax Example
Atomic conc A Doctor
Exist. Restr Q child-
At. conc. neg. A Doctor
Conc. neg. Q child
Atomic role P Child
Inverse role P- child-
Role negation Q manages
Conc. incl. Cl ⊑ Cr Father ⊑ child
Mem. asser. A(c) Father(bob)
First Target: First Target: FragmentsFragments
Constructor Sintax Example
Atomic conc A Doctor
Exist. Restr Q child-
At. conc. neg. A Doctor
Conc. neg. Q child
Atomic role P Child
Inverse role P- child-
Role negation Q manages
Conc. incl. Cl ⊑ Cr Father ⊑ child
Mem. asser. A(c) Father(bob)
First Target: First Target: FragmentsFragments
Mem. asser. P (c1,c2) Child(bob, ann)
Role incl. Q ⊑ R hasFather ⊑ child-
Disjointness between roles Q ⊑ Q child ⊑ child
Funct. asser. funct (Q) (funct father)
Top conc ТC
Qualified exist. restriction Q.C child.Male
Attribute domain (U) (salary)
Top domain ТD
Datatype Ti xsd: int
Attribute range (U) (salary)
First Target: First Target: FragmentsFragments
Mem. asser. P (c1,c2) Child(bob, ann)
Role incl. Q ⊑ R hasFather ⊑ child-
Disjointness between roles Q ⊑ Q child ⊑ child
Funct. asser. funct (Q) (funct father)
Top conc ТC
Qualified exist. restriction Q.C child.Male
Attribute domain (U) (salary)
Top domain ТD
Datatype Ti xsd: int
Attribute range (U) (salary)
First Target: First Target: FragmentsFragments
Mem. asser. P (c1,c2) Child(bob, ann)
Role incl. Q ⊑ R hasFather ⊑ child-
Disjointness between roles Q ⊑ Q child ⊑ child
Funct. asser. funct (Q) (funct father)
Top conc ТC
Qualified exist. restriction Q.C child.Male
Attribute domain (U) (salary)
Top domain ТD
Datatype Ti xsd: int
Attribute range (U) (salary)
First Target: First Target: FragmentsFragments
Mem. asser. P (c1,c2) Child(bob, ann)
Role incl. Q ⊑ R hasFather ⊑ child-
Disjointness between roles Q ⊑ Q child ⊑ child
Funct. asser. funct (Q) (funct father)
Top conc ТC
Qualified exist. restriction Q.C child.Male
Attribute domain (U) (salary)
Top domain ТD
Datatype Ti xsd: int
Attribute range (U) (salary)
First Target: First Target: FragmentsFragments
Atomic attribute U Salary
Attribute negation U salary
Object constant C John
Value constant V ‘john’
Mem. asser. U (c,d) phone(bob, ‘2345’)
Atr.funct asser. funct (U) (funct ssn)
Role Incl. asser. Q ⊑ R Father ⊑ anc
V.Dom Incl. asser. E ⊑ F (age) ⊑ xsd: int
Atri. Incl asser. U ⊑ V offPhone ⊑ phone
First Target: First Target: SearchSearch We use a TBOX based We use a TBOX based in the university in the university
hierarchy: hierarchy:
First Target: First Target: SearchSearch Initially our TBOX is compatible with Initially our TBOX is compatible with
OWL-Gres: OWL-Gres:
C:\Documents and Settings\Propietario\workspace\OwlGres21-jul-2008 12:54:42 org.coode.owl.rdfxml.parser.OWLRDFConsumer endModelINFO: Total number of triples: 61721-jul-2008 12:54:42 org.coode.owl.rdfxml.parser.OWLRDFConsumer endModelINFO: Loaded http://semantics.crl.ibm.com/univ-bench-dl.owlThe TBox is compatible with DL-Lite
First Target: First Target: SearchSearch We verify for DL-Lite F: We verify for DL-Lite F:
C:\Documents and Settings\Propietario\workspace\OwlGres21-jul-2008 12:57:25 org.coode.owl.rdfxml.parser.OWLRDFConsumer endModelINFO: Total number of triples: 61821-jul-2008 12:57:25 org.coode.owl.rdfxml.parser.OWLRDFConsumer endModelINFO: Loaded http://semantics.crl.ibm.com/univ-bench-dl.owlFRAGMENT ERROR: No support for axiom OWLFunctionalObjectPropertyAxiom
On OWL Axiom: FunctionalObjectProperty(takesCourse)
The TBox is not compatible with DL-Lite
The TBos is The TBos is not not
compatible compatible with with
DL- DL-Lite FR Lite FR or DL-Lite Aor DL-Lite A
DL-Lite DL-Lite RR
DL-Lite FDL-Lite FDL-Lite DL-Lite FRFR
DL-Lite DL-Lite AA
First Target: First Target: SearchSearch We verify for DL-Lite R: We verify for DL-Lite R:
C:\Documents and Settings\Propietario\workspace\OwlGres21-jul-2008 12:58:45 org.coode.owl.rdfxml.parser.OWLRDFConsumer endModelINFO: Total number of triples: 61921-jul-2008 12:58:45 org.coode.owl.rdfxml.parser.OWLRDFConsumer endModelINFO: Loaded http://semantics.crl.ibm.com/univ-bench-dl.owlThe TBox is compatible with DL-Lite
OWL-Gres is based OWL-Gres is based on DL-Lite Ron DL-Lite R
First Target: First Target: SearchSearch But… But…
We have concept attributes…We have concept attributes…
IS-A for concept attribuites?IS-A for concept attribuites? Range(Uc) IS-A Datatype NORange(Uc) IS-A Datatype NO Person IS-A domain(Uc) assertion NOPerson IS-A domain(Uc) assertion NO
First Target: First Target: ConclusionsConclusions
OWL-Gres is based on: OWL-Gres is based on:
DL-Lite RDL-Lite R
Concept attribuitesConcept attribuites
IS-A for concept attribuitesIS-A for concept attribuites
Second Target:Second Target: Preliminary notesPreliminary notes
2 t
ypes
of
sem
anti
c
2 t
ypes
of
sem
anti
c
GroundGround
StandardStandardq(x) q(x) ← ← y, z, w. edgeB(x,y) y, z, w. edgeB(x,y) edgeR(x,z) edgeR(x,z) edgeR(y,z) edgeR(y,z)
{a}
q(x) q(x) ← ← y, z, w. y, z, w. edgeB(x,y) edgeB(x,y) edgeR(x,z) edgeR(x,z) edgeR(y,z)edgeR(y,z)
q(x,y,z) q(x,y,z) ← ← y, z, w. y, z, w. edgeB(x,y) edgeB(x,y) edgeR(x,z) edgeR(x,z) edgeR(y,z)edgeR(y,z)
{}
{}
TBOXTBOX
edgeRedgeR--⊑⊑ NodeNodeedgeR edgeR ⊑⊑ NodeNodeedgeBedgeB--⊑⊑ NodeNodeedgeB edgeB ⊑⊑ NodeNodeNodeRB NodeRB ⊑ ⊑ edgeRedgeRNodeRB NodeRB ⊑⊑ edgeBedgeB
edgeB(a,a)edgeB(a,a)NodeRB(a)NodeRB(a)ABOXABOX
Second Target:Second Target: Preliminary notesPreliminary notes
Let’s consider the query 15:Let’s consider the query 15:
hasS
am
eH
om
eTow
nhasS
am
eH
om
eTow
nW
ith
Wit
h
X
Y Z
W
T
isMemberisMemberOfOf
hasMem
ber
hasMem
ber
isCrazyAbisCrazyAboutout
isCrazyAb
isCrazyAb
outout
The query is designed on The query is designed on purpose to establish if a purpose to establish if a reasoner is able to answer reasoner is able to answer according to the standard according to the standard conjunctive query semantic:conjunctive query semantic:1.1.Quonto gives out 94 answersQuonto gives out 94 answers2.2.OWLGres gives out 89 OWLGres gives out 89 answers, like Racer, Pellet, etc..answers, like Racer, Pellet, etc..
q(x) ← q(x) ← hasSameHomeTownWith(x,hasSameHomeTownWith(x,y) y) isMemberOf(y,z) isMemberOf(y,z) hasMember(z,t) hasMember(z,t) isCrazyAbout(t,w) isCrazyAbout(t,w) isCrazyAbout(x,w)isCrazyAbout(x,w)
Second Target:Second Target: Experiment conditionsExperiment conditions
We have made We have made two comparisons:two comparisons:
Without optimizationsWithout optimizations
With optimizationsWith optimizations What are they?What are they?
Keep the reasoners near as much as Keep the reasoners near as much as possible from the optimizations point of possible from the optimizations point of viewview
Second Target:Second Target: Experiment conditionsExperiment conditions
OptimizationsOptimizations
QUONTOQUONTO OWLGRESOWLGRES
Semantic conjunctive Semantic conjunctive query minimizationquery minimization
YesYes YesYes
Query containmentQuery containment YesYes NoNo
In-expansion In-expansion optimizationsoptimizations
YesYes NoNo
Auxiliar role Auxiliar role optimizationoptimization
YesYes YesYes
Selectivity Selectivity optimizationoptimization
NoNo YesYes
Second Target:Second Target: Experiment conditionsExperiment conditions
Semantic conjunctive query Semantic conjunctive query minimizationminimization
PeopleWithHobby ⊑ PeopleWithHobby ⊑ like like
q(x) :- PeopleWithHobby(x), like(x,y)q(x) :- PeopleWithHobby(x), like(x,y)
q(x) :- PeopleWithHobby(x)q(x) :- PeopleWithHobby(x)
likelike ⊑⊑ PeopleWithHobbyPeopleWithHobby
q(x) :- PeopleWithHobby(x), like(x,y)q(x) :- PeopleWithHobby(x), like(x,y)
q(x) :- like(x,y)q(x) :- like(x,y)
QuontoQuonto
QuontoQuonto
OWL-GresOWL-Gres
Second Target:Second Target: Experiment conditionsExperiment conditions
OptimizationsOptimizations
QUONTOQUONTO OWLGRESOWLGRES
Semantic conjunctive Semantic conjunctive query minimizationquery minimization
YesYes YesYes
Query containmentQuery containment YesYes NoNo
In-expansion In-expansion optimizationsoptimizations
YesYes NoNo
Auxiliar role Auxiliar role optimizationoptimization
YesYes YesYes
Selectivity Selectivity optimizationoptimization
NoNo YesYes
Second Target:Second Target: Experiment conditionsExperiment conditions
Query containmentQuery containment
We considered:We considered:
q(x):- A(x) q(x):- A(x) q(x) :- A(x),B(x) q(x) :- A(x),B(x)
We can send to evaluate We can send to evaluate
ONLY in QuontoONLY in Quonto
q(x):- A(x)q(x):- A(x)
Second Target:Second Target: Experiment conditionsExperiment conditions
OptimizationsOptimizations
QUONTOQUONTO OWLGRESOWLGRES
Semantic conjunctive Semantic conjunctive query minimizationquery minimization
YesYes YesYes
Query containmentQuery containment YesYes NoNo
In-expansion In-expansion optimizationsoptimizations
YesYes NoNo
Auxiliar role Auxiliar role optimizationoptimization
YesYes YesYes
Selectivity Selectivity optimizationoptimization
NoNo YesYes
Second Target:Second Target: Experiment conditionsExperiment conditions
In-expansion optimizationsIn-expansion optimizations
Man ⊑ Man ⊑ ¬¬WomanWoman
q(x):-Man(x),Woman(x)q(x):-Man(x),Woman(x)
answer {}answer {}
ONLY in QuontoONLY in Quonto
Consistent OntologyConsistent Ontology
Second Target:Second Target: Experiment conditionsExperiment conditions
OptimizationsOptimizations
QUONTOQUONTO OWLGRESOWLGRES
Semantic conjunctive Semantic conjunctive query minimizationquery minimization
YesYes YesYes
Query containmentQuery containment YesYes NoNo
In-expansion In-expansion optimizationsoptimizations
YesYes NoNo
Auxiliar role Auxiliar role optimizationoptimization
YesYes YesYes
Selectivity Selectivity optimizationoptimization
NoNo YesYes
Second Target:Second Target: Experiment conditionsExperiment conditions
Auxiliar role optimizationAuxiliar role optimization
For For A A ⊑⊑ R.CR.C It’s introduced an auxiliar roleIt’s introduced an auxiliar role
But has no membership assertionBut has no membership assertion
We delete all querys with We delete all querys with an an auxiliar roleauxiliar role
QuontoQuonto and and OWL-GresOWL-Gres
Second Target:Second Target: Experiment conditionsExperiment conditions
OptimizationsOptimizations
QUONTOQUONTO OWLGRESOWLGRES
Semantic conjunctive Semantic conjunctive query minimizationquery minimization
YesYes YesYes
Query containmentQuery containment YesYes NoNo
In-expansion In-expansion optimizationsoptimizations
YesYes NoNo
Auxiliar role Auxiliar role optimizationoptimization
YesYes YesYes
Selectivity Selectivity optimizationoptimization
NoNo YesYes
Second Target:Second Target: Experiment conditionsExperiment conditions
Selectivity optimizationSelectivity optimization
A concept, role or concept attribute has no A concept, role or concept attribute has no membership assertionsmembership assertions
We delete all the conjunctive queries with this We delete all the conjunctive queries with this elementelement
It’s correct ?It’s correct ?
ONLY in ONLY in OWL-GresOWL-Gres
Second Target:Second Target: First ComparisonFirst Comparison
QUONTOQUONTO OWLGRESOWLGRES
Semantic Semantic conjunctive query conjunctive query
minimizationminimization
EnabledEnabled EnabledEnabled
query query containmentcontainment
DisabledDisabled --
In-expansion In-expansion optimizationsoptimizations
DisabledDisabled --
Selectivity Selectivity optimizationoptimization
-- DisabledDisabled
Second Target:Second Target: First ComparisonFirst Comparison
QueryExpansion
TimeEvaluation
TimeNumber of
Disjunctions
Nº ofdisjunctions 1ªOptimization Nºresults
Q O-G Q O-G Q O-G Q O-G Q O-G
q(x) ← GraduateStudent(x) takesCourse(x,”Dep0.Univ0/
GraduateCourse”) 0 16 16 31 2 2 1 1 12 12
q(x,y,z) ← GraduateStudent(x) University(y) Department(z)
subOrganizationOf(z,y) memberOf(x,z)
undergraduateDegreeFrom(x,y) 63 110 2422 7672 37 37 13 13103 103
q(x) ← Publication(x) publicationAuthor(x,”Dep0.Univ0/Assis
tantProfessor0”) 0 16 203 125 1 1 1 1 7 7
q(x,y1,y2,y3) ← Professor(x) worksFor(x,”Dep0.Univ0”)
name(x,y1) emailAddress(x,y2) telephone(x,y3) 47 125 1375 859 63 63 18 18 21 0
Second Target:Second Target: First ComparisonFirst Comparison
QueryExpansion
Time Evaluation Time
Number ofDisjunction
s
Nº ofdisjunctions 1ªOptimization Nºresults
Q O-G Q O-G Q O-G Q O-G Q O-G
q(x) ← Person(x) memberOf(x,”Dep0.Univ0”) 0 15 141 94 13 13 7 7 739 739
q(x) ← Student(x) 0 31 3516 2875 12 12 10 1013570
13570
q(x,y) ← Student(x) Course(y) takesCourse(x,y)
teacherOf(“Dep0.Univ0/AssociateProfessor0”,y) 0 16 188 125 4 4 2 2 45 45
q(x,y,z) ← Student(x) Department(y) memberOf(x,y)
subOrganizationOf(y,”Univ0”) emailAddress(x,z) 297 750 9687 36390 409 435 119 126
13320
13320
q(x,y,z) ← Student(x) Faculty(y) Course(z) advisor(x,y) teacherOf(y,z)
takesCourse(x,z) 0 31 266 2719 4 4 2 2 184 184
q(x) ← Student(x) takesCourse(x,”Dep0.Univ0/GraduateCourse
0”) 0 0 0 16 2 2 1 1 12 12
Second Target:Second Target: First ComparisonFirst Comparison
Query Expansion TimeEvaluation
TimeNumber of
disjunctions
Number of disjunctions
1ª optimitation Nºresults
Q O-G Q O-G Q O-G Q O-G Q O-G
q(x) ← ResearchGroup(x) subOrganizationOf(x,”Univ0”) 0 15 125 63 3 3 2 2 200 200
q(x,y) ← Chair(x) Department(y) worksFor(x,y)
subOrganizationOf(y,”Univ0”) 0 62 750 2235 20 20 4 4 20 20
q(x) ← Person(x) hasAlumnus(“Univ0”,x) 0 16 344 31 5 5 5 5 161 161
q(x) ← UndergraduateStudent(x) 0 16 31 500 1 1 1 11028
01028
0
q(x) ← hasSameHomeTownWith(x,y) isMemberOf(y,z) hasMember(z,t)
isCrazyAbout(t,w) isCrazyAbout(x,w) 3187 6219 3953 1469 6084 6084 49 49 89 89
Second Target:Second Target: QuontoQuonto AboxAbox
e-mail attribute of concept:e-mail attribute of concept:
Second Target:Second Target: OWL-GresOWL-Gres AboxAbox
TBOX_Concept_inclusion :TBOX_Concept_inclusion :
Second Target:Second Target: OWL-GresOWL-Gres AboxAbox
Object_Role_assertion: Object_Role_assertion:
Second Target:Second Target: Second ComparisonSecond Comparison
QUONTOQUONTO OWLGRESOWLGRES
Semantic Semantic conjunctive query conjunctive query
minimizationminimization
EnabledEnabled EnabledEnabled
query query containmentcontainment
EnabledEnabled --
In-expansion In-expansion optimizationsoptimizations
EnabledEnabled --
Selectivity Selectivity optimizationoptimization
-- EnabledEnabled
Second Target:Second Target: Second ComparisonSecond Comparison
QueryExpansion
TimeEvaluation
Time
Number of
disjunctions
Nº of disjunctions
1ª optimizatio
n
Nº ofdisjuncti
ons selectivit
yNº of
results
Q O-G Q O-G QO-G Q O-G Q
O-G Q O-G
q(x) ← GraduateStudent(x) takesCourse(x,”Dep0.Univ0/Graduate
Course0”) 16 0 78 32 2 2 1 1 1 1 12 12
q(x,y,z) ← GraduateStudent(x) University(y) Department(z)
subOrganizationOf(z,y) memberOf(x,z)
undergraduateDegreeFrom(x,y) 141 94 688 203 35 37 13 13 13 9 103 103
q(x) ← Publication(x) publicationAuthor(x,”Dep0.Univ0/As
sistantProfessor0”) 0 0 16 16 1 1 1 1 1 1 7 7
Second Target:Second Target: Second ComparisonSecond Comparison
QueryExpansion
TimeEvaluation
Time
Number of
disjunctions
Nº of disjunction
s 1ª optimizatio
n
Nº ofdisjuncti
ons selectivit
yNº of
results
Q O-G Q O-G QO-G Q O-G Q
O-G Q O-G
q(x,y1,y2,y3) ← Professor(x) worksFor(x,”Dep0.Univ0”)
name(x,y1) emailAddress(x,y2) telephone(x,y3) 78 125 1375 859 63 63 18 18 18 10 21 0
q(x) ← Person(x) memberOf(x,”Dep0.Univ0”) 16 15 62 63 13 13 7 7 7 5 739 739
q(x) ← Student(x) 0 31 1906 703 12 12 10 10 10 5 13570 13570
q(x,y) ← Student(x) Course(y) takesCourse(x,y)
teacherOf(“Dep0.Univ0/AssociateProfessor0”,y) 0 16 16 31 4 4 2 2 2 2 45 45
Second Target:Second Target: Second ComparisonSecond Comparison
QueryExpansion
TimeEvaluation
Time
Nº of disjunctio
ns
1ª opt: Nº of
disjunctions
Selec. Nº of disjunction
s Nº results
Q O-G Q O-G QO-G Q O-G Q
O-G Q O-G
q(x,y,z) ← Student(x) Department(y) memberOf(x,y) subOrganizationOf(y,”Univ0”)
emailAddress(x,z) 860 766 3031 17438 310 435 85 126 85 4513320
13320
q(x,y,z) ← Student(x) Faculty(y) Course(z) advisor(x,y)
teacherOf(y,z) takesCourse(x,z) 15 31 62 188 4 4 2 2 2 2 184 184
q(x) ← Student(x) takesCourse(x,”Dep0.Univ0/Grad
uateCourse0” 0 16 0 31 2 2 1 1 1 1 12 12
q(x) ← ResearchGroup(x) subOrganizationOf(x,”Univ0”) 0 15 16 31 3 3 2 2 2 1 200 200
Second Target:Second Target: Second ComparisonSecond Comparison
Query Expansion TimeEvaluation
TimeNº of
disjunctions
1ª opt: Nº of
disjunctions
Selec. Nº of
disjunctions Nº results
Q O-G Q O-G Q O-G Q O-G QO-G Q O-G
q(x,y) ← Chair(x) Department(y) worksFor(x,y)
subOrganizationOf(y,”Univ0”) 0 47 672 2172 19 20 4 4 4 4 20 20
q(x) ← Person(x) hasAlumnus(“Univ0”,x) 0 16 16 31 5 5 5 5 5 3 161 161
q(x) ← UndergraduateStudent(x) 0 16 63 515 1 1 1 1 1 1
10280
10280
q(x) ← hasSameHomeTownWith(x,y)
isMemberOf(y,z) hasMember(z,t)
isCrazyAbout(t,w) isCrazyAbout(x,w) 123266 6219 672 1469 6084 6084 49 49 49 25 89 89
ConclusionsConclusionsQUONTOQUONTO OWLGRESOWLGRES
ABOX sizeABOX size
Evaluation TimeEvaluation Time
Expansion TimeExpansion Time
OptimizationsOptimizations
55 MB75 MB