25
www.iks-project.eu Co-funded by the European Union Semantic CMS Community Project Review Meeting Luxemburg, 14-03-2013 Knowledge Representation and Reasoning with Apache Stanbol Andrea Nuzzolese [email protected] STLab, ISTC-CNR Italy

Knowledge Representation and Reasoning with Apache Stanbol

Embed Size (px)

DESCRIPTION

Knowledge Representation and Reasoning layer of Apache Stanbol

Citation preview

Page 1: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

Co-funded by the European Union

Semantic CMS Community

Project Review Meeting Luxemburg, 14-03-2013

Knowledge Representation and Reasoning with Apache Stanbol

Andrea Nuzzolese [email protected]

STLab, ISTC-CNR Italy

Page 2: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

What does KR and Reasoning layer provide to Sanbol?

� Services used to define and manipulate semantic data models in the CMS �  i.e., Ontology Network Manager component

� Services able to retrieve additional semantic information about content �  i.e., Reaoners and Rules components

Copyright IKS Consortium 2 Copyright IKS Consortium

Page 3: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu 3 Copyright IKS Consortium

Page 4: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

Ontology Network Manager: motivations

�  To enable a more scalable reasoning by �  activating only parts of the knowledge that is really needed

by the application �  limiting the scope of specific reasoning tasks.

�  To distinguish between core and volatile knowledge �  core knowledge describes the semantic domain of the

CMS �  volatile knowledge can be any knowledge coming from

external services, or extracted from contents etc.

4 Copyright IKS Consortium

Page 5: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

Ontology Network Manager

�  The Ontology Network Manager provides a controlled environment for managing ontology networks

� An ontology network is “a collection of ontologies related together through a variety of different relationships such as mapping, modularization, and versioning.” [NeOn D1.1.5 Haase et. al]

�  The ONM provides API and REST services for constructing ontology networks and maintaining connectivity at runtime

5 Copyright IKS Consortium

Page 6: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu 6 Copyright IKS Consortium

Page 7: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

Ontology networks in Stanbol

�  The ONM relies on two types of artifacts for constructing ontology networks � Scope:

� a shared artifacts within the CMS for collecting all the persistent knowledge.

� can be seen as a "logical realm" for the ontologies that encompass a certain CMS-related set of concepts

e.g., "User", "Event", "Content”, "Community”,

� Session : � a shared artifact for volatile knowledge

e.g., knowledge extracted on-the-fly from content

7 Copyright IKS Consortium

Page 8: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

Scopes and sessions in th Ontology Network Manager

8 Copyright IKS Consortium

Page 9: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

Ontology Network Manager REST services

�  /ontonet/ontology/{scopeName} �  - {scopeName} list (GET), delete (DELETE) all registered

and/or active ontology scopes �  + {scopeName} get or activate, delete or deactivate, create

(PUT) and update (POST) the ontology of the scope identified by {scopeName}

�  ontonet/session/{id} �  - {id} get, delete all registered ontology sessions �  + {id} get, delete, create (PUT) and update (POST) the

ontology session identified by {id}

9 Copyright IKS Consortium

Page 10: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

Stanbol Rules

� Stanbol Rules is the component that supports the

construction and the management of inference rules within Stanbol

� Stanbol Rules provide an additional layer and a syntax for

expressing business logics by means of axioms �  The management of rules is performed through HTTP REST

services

10 Copyright IKS Consortium

Page 11: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

Rules and Recipes

� Rules are organized into a logic container called recipe

� A recipe identifies a set of rules that share the same business logic �  e.g., integrity check of data, Search Engine Optimizaion

� Rules within a recipe are interpreted and executed as a whole

� A rule can be shared by different recipes

11 Copyright IKS Consortium

Page 12: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

Stanbol Rules: some usage scenario

�  Integrity check from data fusion �  the CMS administrator can define integrity checks for data

fetched from heterogeneous and external sources in order to prevent unwanted formats or inconsistent data

� Vocabulary harmonization � Rules can be used for the alignment of external data

representation to internal one (managed via the Ontology Network Manager)

� DL reasoning � Rules can be used as axioms for inferring new knowledge

by DL reasoners 12 Copyright IKS Consortium

Page 13: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

Stanbol Rules adapters � Stanbol Rules are expressed by using the Stanbol Rule

language

� By need, rules are converted at runtime to the format required by a concrete rule engine

� By default, a list of rule adapters is provided �  i.e., SWRL for DL reasoning through OWL API, Jena

Rules, Clerezza SPARQL Constructs, pure SPARQL Constructs

� Adapters can be easily extended by implementing the provided interface

13 Copyright IKS Consortium

Page 14: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

The rule language

�  The rule syntax synoptic is

ruleName[body -> head] �  The rule name uniquely identifies a rule �  The body and head consist of a set of conjunctive atoms

14 Copyright IKS Consortium

Page 15: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

Core rule atoms

� Core atoms are � Class assertion

� i.e., is(classPredicate, argument) �  Individual assertion

� i.e., has(properyPredicate, arg1, arg2) � Data value assertion

� i.e., values(properyPredicate, arg1, arg2)

15 Copyright IKS Consortium

Page 16: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

Additional rule atoms

� Comparison �  e.g., same(arg1, arg2), greaterThan(arg1, arg2)

� String manipulation �  e.g., concat(arg1, arg2), lowercase(arg)

� Arithmetical atoms �  e.g., sum(arg1, arg2), mult(arg1, arg2)

� Production atoms �  e.g., newIRI(arg1, arg2), newLiteral(arg1, arg2)

16 Copyright IKS Consortium

Page 17: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

A rule example prefix myont = <http://www.foo.org/myont.owl#> . uncleRule[

is(myont:Human, ?x) . has(myont:hasParent, ?x, ?z) . has(myont:hasSibling, ?z, ?y) -> has(myont:hasUncle, ?x, ?y)

]

17 Copyright IKS Consortium

Page 18: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

Rules REST services

�  /rule �  get, create (POST), and delete rules into the rule store

�  /recipe �  get, create (PUT), add rules into (POST), and delete a

recipe

18 Copyright IKS Consortium

Page 19: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

Stanbol Reasoners

� Common REST wrapper around available reasoners

� Provides a default reasoner based on Jena

� Other reasoners can be plugged through the OWLLink protocol

19 Copyright IKS Consortium

Page 20: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

Reasoning services � Currently implemented services are

�  consistency checking �  classification �  enrichment �  refactoring

�  Inputs for reasoning are ontology networks and rules recipes

� Supported different reasoners and reasoning configuration in parallel

20 Copyright IKS Consortium

Page 21: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

Dealing with big data reasoning

� Reasoning with big data is performed by means of jobs through HTTP services

� A job is associated to an ID

�  The status of a job can be queried through REST API

21 Copyright IKS Consortium

Page 22: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

Reasoners REST services

� Services for classification, consistency checking and enrichment �  /reasoners/rdfs: based on RDFS �  /reasoners/owlmini: by default based on Jena OWLMini

reasoner. �  /reasoners/owl: by default based on Jena OWL reasoner.

� Refactoring services �  /refactor/apply

� Managing reasoning jobs �  /jobs/{jid}

22 Copyright IKS Consortium

Page 23: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

About adoption � Netlab

� Adoption of the Ontology Manager and Rules for storing ontologies and enabling reasoning

�  InSideOut10 � WordLift plug-in for WordPress based on Rules for

enabling schema.org compliant content

� Acuity Unlimited � KR&R enables reasoning services to assist Fedora

Commons repository managers acquire and manage semantic metadata about their contents

23 Copyright IKS Consortium

Page 24: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

DEMO

24 Copyright IKS Consortium

Page 25: Knowledge Representation and Reasoning with Apache Stanbol

www.iks-project.eu

Thank you

25 Copyright IKS Consortium