Transcript default

Querying Ontology Based
Database Using
OntoQL
Stephane Jean et al.
Presented by: Meher Talat Shaikh
Overview
OntoQL is a language for defining, manipulating and querying data
stored in an OBDB.
Objective: retrieve definition, meaning, translation and/or identifier of
a given data item.
OBDB (OntoDB) data model: created and customized by users
OntoQL operators that makes up OntoAlgebra
Example queries
OBDB data model
Built on top of relational database model.
Both the ontology and the instances are kept in the same database.
Content part: Stores the instances
Ontology part: Stores ontology definitions
Ontology
E is a set of entities representing the ontology model
OC is the set of concepts of ontologies
A is the set of attributes describing each OC
SuperEntities: associates set of super entities to an entity (E 2E1 )
TypeOf: Associates the strongest entity to each concept of ontology
(OC E)
AttributeDomain, AttributeRange
Val
Ontology kernel
Ontology example
Ontology class example
Content
EXTENT is a set of extensional definitions of ontology classes
I is the set of instances of the OBDB
TypeOf : I EXTENT
SchemaProp : EXTENT  2P
Val
Content cont..
Relationship between ontology and content is defined by
partial function nomination: CEXTENT
Classes without extensional definition are said to be
abstract
Content example
Onto Algebra
OntoImage: returns collection of objects after applying a specific
function. OntoImage(C, IC, p)
OntoProject: allows the application of more than one function.
OntoSelect: creates a collection of objects satisfying a selection
predicate.
OntoJoin: creates relationships between objects of two collections.
* : introduces polymorphism: returns the instances of the class C
and all the classes subsumed by C
OntoQL
Extension of SQL
DDL
to create, alter and drop concepts of ontologies
to create, alter and drop attributes of these concepts of ontologies
DML
Update, Insert, Delete etc.
OntoQL DDL
Laboratory example
Querying OBDB
example queries
OntoQL Features
Path expressions. Associations may be traversed using dot notation.
Polymorphic query: * operator
Nested queries
Aggregate functions: count, avg, min max.
Quantification: Existential (ANY, SOME) and universal (ALL)
Set operators: Union, Intersection and Except
Processing of ONtoQL
OntoQL query is parsed into an OntoAlgebra expression tree
path expressions and * operators removed
The expression tree is optimized
OntoAlgebra is translated to relational algebra tree.
The relational algebra tree is optimized.
The optimized relational algebra trees are translated into SQL
queries.
Advantages of OntoQL
Based on SQL
Allows schema manipulation
Express queries in different languages.
Provides GROUP BY and ORDER By operators.
Shortcomings
FROM Clause is mandatory
Does not yet support multi-instantiation capability
Large sets of data are to be evaluated to study the OntoQL
scalability issue.
Conclusion
OntoQL is effective in querying data, ontology and both
Based on Object oriented concepts and RDB model
conceptual model may be created and customized by users.
Thank you.