RuQAR : Reasoning with OWL 2 RL Using Forward Chaining Engines - - PowerPoint PPT Presentation

ruqar reasoning with owl 2 rl using forward chaining
SMART_READER_LITE
LIVE PREVIEW

RuQAR : Reasoning with OWL 2 RL Using Forward Chaining Engines - - PowerPoint PPT Presentation

RuQAR : Reasoning with OWL 2 RL Using Forward Chaining Engines Jaroslaw Bak Institute of Control and Information Engineering Poznan University of Technology Piotrowo 3a, 60-965 Poznan, Poland Email: jaroslaw.bak@put.poznan.pl June 6th, 2015


slide-1
SLIDE 1

RuQAR : Reasoning with OWL 2 RL Using Forward Chaining Engines

Jaroslaw Bak

Institute of Control and Information Engineering Poznan University of Technology Piotrowo 3a, 60-965 Poznan, Poland Email: jaroslaw.bak@put.poznan.pl

June 6th, 2015

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 1 / 20

slide-2
SLIDE 2

Outline

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 2 / 20

slide-3
SLIDE 3

Outline

1 What is RuQAR? Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 2 / 20

slide-4
SLIDE 4

Outline

1 What is RuQAR? 2 Motivation Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 2 / 20

slide-5
SLIDE 5

Outline

1 What is RuQAR? 2 Motivation 3 The RuQAR Framework Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 2 / 20

slide-6
SLIDE 6

Outline

1 What is RuQAR? 2 Motivation 3 The RuQAR Framework ◮ Features Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 2 / 20

slide-7
SLIDE 7

Outline

1 What is RuQAR? 2 Motivation 3 The RuQAR Framework ◮ Features ◮ Architecture and Implementation Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 2 / 20

slide-8
SLIDE 8

Outline

1 What is RuQAR? 2 Motivation 3 The RuQAR Framework ◮ Features ◮ Architecture and Implementation 4 Evaluation Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 2 / 20

slide-9
SLIDE 9

Outline

1 What is RuQAR? 2 Motivation 3 The RuQAR Framework ◮ Features ◮ Architecture and Implementation 4 Evaluation 5 Conclusions and Future Work Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 2 / 20

slide-10
SLIDE 10

What is RuQAR?

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 3 / 20

slide-11
SLIDE 11

What is RuQAR?

Rule-based Query Answering and Reasoning framework

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 3 / 20

slide-12
SLIDE 12

What is RuQAR?

Rule-based Query Answering and Reasoning framework Supports ABox reasoning and query answering with OWL 2 RL

  • ntologies executed by the forward chaining rule reasoners Jess and

Drools

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 3 / 20

slide-13
SLIDE 13

What is RuQAR?

Rule-based Query Answering and Reasoning framework Supports ABox reasoning and query answering with OWL 2 RL

  • ntologies executed by the forward chaining rule reasoners Jess and

Drools The main goal of this tool is to provide efficient ABox reasoning as well as query answering within OWL 2 RL profile

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 3 / 20

slide-14
SLIDE 14

Motivation

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 4 / 20

slide-15
SLIDE 15

Motivation

We like rules :)

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 4 / 20

slide-16
SLIDE 16

Motivation

We like rules :) OWL 2 RL reasoners are known to perform poorly with large ABoxes

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 4 / 20

slide-17
SLIDE 17

Motivation

We like rules :) OWL 2 RL reasoners are known to perform poorly with large ABoxes Description logic-based reasoners handle the TBox entailments better than the ABox ones

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 4 / 20

slide-18
SLIDE 18

Motivation

We like rules :) OWL 2 RL reasoners are known to perform poorly with large ABoxes Description logic-based reasoners handle the TBox entailments better than the ABox ones ABox reasoning can be performed more efficiently by a rule engine

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 4 / 20

slide-19
SLIDE 19

Motivation

We like rules :) OWL 2 RL reasoners are known to perform poorly with large ABoxes Description logic-based reasoners handle the TBox entailments better than the ABox ones ABox reasoning can be performed more efficiently by a rule engine The official list of OWL 2 reasoners supporting OWL 2 RL is limited

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 4 / 20

slide-20
SLIDE 20

Motivation

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 5 / 20

slide-21
SLIDE 21

Motivation

An application of an OWL 2 RL reasoner together with a currently being used forward reasoning engine can be a tricky task

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 5 / 20

slide-22
SLIDE 22

Motivation

An application of an OWL 2 RL reasoner together with a currently being used forward reasoning engine can be a tricky task Lack of tools that can generate rules for different reasoning engines

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 5 / 20

slide-23
SLIDE 23

Motivation

An application of an OWL 2 RL reasoner together with a currently being used forward reasoning engine can be a tricky task Lack of tools that can generate rules for different reasoning engines Usually, reasoning engines require data to be stored in the main memory

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 5 / 20

slide-24
SLIDE 24

Motivation

An application of an OWL 2 RL reasoner together with a currently being used forward reasoning engine can be a tricky task Lack of tools that can generate rules for different reasoning engines Usually, reasoning engines require data to be stored in the main memory Lack of native and efficient rule sets that support OWL 2 RL reasoning in many popular rule engines, especially considering ABox reasoning

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 5 / 20

slide-25
SLIDE 25

Motivation

An application of an OWL 2 RL reasoner together with a currently being used forward reasoning engine can be a tricky task Lack of tools that can generate rules for different reasoning engines Usually, reasoning engines require data to be stored in the main memory Lack of native and efficient rule sets that support OWL 2 RL reasoning in many popular rule engines, especially considering ABox reasoning We really like rules ;)

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 5 / 20

slide-26
SLIDE 26

RuQAR’s Features

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 6 / 20

slide-27
SLIDE 27

RuQAR’s Features

We aim at providing an easy-to-use framework for performing ABox reasoning with OWL 2 RL ontologies in any forward chaining rule engine which such that it can be used in many rule-based applications

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 6 / 20

slide-28
SLIDE 28

RuQAR’s Features

We aim at providing an easy-to-use framework for performing ABox reasoning with OWL 2 RL ontologies in any forward chaining rule engine which such that it can be used in many rule-based applications An ontology needs to be transformed into rules that are readable by a chosen engine

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 6 / 20

slide-29
SLIDE 29

RuQAR’s Features – ASRF

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 7 / 20

slide-30
SLIDE 30

RuQAR’s Features – ASRF

The Abstract Syntax of Rules and Facts (ASRF) which is used to rise an abstraction level providing more universal representation of rules and facts

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 7 / 20

slide-31
SLIDE 31

RuQAR’s Features – ASRF

The Abstract Syntax of Rules and Facts (ASRF) which is used to rise an abstraction level providing more universal representation of rules and facts ASRF enables easy translation into the language of any rule engine

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 7 / 20

slide-32
SLIDE 32

RuQAR’s Features – ASRF

The Abstract Syntax of Rules and Facts (ASRF) which is used to rise an abstraction level providing more universal representation of rules and facts ASRF enables easy translation into the language of any rule engine An implementation of mappings between ASRF and the language of the engine is required

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 7 / 20

slide-33
SLIDE 33

RuQAR’s Features – ASRF Example

Rule ClassHierarchyRule 1 LUBM If (Triple (Subject ?x) (Predicate "http://www.w3.org/1999/02/22-rdf-syntax-ns#type") (Object "http://swat.cse.lehigh.edu/onto/univ-bench.owl#ResearchAssistant")) Then (Triple (Subject ?x) (Predicate "http://www.w3.org/1999/02/22-rdf-syntax-ns#type") (Object "http://swat.cse.lehigh.edu/onto/univ-bench.owl#Person")) End

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 8 / 20

slide-34
SLIDE 34

RuQAR’s Features – ASRF Example

Rule ClassHierarchyRule 1 LUBM If (Triple (Subject ?x) (Predicate "http://www.w3.org/1999/02/22-rdf-syntax-ns#type") (Object "http://swat.cse.lehigh.edu/onto/univ-bench.owl#ResearchAssistant")) Then (Triple (Subject ?x) (Predicate "http://www.w3.org/1999/02/22-rdf-syntax-ns#type") (Object "http://swat.cse.lehigh.edu/onto/univ-bench.owl#Person")) End (Triple (Subject "http://www.Department6.University0.edu/GraduateStudent22") (Predicate "http://www.w3.org/1999/02/22-rdf-syntax-ns#type") (Object "http://swat.cse.lehigh.edu/onto/univ-bench.owl#ResearchAssistant")) (Triple (Subject "http://www.Department6.University0.edu/GraduateStudent22") (Predicate "http://www.w3.org/1999/02/22-rdf-syntax-ns#type") (Object "http://swat.cse.lehigh.edu/onto/univ-bench.owl#Person"))

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 8 / 20

slide-35
SLIDE 35

RuQAR’s Features – Transformation Schema

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 9 / 20

slide-36
SLIDE 36

RuQAR’s Features – Transformation Schema

We transform an OWL 2 ontology into a set of rules and a set of facts expressed in ASRF

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 9 / 20

slide-37
SLIDE 37

RuQAR’s Features – Transformation Schema

We transform an OWL 2 ontology into a set of rules and a set of facts expressed in ASRF

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 9 / 20

slide-38
SLIDE 38

RuQAR’s Features – Transformation Schema

We transform an OWL 2 ontology into a set of rules and a set of facts expressed in ASRF

OWL 2 Ontology OWL 2 Ontology HermiT TBox Reasoning Inferred Written in ASRF Ontology Transformation OWL 2 Ontology

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 9 / 20

slide-39
SLIDE 39

RuQAR’s Features – Transformation Schema

Table: Currently supported OWL 2 RL entailment rules.

OWL 2 RL Specification Table Supported Rules Table 4. eq-sym, eq-trans, The Semantics of Equality eq-rep-p eq-rep-s, eq-rep-o Table 5. prp-dom, prp-rng, The Semantics of Axioms prp-fp, prp-ifp, about Properties prp-symp, prp-trp, prp-eqp1, prp-spo1, prp-eqp2, prp-inv1, prp-inv2 Table 6. cls-int1, cls-int2, The Semantics of Classes cls-uni, cls-svf1, cls-svf2, cls-avf, cls-hv1, cls-hv2, cls-maxc2 Table 7. cax-sco, cax-eqc1, The Semantic of Class Axioms cax-eqc2

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 10 / 20

slide-40
SLIDE 40

RuQAR’s Features – Jess, Drools, SWRL

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 11 / 20

slide-41
SLIDE 41

RuQAR’s Features – Jess, Drools, SWRL

ASRF sets can be translated into Drools and Jess languages

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 11 / 20

slide-42
SLIDE 42

RuQAR’s Features – Jess, Drools, SWRL

ASRF sets can be translated into Drools and Jess languages Semantic Web Rule Language is also supported

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 11 / 20

slide-43
SLIDE 43

RuQAR’s Features – Jess, Drools, SWRL

ASRF sets can be translated into Drools and Jess languages Semantic Web Rule Language is also supported RuQAR checks whether a rule is safe or not

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 11 / 20

slide-44
SLIDE 44

RuQAR’s Features – Database Mapping

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 12 / 20

slide-45
SLIDE 45

RuQAR’s Features – Database Mapping

Mapping method between an ontology and a relational database (R2RML is an ongoing work)

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 12 / 20

slide-46
SLIDE 46

RuQAR’s Features – Database Mapping

Mapping method between an ontology and a relational database (R2RML is an ongoing work) Query answering functions

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 12 / 20

slide-47
SLIDE 47

RuQAR’s Features – Database Mapping

Mapping method between an ontology and a relational database (R2RML is an ongoing work) Query answering functions Storing ABox in a relational database using simple mappings

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 12 / 20

slide-48
SLIDE 48

RuQAR’s Features – Database Mapping

SELECT Col1 FROM ∗ WHERE (Col1 is not NULL); SELECT Col1, Col2 FROM ∗ WHERE ((Col1 is not NULL) AND (Col2 is not NULL)); SELECT Col1, Col2, Col3 FROM ∗ WHERE ((Col1 is not NULL) AND (Col2 is not NULL)) AND (Col3 is not NULL)); where: – COlx are the attributes (columns) that occur in the result of a query, – ∗ is an SQL statement; it can contain SQL commands - e.g. nested Select query or a table name, – (COLx is not NULL) means NULL results are not allowed.

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 13 / 20

slide-49
SLIDE 49

RuQAR’s Architecture and Implementation

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 14 / 20

slide-50
SLIDE 50

RuQAR’s Architecture and Implementation

OWL-API RulesInto Mapping

Transformations Reasoning

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 14 / 20

slide-51
SLIDE 51

Evaluation

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 15 / 20

slide-52
SLIDE 52

Evaluation

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 16 / 20

slide-53
SLIDE 53

Evaluation

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 17 / 20

slide-54
SLIDE 54

Conclusions

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 18 / 20

slide-55
SLIDE 55

Conclusions

RuQAR is a tool that:

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 18 / 20

slide-56
SLIDE 56

Conclusions

RuQAR is a tool that: performs ABox reasoning and query answering with OWL 2 RL

  • ntologies executed by forward chaining rule reasoners

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 18 / 20

slide-57
SLIDE 57

Conclusions

RuQAR is a tool that: performs ABox reasoning and query answering with OWL 2 RL

  • ntologies executed by forward chaining rule reasoners

translates an OWL 2 ontology into rules

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 18 / 20

slide-58
SLIDE 58

Conclusions

RuQAR is a tool that: performs ABox reasoning and query answering with OWL 2 RL

  • ntologies executed by forward chaining rule reasoners

translates an OWL 2 ontology into rules allows for using SWRL rules together with ontologies

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 18 / 20

slide-59
SLIDE 59

Conclusions

RuQAR is a tool that: performs ABox reasoning and query answering with OWL 2 RL

  • ntologies executed by forward chaining rule reasoners

translates an OWL 2 ontology into rules allows for using SWRL rules together with ontologies provides functions to manage reasoning engines

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 18 / 20

slide-60
SLIDE 60

Conclusions

RuQAR is a tool that: performs ABox reasoning and query answering with OWL 2 RL

  • ntologies executed by forward chaining rule reasoners

translates an OWL 2 ontology into rules allows for using SWRL rules together with ontologies provides functions to manage reasoning engines can store OWL individuals in a relational database

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 18 / 20

slide-61
SLIDE 61

Conclusions

RuQAR is a tool that: performs ABox reasoning and query answering with OWL 2 RL

  • ntologies executed by forward chaining rule reasoners

translates an OWL 2 ontology into rules allows for using SWRL rules together with ontologies provides functions to manage reasoning engines can store OWL individuals in a relational database is the first implementation of the OWL 2 RL reasoning in Drools and Jess that implements directly the semantics of OWL 2 RL which can be applied in any application requiring efficient ABox reasoning

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 18 / 20

slide-62
SLIDE 62

...and Future Work

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 19 / 20

slide-63
SLIDE 63

...and Future Work

We plan to:

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 19 / 20

slide-64
SLIDE 64

...and Future Work

We plan to: develop an interface that is based on the R2RML specification

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 19 / 20

slide-65
SLIDE 65

...and Future Work

We plan to: develop an interface that is based on the R2RML specification include more optimizations in query answering as well as reasoning

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 19 / 20

slide-66
SLIDE 66

...and Future Work

We plan to: develop an interface that is based on the R2RML specification include more optimizations in query answering as well as reasoning provide queries execution with graphical answers

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 19 / 20

slide-67
SLIDE 67

...and Future Work

We plan to: develop an interface that is based on the R2RML specification include more optimizations in query answering as well as reasoning provide queries execution with graphical answers use the NPD Benchmark for an evaluation

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 19 / 20

slide-68
SLIDE 68

Thank you for listening!

More information available at: http://etacar.put.poznan.pl/jaroslaw.bak/RuQAR.php Questions?

Jaroslaw Bak (PUT) RuQAR Framework June 6th, 2015 20 / 20