SlideShare a Scribd company logo
1 of 21
Download to read offline
OWL2 RL (OWLIM)
Zaenal Akbar
April 10, 2014
Copyright 2014 STI INNSBRUCK www.sti-innsbruck.at
Outline
OWL2 RL
OWLIM
The Weaver
Rule Based System
RDF Reasoner
References
www.sti-innsbruck.at 2/21
OWL - Web Ontology Language
OWL is a semantic fragment of FOL 1
OWL exists in different flavors
OWL Lite ⊆ OWL DL ⊆ OWL Full
OWL2 EL, OWL2 RL, OWL2 QL ⊆ OWL2 DL ⊆ OWL2 Full
OWL 2 is a very expressive language, hard to implement
and work with
OWL 2 specifies profiles/fragments/sub-languages →
trades some expressive power for the efficiency of
reasoning
OWL 2 RL:
Designed to be amenable to implementation using
rule-based technologies
Presenting a partial axiomatization of the OWL 2
RDF-Based Semantics
1
H. Sack, Semantic Web Technologies - OWL 2, 2012,
http://www.slideshare.net/lysander07/10-semantic-web-technologies-owl-2
www.sti-innsbruck.at 3/21
OWLIM
OWLIM is a high-performance semantic repository
Implemented in Java and packaged as a Storage and
Inference Layer (SAIL) for the Sesame RDF database [2]
www.sti-innsbruck.at 4/21
OWLIM
Implemented on top of the TRREE (Triple Reasoning and
Rule Entailment Engine)
Performs reasoning based on forward-chaining of
entailment rules over RDF triple patterns with variables
R-Entailment 2
Premises and conclusions are triple patterns
Variables allowed in any position
Inequality constraints
Rules applied directly to RDF graph
2
B. Bishop, S. Bojanov, Implementing OWL 2 RL and OWL 2 QL rule-sets for OWLIM, 2011
www.sti-innsbruck.at 5/21
OWLIM - Semantics
OWLIM offers several predefined semantics by way of
standard rule-sets
1. empty: no reasoning, i.e. operates as a plain RDF store
2. rdfs: supports standard RDFS semantics
3. owl-horst: OWL dialect close to OWL Horst
4. owl-max: a combination of most of OWL-Lite with RDFS
5. owl2-ql: Conformant OWL2 QL profile
6. owl2-rl: Fully conformant OWL2 RL profile, except for
D-Entailment
Can be configured to use custom rule sets with semantics
better tuned to the particular domain
www.sti-innsbruck.at 6/21
OWLIM - Reasoner (1)
Prefices {
rdfs : http://www.w3.org/2000/01/rdf-schema#
}
Axioms {
<rdf:type> <rdf:type> <rdf:Property>
<rdf:subject> <rdf:type> <rdf:Property>
}
Rules {
Id: <rule_name>
<premises> <optional_constraints>
-------------------------------
<consequences> <optional_constraints>
}
www.sti-innsbruck.at 7/21
OWLIM - Reasoner (2)
Id: prp_trp
p <rdf:type> <owl:TransitiveProperty>
x p y
y p z
-------------------------------
x p z
Id: prp_key_1
c <owl:hasKey> u
x <rdf:type> c [Constraint x != y]
y <rdf:type> c [Cut]
x u y [Context <onto:_sameKey>]
-------------------------------
x <owl:sameAs> y
www.sti-innsbruck.at 8/21
The Weaver
Bottleneck: serialization/deserialization
How to bring the reasoner closer to the data?
www.sti-innsbruck.at 9/21
RDF Model (1)
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf:
<http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix schema: <http://schema.org/> .
@prefix oc: <http://sti2.at/oc/> .
www.sti-innsbruck.at 10/21
RDF Model (2)
schema:Event a rdfs:Class;
rdfs:label "Event"@en;
rdfs:subClassOf schema:Thing;
rdfs:isDefinedBy <http://schema.org/Event> .
schema:description a rdf:Property; ...
schema:name a rdf:Property; ...
schema:startDate a rdf:Property; ...
schema:endDate a rdf:Property; ...
schema:location a rdf:Property;
rdfs:domain [ ... owl:unionOf(schema:Event ...) ];
rdfs:range [ ... owl:unionOf(schema:Place ...) ];
schema:Place a rdfs:Class; ...
www.sti-innsbruck.at 11/21
RDF Model (3)
oc:Channel a rdfs:Class;
rdfs:label "Channel"@en;
rdfs:isDefinedBy <http://sti2.at/oc/Channel> .
oc:Twitter a rdfs:Class;
rdfs:label "Channel Twitter"@en;
rdfs:subClassOf oc:Channel;
rdfs:isDefinedBy <http://sti2.at/oc/Twitter> .
oc:Blog a rdfs:Class;
rdfs:label "Channel Blog"@en;
rdfs:subClassOf oc:Channel;
rdfs:isDefinedBy <http://sti2.at/oc/Blog> .
www.sti-innsbruck.at 12/21
RDF Model (4)
oc:publish a rdf:Property;
rdfs:label "Publish"@en;
rdfs:comment "Publish a Content to a Channel."@en;
rdfs:domain [ a owl:Class;
owl:unionOf (schema:Event schema:BlogPosting) ];
rdfs:range [ a owl:Class;
owl:unionOf (oc:Twitter oc:Blog) ];
rdfs:isDefinedBy <http://schema.org/Event>;
rdfs:isDefinedBy <http://schema.org/BlogPosting>;
.
www.sti-innsbruck.at 13/21
Rules (1)
Prefices {
schema : http://schema.org/
oc : http://sti2.at/oc/
}
Axioms {
...
<schema:Event> <rdf:type> <rdfs:Class>
<schema:Event> <rdfs:subClassOf> <rdfs:Resource>
<oc:Twitter> <rdf:type> <rdfs:Class>
<oc:Twitter> <rdfs:subClassOf> <rdfs:Resource>
...
<oc:publish> <rdf:type> <rdf:Property>
<oc:publish> <rdfs:domain> <rdfs:Class>
<oc:publish> <rdfs:range> <rdfs:Class>
}
www.sti-innsbruck.at 14/21
Rules (2)
Rules
{
Id: pub_event
x <rdf:type> <schema:Event>
-------------------------------
x <oc:publish> <oc:Twitter>
x <oc:publish> <oc:Blog>
Id: pub_post
x <rdf:type> <schema:BlogPosting>
-------------------------------
x <oc:publish> <oc:Blog>
...
}
www.sti-innsbruck.at 15/21
Instances (1)
oc:3W04 a schema:Place ;
schema:description "Room 3W04" .
oc:M1 a schema:Event ;
schema:name "OC Meeting" ;
schema:location oc:3W04 ;
schema:startDate "2014-04-09T14:30" ;
schema:endDate "2014-04-09T15:30" .
Test> sparql prefix oc:...
insert data { oc:M1 a schema:Event; ... }.
Executing update...
Update executed in 431 ms
www.sti-innsbruck.at 16/21
Instances (2)
Test> sparql
select * where {?s <http://sti2.at/oc/publish> ?o}.
Evaluating query...
+-------------------------+---------------------------+
| s | o |
+-------------------------+---------------------------+
| oc:M1 | oc:Twitter |
| oc:M1 | oc:Blog |
+-------------------------+---------------------------+
2 result(s) (43 ms)
Test>
www.sti-innsbruck.at 17/21
Comparison (1)
OWLIM’s Custom Rule-Sets:
Specify the custom rule-set manually via the configuration
parameter (-Druleset=/opt/owlim-se-5.3/oc.pie)
The rule-set file is processed to create Java source code,
then compiled using JDK, used by TRREE during inference
$ tail -f logs/catalina.out
OwlimSchemaRepository: version: 5.3, revision: 6156
Product: OWLIM_SE
Licensee: STI_PlanetData
...
Current file: /opt/owlim-se-5.3/oc.pie
Compiled: ’/opt/owlim-se-5.3/oc.pie’
www.sti-innsbruck.at 18/21
Comparison (2)
OWLIM’s Reasoner:
⊕ Compact (no more objects instantiation), Centralized (no
more scattered servers)
Less flexible to maintain the Rules
Rules filtering still questionable
IF (event.location == "Innsbruck") THEN ...
Drools (+Guvnor) Rules Engine:
⊕ More flexible on Rules editing, i.e. GUI, DSL, filtering
⊕ KB sessions can be created/destroyed dynamically
Complex, requires objects instantiation
www.sti-innsbruck.at 19/21
Summary
OWLIM can simplify the complexity of the Weaver, and
more than enough for the most use cases
Should we use OWLIM’s Reasoner instead?
www.sti-innsbruck.at 20/21
References
1. OWLIM, http://owlim.ontotext.com
2. OpenRDF Sesame, http://www.openrdf.org
3. OWL 2 Primer, http://www.w3.org/TR/owl2-primer/
4. OWL 2 Profiles, http://www.w3.org/TR/owl2-profiles/
5. Schema.org, http://schema.org/
6. Drools, http://www.jboss.org/drools/
www.sti-innsbruck.at 21/21

More Related Content

What's hot

Introduction to Structured Streaming | Big Data Hadoop Spark Tutorial | Cloud...
Introduction to Structured Streaming | Big Data Hadoop Spark Tutorial | Cloud...Introduction to Structured Streaming | Big Data Hadoop Spark Tutorial | Cloud...
Introduction to Structured Streaming | Big Data Hadoop Spark Tutorial | Cloud...CloudxLab
 
Friends of Solr - Nutch & HDFS
Friends of Solr - Nutch & HDFSFriends of Solr - Nutch & HDFS
Friends of Solr - Nutch & HDFSSaumitra Srivastav
 
Large Scale Log Analytics with Solr: Presented by Rafał Kuć & Radu Gheorghe, ...
Large Scale Log Analytics with Solr: Presented by Rafał Kuć & Radu Gheorghe, ...Large Scale Log Analytics with Solr: Presented by Rafał Kuć & Radu Gheorghe, ...
Large Scale Log Analytics with Solr: Presented by Rafał Kuć & Radu Gheorghe, ...Lucidworks
 
Tuning Solr and its Pipeline for Logs: Presented by Rafał Kuć & Radu Gheorghe...
Tuning Solr and its Pipeline for Logs: Presented by Rafał Kuć & Radu Gheorghe...Tuning Solr and its Pipeline for Logs: Presented by Rafał Kuć & Radu Gheorghe...
Tuning Solr and its Pipeline for Logs: Presented by Rafał Kuć & Radu Gheorghe...Lucidworks
 
oracle 11G RAC Trianing Noida Delhi NCR
oracle 11G RAC Trianing Noida Delhi NCRoracle 11G RAC Trianing Noida Delhi NCR
oracle 11G RAC Trianing Noida Delhi NCRShri Prakash Pandey
 
Introduction to SparkR | Big Data Hadoop Spark Tutorial | CloudxLab
Introduction to SparkR | Big Data Hadoop Spark Tutorial | CloudxLabIntroduction to SparkR | Big Data Hadoop Spark Tutorial | CloudxLab
Introduction to SparkR | Big Data Hadoop Spark Tutorial | CloudxLabCloudxLab
 
Oracle goldengate 11g schema replication from standby database
Oracle goldengate 11g schema replication from standby databaseOracle goldengate 11g schema replication from standby database
Oracle goldengate 11g schema replication from standby databaseuzzal basak
 
Data analysis scala_spark
Data analysis scala_sparkData analysis scala_spark
Data analysis scala_sparkYiguang Hu
 
Search-time Parallelism: Presented by Shikhar Bhushan, Etsy
Search-time Parallelism: Presented by Shikhar Bhushan, EtsySearch-time Parallelism: Presented by Shikhar Bhushan, Etsy
Search-time Parallelism: Presented by Shikhar Bhushan, EtsyLucidworks
 
Tuning Elasticsearch Indexing Pipeline for Logs
Tuning Elasticsearch Indexing Pipeline for LogsTuning Elasticsearch Indexing Pipeline for Logs
Tuning Elasticsearch Indexing Pipeline for LogsSematext Group, Inc.
 
Automate your automation with Rudder’s API! \o/
Automate your automation with Rudder’s API! \o/Automate your automation with Rudder’s API! \o/
Automate your automation with Rudder’s API! \o/RUDDER
 
Introduction to Spark Internals
Introduction to Spark InternalsIntroduction to Spark Internals
Introduction to Spark InternalsPietro Michiardi
 
Oracle Clusterware and Private Network Considerations - Practical Performance...
Oracle Clusterware and Private Network Considerations - Practical Performance...Oracle Clusterware and Private Network Considerations - Practical Performance...
Oracle Clusterware and Private Network Considerations - Practical Performance...Guenadi JILEVSKI
 
Hippo meetup: enterprise search with Solr and elasticsearch
Hippo meetup: enterprise search with Solr and elasticsearchHippo meetup: enterprise search with Solr and elasticsearch
Hippo meetup: enterprise search with Solr and elasticsearchLuca Cavanna
 
Using OVSDB and OpenFlow southbound plugins
Using OVSDB and OpenFlow southbound pluginsUsing OVSDB and OpenFlow southbound plugins
Using OVSDB and OpenFlow southbound pluginsOpenDaylight
 
Apache Spark - Basics of RDD | Big Data Hadoop Spark Tutorial | CloudxLab
Apache Spark - Basics of RDD | Big Data Hadoop Spark Tutorial | CloudxLabApache Spark - Basics of RDD | Big Data Hadoop Spark Tutorial | CloudxLab
Apache Spark - Basics of RDD | Big Data Hadoop Spark Tutorial | CloudxLabCloudxLab
 

What's hot (20)

Introduction to Structured Streaming | Big Data Hadoop Spark Tutorial | Cloud...
Introduction to Structured Streaming | Big Data Hadoop Spark Tutorial | Cloud...Introduction to Structured Streaming | Big Data Hadoop Spark Tutorial | Cloud...
Introduction to Structured Streaming | Big Data Hadoop Spark Tutorial | Cloud...
 
Friends of Solr - Nutch & HDFS
Friends of Solr - Nutch & HDFSFriends of Solr - Nutch & HDFS
Friends of Solr - Nutch & HDFS
 
Large Scale Log Analytics with Solr: Presented by Rafał Kuć & Radu Gheorghe, ...
Large Scale Log Analytics with Solr: Presented by Rafał Kuć & Radu Gheorghe, ...Large Scale Log Analytics with Solr: Presented by Rafał Kuć & Radu Gheorghe, ...
Large Scale Log Analytics with Solr: Presented by Rafał Kuć & Radu Gheorghe, ...
 
Tuning Solr and its Pipeline for Logs: Presented by Rafał Kuć & Radu Gheorghe...
Tuning Solr and its Pipeline for Logs: Presented by Rafał Kuć & Radu Gheorghe...Tuning Solr and its Pipeline for Logs: Presented by Rafał Kuć & Radu Gheorghe...
Tuning Solr and its Pipeline for Logs: Presented by Rafał Kuć & Radu Gheorghe...
 
oracle 11G RAC Trianing Noida Delhi NCR
oracle 11G RAC Trianing Noida Delhi NCRoracle 11G RAC Trianing Noida Delhi NCR
oracle 11G RAC Trianing Noida Delhi NCR
 
Introduction to SparkR | Big Data Hadoop Spark Tutorial | CloudxLab
Introduction to SparkR | Big Data Hadoop Spark Tutorial | CloudxLabIntroduction to SparkR | Big Data Hadoop Spark Tutorial | CloudxLab
Introduction to SparkR | Big Data Hadoop Spark Tutorial | CloudxLab
 
Oracle Golden Gate
Oracle Golden GateOracle Golden Gate
Oracle Golden Gate
 
Apache Spark with Scala
Apache Spark with ScalaApache Spark with Scala
Apache Spark with Scala
 
Oracle goldengate 11g schema replication from standby database
Oracle goldengate 11g schema replication from standby databaseOracle goldengate 11g schema replication from standby database
Oracle goldengate 11g schema replication from standby database
 
Data analysis scala_spark
Data analysis scala_sparkData analysis scala_spark
Data analysis scala_spark
 
Presto overview
Presto overviewPresto overview
Presto overview
 
Search-time Parallelism: Presented by Shikhar Bhushan, Etsy
Search-time Parallelism: Presented by Shikhar Bhushan, EtsySearch-time Parallelism: Presented by Shikhar Bhushan, Etsy
Search-time Parallelism: Presented by Shikhar Bhushan, Etsy
 
Tuning Elasticsearch Indexing Pipeline for Logs
Tuning Elasticsearch Indexing Pipeline for LogsTuning Elasticsearch Indexing Pipeline for Logs
Tuning Elasticsearch Indexing Pipeline for Logs
 
Automate your automation with Rudder’s API! \o/
Automate your automation with Rudder’s API! \o/Automate your automation with Rudder’s API! \o/
Automate your automation with Rudder’s API! \o/
 
Introduction to Spark Internals
Introduction to Spark InternalsIntroduction to Spark Internals
Introduction to Spark Internals
 
Apache spark basics
Apache spark basicsApache spark basics
Apache spark basics
 
Oracle Clusterware and Private Network Considerations - Practical Performance...
Oracle Clusterware and Private Network Considerations - Practical Performance...Oracle Clusterware and Private Network Considerations - Practical Performance...
Oracle Clusterware and Private Network Considerations - Practical Performance...
 
Hippo meetup: enterprise search with Solr and elasticsearch
Hippo meetup: enterprise search with Solr and elasticsearchHippo meetup: enterprise search with Solr and elasticsearch
Hippo meetup: enterprise search with Solr and elasticsearch
 
Using OVSDB and OpenFlow southbound plugins
Using OVSDB and OpenFlow southbound pluginsUsing OVSDB and OpenFlow southbound plugins
Using OVSDB and OpenFlow southbound plugins
 
Apache Spark - Basics of RDD | Big Data Hadoop Spark Tutorial | CloudxLab
Apache Spark - Basics of RDD | Big Data Hadoop Spark Tutorial | CloudxLabApache Spark - Basics of RDD | Big Data Hadoop Spark Tutorial | CloudxLab
Apache Spark - Basics of RDD | Big Data Hadoop Spark Tutorial | CloudxLab
 

Similar to Owl2 rl

A hands on overview of the semantic web
A hands on overview of the semantic webA hands on overview of the semantic web
A hands on overview of the semantic webMarakana Inc.
 
A Hands On Overview Of The Semantic Web
A Hands On Overview Of The Semantic WebA Hands On Overview Of The Semantic Web
A Hands On Overview Of The Semantic WebShamod Lacoul
 
20th Feb 2020 json-ld-rdf-im-proposal.pdf
20th Feb 2020 json-ld-rdf-im-proposal.pdf20th Feb 2020 json-ld-rdf-im-proposal.pdf
20th Feb 2020 json-ld-rdf-im-proposal.pdfMichal Miklas
 
Triplificating and linking XBRL financial data
Triplificating and linking XBRL financial dataTriplificating and linking XBRL financial data
Triplificating and linking XBRL financial dataRoberto García
 
The Semantic Web #9 - Web Ontology Language (OWL)
The Semantic Web #9 - Web Ontology Language (OWL)The Semantic Web #9 - Web Ontology Language (OWL)
The Semantic Web #9 - Web Ontology Language (OWL)Myungjin Lee
 
Web ontology language (owl)
Web ontology language (owl)Web ontology language (owl)
Web ontology language (owl)Ameer Sameer
 
SWRL2SPIN: Converting SWRL to SPIN
SWRL2SPIN: Converting SWRL to SPINSWRL2SPIN: Converting SWRL to SPIN
SWRL2SPIN: Converting SWRL to SPINNick Bassiliades
 
Programming the Semantic Web
Programming the Semantic WebProgramming the Semantic Web
Programming the Semantic WebLuigi De Russis
 
SPARQL 1.1 Update (2013-03-05)
SPARQL 1.1 Update (2013-03-05)SPARQL 1.1 Update (2013-03-05)
SPARQL 1.1 Update (2013-03-05)andyseaborne
 
New PLSQL in Oracle Database 12c
New PLSQL in Oracle Database 12cNew PLSQL in Oracle Database 12c
New PLSQL in Oracle Database 12cConnor McDonald
 
SAOUG - Connect 2014 - Flex Cluster and Flex ASM
SAOUG - Connect 2014 - Flex Cluster and Flex ASMSAOUG - Connect 2014 - Flex Cluster and Flex ASM
SAOUG - Connect 2014 - Flex Cluster and Flex ASMAlex Zaballa
 
The Semantic Web #5 - RDF (2)
The Semantic Web #5 - RDF (2)The Semantic Web #5 - RDF (2)
The Semantic Web #5 - RDF (2)Myungjin Lee
 

Similar to Owl2 rl (20)

A hands on overview of the semantic web
A hands on overview of the semantic webA hands on overview of the semantic web
A hands on overview of the semantic web
 
A Hands On Overview Of The Semantic Web
A Hands On Overview Of The Semantic WebA Hands On Overview Of The Semantic Web
A Hands On Overview Of The Semantic Web
 
eswc2011phd-schneid
eswc2011phd-schneideswc2011phd-schneid
eswc2011phd-schneid
 
20th Feb 2020 json-ld-rdf-im-proposal.pdf
20th Feb 2020 json-ld-rdf-im-proposal.pdf20th Feb 2020 json-ld-rdf-im-proposal.pdf
20th Feb 2020 json-ld-rdf-im-proposal.pdf
 
eureka09
eureka09eureka09
eureka09
 
eureka09
eureka09eureka09
eureka09
 
Triplificating and linking XBRL financial data
Triplificating and linking XBRL financial dataTriplificating and linking XBRL financial data
Triplificating and linking XBRL financial data
 
Data in RDF
Data in RDFData in RDF
Data in RDF
 
The Semantic Web #9 - Web Ontology Language (OWL)
The Semantic Web #9 - Web Ontology Language (OWL)The Semantic Web #9 - Web Ontology Language (OWL)
The Semantic Web #9 - Web Ontology Language (OWL)
 
Web ontology language (owl)
Web ontology language (owl)Web ontology language (owl)
Web ontology language (owl)
 
SWRL2SPIN: Converting SWRL to SPIN
SWRL2SPIN: Converting SWRL to SPINSWRL2SPIN: Converting SWRL to SPIN
SWRL2SPIN: Converting SWRL to SPIN
 
Programming the Semantic Web
Programming the Semantic WebProgramming the Semantic Web
Programming the Semantic Web
 
SPARQL 1.1 Update (2013-03-05)
SPARQL 1.1 Update (2013-03-05)SPARQL 1.1 Update (2013-03-05)
SPARQL 1.1 Update (2013-03-05)
 
New PLSQL in Oracle Database 12c
New PLSQL in Oracle Database 12cNew PLSQL in Oracle Database 12c
New PLSQL in Oracle Database 12c
 
LOD2: State of Play WP6 - LOD2 Stack Architecture
LOD2: State of Play WP6 - LOD2 Stack ArchitectureLOD2: State of Play WP6 - LOD2 Stack Architecture
LOD2: State of Play WP6 - LOD2 Stack Architecture
 
Semantic Web - RDF
Semantic Web - RDFSemantic Web - RDF
Semantic Web - RDF
 
Nzitf Velociraptor Workshop
Nzitf Velociraptor WorkshopNzitf Velociraptor Workshop
Nzitf Velociraptor Workshop
 
Technical Background
Technical BackgroundTechnical Background
Technical Background
 
SAOUG - Connect 2014 - Flex Cluster and Flex ASM
SAOUG - Connect 2014 - Flex Cluster and Flex ASMSAOUG - Connect 2014 - Flex Cluster and Flex ASM
SAOUG - Connect 2014 - Flex Cluster and Flex ASM
 
The Semantic Web #5 - RDF (2)
The Semantic Web #5 - RDF (2)The Semantic Web #5 - RDF (2)
The Semantic Web #5 - RDF (2)
 

More from STIinnsbruck

More from STIinnsbruck (20)

Unister
UnisterUnister
Unister
 
Twoo
TwooTwoo
Twoo
 
Twibes
TwibesTwibes
Twibes
 
Tweet deck 2012-01-02
Tweet deck 2012-01-02Tweet deck 2012-01-02
Tweet deck 2012-01-02
 
Tv handbook revised_100120141
Tv handbook revised_100120141Tv handbook revised_100120141
Tv handbook revised_100120141
 
Tv feratel 13032014
Tv feratel 13032014Tv feratel 13032014
Tv feratel 13032014
 
Tv evaluation 12032014
Tv evaluation 12032014Tv evaluation 12032014
Tv evaluation 12032014
 
T vb publication_rules_11032014
T vb publication_rules_11032014T vb publication_rules_11032014
T vb publication_rules_11032014
 
T vb mapping_implementation_25032014
T vb mapping_implementation_25032014T vb mapping_implementation_25032014
T vb mapping_implementation_25032014
 
T vb alignment_022814_0
T vb alignment_022814_0T vb alignment_022814_0
T vb alignment_022814_0
 
Ttr 20130701
Ttr 20130701Ttr 20130701
Ttr 20130701
 
Ttg mapping to_schema.org_
Ttg mapping to_schema.org_Ttg mapping to_schema.org_
Ttg mapping to_schema.org_
 
Ttb 08042014
Ttb 08042014Ttb 08042014
Ttb 08042014
 
Trust you
Trust youTrust you
Trust you
 
Tripwolf
TripwolfTripwolf
Tripwolf
 
Tripbirds
TripbirdsTripbirds
Tripbirds
 
Traveltainment
TraveltainmentTraveltainment
Traveltainment
 
Travelaudience
TravelaudienceTravelaudience
Travelaudience
 
Tourismuszukunft
TourismuszukunftTourismuszukunft
Tourismuszukunft
 
Tourismusverband innsbruck 24.09.2013
Tourismusverband innsbruck 24.09.2013Tourismusverband innsbruck 24.09.2013
Tourismusverband innsbruck 24.09.2013
 

Recently uploaded

SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdf
SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdfSOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdf
SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdfMahamudul Hasan
 
If this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaIf this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaKayode Fayemi
 
Report Writing Webinar Training
Report Writing Webinar TrainingReport Writing Webinar Training
Report Writing Webinar TrainingKylaCullinane
 
Dreaming Music Video Treatment _ Project & Portfolio III
Dreaming Music Video Treatment _ Project & Portfolio IIIDreaming Music Video Treatment _ Project & Portfolio III
Dreaming Music Video Treatment _ Project & Portfolio IIINhPhngng3
 
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...David Celestin
 
Dreaming Marissa Sánchez Music Video Treatment
Dreaming Marissa Sánchez Music Video TreatmentDreaming Marissa Sánchez Music Video Treatment
Dreaming Marissa Sánchez Music Video Treatmentnswingard
 
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptxChiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptxraffaeleoman
 
Uncommon Grace The Autobiography of Isaac Folorunso
Uncommon Grace The Autobiography of Isaac FolorunsoUncommon Grace The Autobiography of Isaac Folorunso
Uncommon Grace The Autobiography of Isaac FolorunsoKayode Fayemi
 
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdfThe workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdfSenaatti-kiinteistöt
 
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdfAWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdfSkillCertProExams
 
Digital collaboration with Microsoft 365 as extension of Drupal
Digital collaboration with Microsoft 365 as extension of DrupalDigital collaboration with Microsoft 365 as extension of Drupal
Digital collaboration with Microsoft 365 as extension of DrupalFabian de Rijk
 
lONG QUESTION ANSWER PAKISTAN STUDIES10.
lONG QUESTION ANSWER PAKISTAN STUDIES10.lONG QUESTION ANSWER PAKISTAN STUDIES10.
lONG QUESTION ANSWER PAKISTAN STUDIES10.lodhisaajjda
 
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...amilabibi1
 
My Presentation "In Your Hands" by Halle Bailey
My Presentation "In Your Hands" by Halle BaileyMy Presentation "In Your Hands" by Halle Bailey
My Presentation "In Your Hands" by Halle Baileyhlharris
 

Recently uploaded (15)

SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdf
SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdfSOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdf
SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdf
 
If this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaIf this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New Nigeria
 
Report Writing Webinar Training
Report Writing Webinar TrainingReport Writing Webinar Training
Report Writing Webinar Training
 
Dreaming Music Video Treatment _ Project & Portfolio III
Dreaming Music Video Treatment _ Project & Portfolio IIIDreaming Music Video Treatment _ Project & Portfolio III
Dreaming Music Video Treatment _ Project & Portfolio III
 
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
 
Dreaming Marissa Sánchez Music Video Treatment
Dreaming Marissa Sánchez Music Video TreatmentDreaming Marissa Sánchez Music Video Treatment
Dreaming Marissa Sánchez Music Video Treatment
 
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptxChiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
 
Uncommon Grace The Autobiography of Isaac Folorunso
Uncommon Grace The Autobiography of Isaac FolorunsoUncommon Grace The Autobiography of Isaac Folorunso
Uncommon Grace The Autobiography of Isaac Folorunso
 
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdfThe workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
 
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdfAWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
 
Digital collaboration with Microsoft 365 as extension of Drupal
Digital collaboration with Microsoft 365 as extension of DrupalDigital collaboration with Microsoft 365 as extension of Drupal
Digital collaboration with Microsoft 365 as extension of Drupal
 
lONG QUESTION ANSWER PAKISTAN STUDIES10.
lONG QUESTION ANSWER PAKISTAN STUDIES10.lONG QUESTION ANSWER PAKISTAN STUDIES10.
lONG QUESTION ANSWER PAKISTAN STUDIES10.
 
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
 
ICT role in 21st century education and it's challenges.pdf
ICT role in 21st century education and it's challenges.pdfICT role in 21st century education and it's challenges.pdf
ICT role in 21st century education and it's challenges.pdf
 
My Presentation "In Your Hands" by Halle Bailey
My Presentation "In Your Hands" by Halle BaileyMy Presentation "In Your Hands" by Halle Bailey
My Presentation "In Your Hands" by Halle Bailey
 

Owl2 rl

  • 1. OWL2 RL (OWLIM) Zaenal Akbar April 10, 2014 Copyright 2014 STI INNSBRUCK www.sti-innsbruck.at
  • 2. Outline OWL2 RL OWLIM The Weaver Rule Based System RDF Reasoner References www.sti-innsbruck.at 2/21
  • 3. OWL - Web Ontology Language OWL is a semantic fragment of FOL 1 OWL exists in different flavors OWL Lite ⊆ OWL DL ⊆ OWL Full OWL2 EL, OWL2 RL, OWL2 QL ⊆ OWL2 DL ⊆ OWL2 Full OWL 2 is a very expressive language, hard to implement and work with OWL 2 specifies profiles/fragments/sub-languages → trades some expressive power for the efficiency of reasoning OWL 2 RL: Designed to be amenable to implementation using rule-based technologies Presenting a partial axiomatization of the OWL 2 RDF-Based Semantics 1 H. Sack, Semantic Web Technologies - OWL 2, 2012, http://www.slideshare.net/lysander07/10-semantic-web-technologies-owl-2 www.sti-innsbruck.at 3/21
  • 4. OWLIM OWLIM is a high-performance semantic repository Implemented in Java and packaged as a Storage and Inference Layer (SAIL) for the Sesame RDF database [2] www.sti-innsbruck.at 4/21
  • 5. OWLIM Implemented on top of the TRREE (Triple Reasoning and Rule Entailment Engine) Performs reasoning based on forward-chaining of entailment rules over RDF triple patterns with variables R-Entailment 2 Premises and conclusions are triple patterns Variables allowed in any position Inequality constraints Rules applied directly to RDF graph 2 B. Bishop, S. Bojanov, Implementing OWL 2 RL and OWL 2 QL rule-sets for OWLIM, 2011 www.sti-innsbruck.at 5/21
  • 6. OWLIM - Semantics OWLIM offers several predefined semantics by way of standard rule-sets 1. empty: no reasoning, i.e. operates as a plain RDF store 2. rdfs: supports standard RDFS semantics 3. owl-horst: OWL dialect close to OWL Horst 4. owl-max: a combination of most of OWL-Lite with RDFS 5. owl2-ql: Conformant OWL2 QL profile 6. owl2-rl: Fully conformant OWL2 RL profile, except for D-Entailment Can be configured to use custom rule sets with semantics better tuned to the particular domain www.sti-innsbruck.at 6/21
  • 7. OWLIM - Reasoner (1) Prefices { rdfs : http://www.w3.org/2000/01/rdf-schema# } Axioms { <rdf:type> <rdf:type> <rdf:Property> <rdf:subject> <rdf:type> <rdf:Property> } Rules { Id: <rule_name> <premises> <optional_constraints> ------------------------------- <consequences> <optional_constraints> } www.sti-innsbruck.at 7/21
  • 8. OWLIM - Reasoner (2) Id: prp_trp p <rdf:type> <owl:TransitiveProperty> x p y y p z ------------------------------- x p z Id: prp_key_1 c <owl:hasKey> u x <rdf:type> c [Constraint x != y] y <rdf:type> c [Cut] x u y [Context <onto:_sameKey>] ------------------------------- x <owl:sameAs> y www.sti-innsbruck.at 8/21
  • 9. The Weaver Bottleneck: serialization/deserialization How to bring the reasoner closer to the data? www.sti-innsbruck.at 9/21
  • 10. RDF Model (1) @prefix owl: <http://www.w3.org/2002/07/owl#> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . @prefix xsd: <http://www.w3.org/2001/XMLSchema#> . @prefix schema: <http://schema.org/> . @prefix oc: <http://sti2.at/oc/> . www.sti-innsbruck.at 10/21
  • 11. RDF Model (2) schema:Event a rdfs:Class; rdfs:label "Event"@en; rdfs:subClassOf schema:Thing; rdfs:isDefinedBy <http://schema.org/Event> . schema:description a rdf:Property; ... schema:name a rdf:Property; ... schema:startDate a rdf:Property; ... schema:endDate a rdf:Property; ... schema:location a rdf:Property; rdfs:domain [ ... owl:unionOf(schema:Event ...) ]; rdfs:range [ ... owl:unionOf(schema:Place ...) ]; schema:Place a rdfs:Class; ... www.sti-innsbruck.at 11/21
  • 12. RDF Model (3) oc:Channel a rdfs:Class; rdfs:label "Channel"@en; rdfs:isDefinedBy <http://sti2.at/oc/Channel> . oc:Twitter a rdfs:Class; rdfs:label "Channel Twitter"@en; rdfs:subClassOf oc:Channel; rdfs:isDefinedBy <http://sti2.at/oc/Twitter> . oc:Blog a rdfs:Class; rdfs:label "Channel Blog"@en; rdfs:subClassOf oc:Channel; rdfs:isDefinedBy <http://sti2.at/oc/Blog> . www.sti-innsbruck.at 12/21
  • 13. RDF Model (4) oc:publish a rdf:Property; rdfs:label "Publish"@en; rdfs:comment "Publish a Content to a Channel."@en; rdfs:domain [ a owl:Class; owl:unionOf (schema:Event schema:BlogPosting) ]; rdfs:range [ a owl:Class; owl:unionOf (oc:Twitter oc:Blog) ]; rdfs:isDefinedBy <http://schema.org/Event>; rdfs:isDefinedBy <http://schema.org/BlogPosting>; . www.sti-innsbruck.at 13/21
  • 14. Rules (1) Prefices { schema : http://schema.org/ oc : http://sti2.at/oc/ } Axioms { ... <schema:Event> <rdf:type> <rdfs:Class> <schema:Event> <rdfs:subClassOf> <rdfs:Resource> <oc:Twitter> <rdf:type> <rdfs:Class> <oc:Twitter> <rdfs:subClassOf> <rdfs:Resource> ... <oc:publish> <rdf:type> <rdf:Property> <oc:publish> <rdfs:domain> <rdfs:Class> <oc:publish> <rdfs:range> <rdfs:Class> } www.sti-innsbruck.at 14/21
  • 15. Rules (2) Rules { Id: pub_event x <rdf:type> <schema:Event> ------------------------------- x <oc:publish> <oc:Twitter> x <oc:publish> <oc:Blog> Id: pub_post x <rdf:type> <schema:BlogPosting> ------------------------------- x <oc:publish> <oc:Blog> ... } www.sti-innsbruck.at 15/21
  • 16. Instances (1) oc:3W04 a schema:Place ; schema:description "Room 3W04" . oc:M1 a schema:Event ; schema:name "OC Meeting" ; schema:location oc:3W04 ; schema:startDate "2014-04-09T14:30" ; schema:endDate "2014-04-09T15:30" . Test> sparql prefix oc:... insert data { oc:M1 a schema:Event; ... }. Executing update... Update executed in 431 ms www.sti-innsbruck.at 16/21
  • 17. Instances (2) Test> sparql select * where {?s <http://sti2.at/oc/publish> ?o}. Evaluating query... +-------------------------+---------------------------+ | s | o | +-------------------------+---------------------------+ | oc:M1 | oc:Twitter | | oc:M1 | oc:Blog | +-------------------------+---------------------------+ 2 result(s) (43 ms) Test> www.sti-innsbruck.at 17/21
  • 18. Comparison (1) OWLIM’s Custom Rule-Sets: Specify the custom rule-set manually via the configuration parameter (-Druleset=/opt/owlim-se-5.3/oc.pie) The rule-set file is processed to create Java source code, then compiled using JDK, used by TRREE during inference $ tail -f logs/catalina.out OwlimSchemaRepository: version: 5.3, revision: 6156 Product: OWLIM_SE Licensee: STI_PlanetData ... Current file: /opt/owlim-se-5.3/oc.pie Compiled: ’/opt/owlim-se-5.3/oc.pie’ www.sti-innsbruck.at 18/21
  • 19. Comparison (2) OWLIM’s Reasoner: ⊕ Compact (no more objects instantiation), Centralized (no more scattered servers) Less flexible to maintain the Rules Rules filtering still questionable IF (event.location == "Innsbruck") THEN ... Drools (+Guvnor) Rules Engine: ⊕ More flexible on Rules editing, i.e. GUI, DSL, filtering ⊕ KB sessions can be created/destroyed dynamically Complex, requires objects instantiation www.sti-innsbruck.at 19/21
  • 20. Summary OWLIM can simplify the complexity of the Weaver, and more than enough for the most use cases Should we use OWLIM’s Reasoner instead? www.sti-innsbruck.at 20/21
  • 21. References 1. OWLIM, http://owlim.ontotext.com 2. OpenRDF Sesame, http://www.openrdf.org 3. OWL 2 Primer, http://www.w3.org/TR/owl2-primer/ 4. OWL 2 Profiles, http://www.w3.org/TR/owl2-profiles/ 5. Schema.org, http://schema.org/ 6. Drools, http://www.jboss.org/drools/ www.sti-innsbruck.at 21/21