Presentation is loading. Please wait.

Presentation is loading. Please wait.

TOQL: Temporal Ontology Querying Language E. Baratis, E. G. M

Similar presentations


Presentation on theme: "TOQL: Temporal Ontology Querying Language E. Baratis, E. G. M"— Presentation transcript:

1 TOQL: Temporal Ontology Querying Language E. Baratis, E. G. M
TOQL: Temporal Ontology Querying Language E. Baratis, E.G.M. Petrakis, S. Batsakis, N. Maris, N. Papadakis Intelligent Systems Laboratory Dept. of Electronic and Computer Engineering Technical University of Crete (TUC) Chania Crete, Greece

2 Query on information that changes over time in ontologies
Problem Definition 12/1/2018 Query on information that changes over time in ontologies The price of a product at time 5 Representation of concepts / events that change in time in ontologies TOQL tackles both these problems SSTD'09 Aalborg, Denmark

3 OWL: binary relationships
State-Of-The-Art 12/1/2018 OWL: binary relationships Produces(C,P) Produces(C,P,t) ? OWL-Time: ontology of temporal concepts SPARQL for static ontologies No temporal operators The user needs to be aware of the representation of time SSTD'09 Aalborg, Denmark

4 Representation of Time
12/1/2018 Representation of the evolution of concepts (events) in ontologies Reification : extends n-ary relations to binary relations Versioning: new ontology for each change Extensive searches, restricted use of OWL language constructs (inverse, transitive, functional), reasoning can’t be applied SSTD'09 Aalborg, Denmark

5 4D Fluent (Perdurantist) Aproach
12/1/2018 Classes TimeSlice, TimeInterval are introduced Dynamic classes become instances of TimeSlice Temporal properties of dynamic classes become instances of TimeInterval A time slice object is created each time a (fluent) property changes SSTD'09 Aalborg, Denmark

6 Sample Ontology (Static)
12/1/2018 Employee Company Product string int Has Employee Produces Name Price Static classes/properties Dynamic classes/properties SSTD'09 Aalborg, Denmark

7 Dynamic Ontology Employee Company Product tsTimeSliceOf tsTimeSliceOf
12/1/2018 Employee Company Product Employee Name Company Name string string tsTimeSliceOf tsTimeSliceOf tsTimeSliceOf TimeSlice SSTD'09 Aalborg, Denmark IS-A IS-A IS-A EmployeeTimeSlice Company TimeSlice Product TimeSlice Has Employee Produces Product Name Price int string tsTimeInterval tsTimeInterval TimeInterval

8 Disadvantages: data redundancy
Comments 12/1/2018 The 4D perdurantist (fluent) solves problems of reification, versioning Changes affect only related objects not the entire ontology Reasoning mechanisms and semantics of OWL fully supported Disadvantages: data redundancy SSTD'09 Aalborg, Denmark

9 Handles ontologies like rel. DBs
TOQL 12/1/2018 Handles ontologies like rel. DBs SQL-like Relational Database Ontology Table - concept Class Table - relationship Object properties Attributes Datatype properties SSTD'09 Aalborg, Denmark SELECT <Object/Datatype property> … FROM <Class> … WHERE <Condition>

10 Introduces the AT operator for querying on temporal information
TOQL FEATURES 12/1/2018 Implements ALLEN operators between time instants and intervals before, after, equals, meets, overlaps, during, starts, ends Introduces the AT operator for querying on temporal information AT(time instant), AT(time interval) Supports nested queries and connecting clauses minus, union, intersect, exist, all, any, in Wildcards (*) SSTD'09 Aalborg, Denmark

11 Return companies producing “x” at time 4
Simple TOQL Example 12/1/2018 Return companies producing “x” at time 4 SELECT Company.companyName FROM Company, Product WHERE Company.produces:Product AND Product.productName LIKE “x” AT (4) SSTD'09 Aalborg, Denmark

12 Without TOQL Functionality
12/1/2018 SELECT Company.companyName FROM Company, Employee, TimeSlice AS T1, TimeSlice AS T2 WHERE T1.tsTimeSliceOf:Company AND T2.tsTimeSliceOf:Employee AND T1.hasEmployee:T2 AND Employee.employeeName LIKE “x“ AT (4) SSTD'09 Aalborg, Denmark

13 Return companies which employed “x” during (3,5)
Temporal Example 12/1/2018 Return companies which employed “x” during (3,5) SELECT Company.companyName FROM Company, Employee WHERE Company.hasEmployee:Employee AT(3,5) AND Employee.employeeName LIKE “x" SSTD'09 Aalborg, Denmark

14 Example with ALLEN operator
12/1/2018 Find companies which employed “x” before “y” SELECT Company.companyName FROM Company, Employee AS E1, Employee AS E2 WHERE Company.hasEmployee:E1 BEFORE Company.hasEmployee:E2 AND E1.employeeName LIKE “x” AND E2.employeeName LIKE “y” SSTD'09 Aalborg, Denmark

15 Translated into equivalent SeRQL ones
Query Translation 12/1/2018 Translated into equivalent SeRQL ones Ontology Parser Query Interpreter Knowledge Base (KB) KB Querying OWL ontology TOQL query SeRQL query Answer Error message Reasoner SSTD'09 Aalborg, Denmark

16 Find products produced by company “C1” at time 2
Transation Example 12/1/2018 Find products produced by company “C1” at time 2 SELECT Product FROM Company, Product WHERE Company.produces:Product AT(2) AND Company.companyName LIKE "C1" SSTD'09 Aalborg, Denmark

17 Equivalent SeRQL query
12/1/2018 SELECT Product FROM {Company} rdf:type {ex1:Company}, {Product} rdf:type {ex1:Product}, {CompanySlice_1} rdf:type {ex1:TimeSlice}, {interval1} rdf:type {ex1:TimeInterval}, {CompanySlice_1} ex1:produces {ProductSlice_1}, {Company} ex1:companyName {companyName_Company}, {CompanySlice_1} ex1:tsTimeSliceOf {Company}, {ProductSlice_1} ex1:tsTimeSliceOf {Product}, {interval1} ex1:startValue {startValue1}, {interval1} ex1:endValue {endValue1}, {ProductSlice_1} ex1:tsTimeInterval {interval1} WHERE startValue1 <= "2"^^xsd:int AND endValue1 >= "2"^^xsd:int AND companyName_Company Like "C1" USING NAMESPACE ex1= < owl#> SSTD'09 Aalborg, Denmark

18 Infer information from ontology schema
Reasoning in TOQL 12/1/2018 Infer information from ontology schema A query on a class will return the instances of its sub-classes e.g., a query on class COMPANY will also return instances of COMUTER COMPANIES The PELLET reasoner applies to the ontology schema at loading time to derive these relationships SSTD'09 Aalborg, Denmark

19 Infer information from existing information
Temporal Reasoner 12/1/2018 Infer information from existing information e.g., the price of a product remains the same since the last time it was changed Implemented in PROLOG based on Event Calculus Applies to functional fluent properties i.e., properties that have one value at each time instant SSTD'09 Aalborg, Denmark

20 Example of Reasoner use
12/1/2018 If the price of “P4” is 50 at time 2 and becomes 60 at time 4, then TOQL will return null SELECT Product FROM Product WHERE Product.price LIKE “50” AT(9) Without the reasoner the TOQL will return “P4” SSTD'09 Aalborg, Denmark

21 Summary of Query Translation
12/1/2018 Loads the ontology Applies PELLET for class / subclass info Parses the query and report error messages Translates the query to SeRQL Uses the dynamic part of ontology to answer queries addressing fluent properties Applies the temporal reasoner on functional fluent properties Uses the static part of ontology to answer queries addressing static properties SSTD'09 Aalborg, Denmark

22 Conclusions 12/1/2018 TOQL is new query language for retrieving temporal information from OWL ontologies Simple SQL – like syntax, with more powerful temporal operators than SPARQL or SeRQL Independent of representation of time SSTD'09 Aalborg, Denmark

23 Solve performance issues (indexing) Query optimization
Future Work 12/1/2018 Representation of Spatial / Spatio- temporal information representation and operators Solve performance issues (indexing) Query optimization Open schema query support (class as variable in FROM) Addressing ontology structure (support of CLASS / SUBCLASS keywords) SSTD'09 Aalborg, Denmark


Download ppt "TOQL: Temporal Ontology Querying Language E. Baratis, E. G. M"

Similar presentations


Ads by Google