web rule language (wrl) wsmo/wsml/wrl

37
SRI, 08/12/200 5 1 Copyright 2004 Digital Enterprise Research Institute. All rights reserved. www.deri.org Web Rule Language (WRL) Web Rule Language (WRL) http://www.wsmo.org/wsml/wrl/ http://www.wsmo.org/wsml/wrl/ Authors: Jos de Bruijn, Jürgen Angele, Harold Boley, Dieter Fensel, Pascal Hitzler, Michael Kifer, Reto Krummenacher, Holger Lausen, Axel Polleres, Rudi Studer (DERI, Ontoprise, FZI, UniKarlsruhe, NRC) Presented by: Axel Polleres [email protected]

Upload: dillon-arnold

Post on 01-Jan-2016

33 views

Category:

Documents


0 download

DESCRIPTION

Web Rule Language (WRL) http://www.wsmo.org/wsml/wrl/. Authors: Jos de Bruijn, Jürgen Angele, Harold Boley, Dieter Fensel, Pascal Hitzler, Michael Kifer, Reto Krummenacher, Holger Lausen, Axel Polleres, Rudi Studer (DERI, Ontoprise, FZI, UniKarlsruhe, NRC) - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 1 Copyright 2004 Digital Enterprise Research Institute. All rights reserved.

www.deri.org

Web Rule Language (WRL)Web Rule Language (WRL)http://www.wsmo.org/wsml/wrl/http://www.wsmo.org/wsml/wrl/

Authors: Jos de Bruijn, Jürgen Angele, Harold Boley, Dieter Fensel, Pascal Hitzler, Michael Kifer, Reto Krummenacher, Holger Lausen, Axel Polleres, Rudi Studer

(DERI, Ontoprise, FZI, UniKarlsruhe, NRC)

Presented by: Axel Polleres [email protected]

Page 2: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 2

Outline

• Introduction• Syntax• WRL Variants• Semantics• Exchange Syntaxes• Why not SWRL? Related approaches• Conclusions

Page 3: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 3

Introduction

• WRL: Rule–based ontology language for the Semantic Web– the basic ontology meta-model proposed by (WSML)

consists of: concepts, relations, instances, axioms– formal semantics based on well-known logical language

paradigms:• Logic Programming

• Frame Logic [Kifer et al.]

• "Rule–based ontology language? We have OWL already… ?!?"

• Description Logic

Page 4: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 4

Why more than OWL?

OWL Recap:

• OWL builds on top of RDF(S)• In OWL I can express

– subclassing (including union, intersection, complement)Class(C1 partial C2)

– property value restrictions:Class(C1 partial R allValuesFrom(C2) P someValuesFrom(C3))

– cardinality restrictions:Class(Car partial Wheel minCardinality(4))

– transistivity, symmetry, inversity, functionality of properties (globally):ObjectProperty (R transitive inverseOf(P))

– individualsIndividual(http://www.polleres.net/axel type(xyz:Human) value(age 32))

– equality and disjointness of classes and individuals

Page 5: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 5

Why more than OWL?

• In OWL (DL), there are no rules, thus – limited number of axioms can be expressed, e.g. not expressible:

uncleOf(X,Z) :- male(X), hasSibling(X,Y), childOf(Y,Z)brother(X) :- hasFather(X,Z), hasChild(Z,Y), differentFrom(X,Y).

– sometimes intuitivity is arguable

ObjectProperty(hasPassenger domain(FlightSeat) range(Passenger)Class(FlightSeat partial restriction(hasPassenger maxCardinality(1)))Individual( seat1 type(FlightSeat)

value(hasPassenger mary)value(hasPassenger john)).

Individual(seat1 type(FlightSeat)value(hasPassenger seat2))

OWA by default, no names non unique by default (can be added by owl:AllDifferent). Has some disadvantages. Additionalinferences are drawn, no way to express constraints on a contextually scoped knowledge base.

• Besides there are some other troubles with OWL…– Layering on top of RDF only OWL Full layered completely on RDF… some of the problems

(e.g. classes as instances) can be solved relatively simple:tweety rdf:type eagle.eagle rdf:type species.

Page 6: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 6

• Objectives for a rule language next to OWL:– LP based (efficient query answering, constraints)– Lift some of the restrictions such as individuals as classes– Identify level of interoperability with OWL (already defined: DLP

[Grosof et al.])

Page 7: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 7

Introduction

- placed on the “Ontology vocabulary“ layer in the Semantic Web language layer cake

Page 8: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 8

Outline

• Introduction• Syntax• WRL Variants• Semantics• Exchange Syntaxes• Why not SWRL? Related approaches• Conclusions

Page 9: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 9

WRL Syntax

– The conceptual syntax– Modeling the ontologies– frame-like style (similar to OIL)

– The logical expressions syntax – Refine these definitions using arbitrary rules

Page 10: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 10

Concepts

• Form the basic terminology of the domain of discourse• May be organized in a hierarchy (using subConceptOf)• Have a number of attributes:

– Attributes have a type:• local Type constraint (ofType)

• local Type inference (impliesType)

– Attributes may have cardinality constraints– Attributes may have a number of features:

• Transitive

• Symmetric

• Reflexive

• Inverse of another attribute

Page 11: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 11

• What I meant by local vs. global?– in OWL only global type restrictions for Properties (rdf: domain,

rdf:range)

• What I meant by constraint vs. inferring?

concept FlightSeat

hasPassenger ofType Human

hasPart impliesType FlightSeatPart

concept Childrenseat

hasPassenger ofType Child

Page 12: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 12

Concept Example

concept HumannonFunctionalProperties

dc#relation hasValue humanDefinition dc#description hasValue "concept of a human being“endNonFunctionalProperties hasName ofType foaf#name hasParent inverseOf(hasChild) impliesType Human hasChild impliesType Human hasAncestor transitive impliesType Human hasWeight ofType (1) _float hasBirthdate ofType (1) _date hasObit ofType (0 1) _date hasBirthplace ofType (1) loc#location isMarriedTo symmetric impliesType (0 1) Human

hasCitizenship ofType oo#country

Page 13: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 13

Web Rule Language Syntax Basics

• WRL MIME type :– text/x-wrl (normative syntax), application/xml (XML syntax),

application/rdf+xml (RDF syntax)• Namespaces

– The RDF mechanism is adopted: a namespace is part of an IRI • Identifiers

– Data values : • direct support for some of the XML Schema datatypes (string, integer,

decimal)• Datatype wrappers

– IRIs• Can be abbreviated to sQNames(namespace prefix, the local part)• different from the locators of a resource

– Anonymous IDs• numbered• unnumbered

• Comments

Page 14: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 14

Ontology Header

wrlVariant _"http://www.wsml.org/wsml/wrl-syntax/wrl-flight"

namespace {_"http://www.example.org/ontologies/example#",

dc _"http://purl.org/dc/elements/1.1/",

foaf _"http://xmlns.com/foaf/0.1/",

wrl _"http://www.wsmo.org/wsml/wrl-syntax#",

loc _"http://www.wsmo.org/ontologies/location#" }

ontology _”http://www.example.org/ontologies/example”nonFunctionalProperties

dc#title hasValue ”WRL example ontology”

endNonFunctionalProperties

importsOntology { _”http://www.wsmo.org/ontologies/location”}

Page 15: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 15

Relations

• arbitrary arity• may have typing associated with their parameters• either the arity or the type of the parameters must be

declared• may be organized in a hierarchy (using

subRelationOf)

relation distance (ofType City, ofType City, impliesType _decimal) subRelationOf measurement

or untyped: relation distance/3

Page 16: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 16

Instances

• Are the objects in the domain• May be members of one or more concepts• May have a number of attribute values associated with them

instance Mary memberOf {Parent, Woman} nfp

dc#description hasValue "Mary is parent of the twins Paul and Susan"

endnfp hasName hasValue "Maria Smith“hasBirthdate hasValue _date(1949,9,12) hasChild hasValue {Paul, Susan}

Page 17: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 17

Relation Instances

• Are tuples in a relation

relationInstance distance(Innsbruck, Munich, 234)

Page 18: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 18

Axioms

• Refine concept and relation definitions in Ontologies using

logical expressions• Add arbitrary knowledge and constraints• Allowed logical expressions depend on WRL variant

axiom humanDefinition definedBy ?x memberOf Human equivalent ?x memberOf Animal and ?x memberOf LegalAgent

axiom humanBMIConstraint definedBy

!- naf bodyMassIndex(?b, ?l, ?w) and ?x memberOf Human and

?x[length hasValue ?l, weight hasValue ?w, bmi hasValue ?b].

Page 19: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 19

Logical expressions

• Allow to use the full expressive power of the underlying logic• The syntax is inspired by First-Order Logic and F-Logic• Specific extensions to capture Logic Programming constructs

– Negation-as-failure

– LP implication :-

– Constraint symbol !-

• Variables: implicitly universally quantified outside the formula • Language keywords resemble natural language and are unambiguous

Page 20: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 20

Outline

• Introduction• Syntax• WRL Variants• Semantics• Exchange Syntaxes• Why not SWRL? Related approaches• Conclusions

Page 21: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 21

WRL Variants

WRL Core : interoperability layer between Description Logics and LP – the common part of OWL and WRL i.e. same ground entailment

Similar to OWL we layer the rule language wrt. Expressiveness:

Page 22: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 22

Conceptual Syntax restrictions in WRL Core

• Only impliesType allowed• It is not allowed to specify the reflexive, transitive,

symmetric and inverseOf features for attributes• Cardinality constraints are not allowed• Constraining attribute definitions can appear only for datatype

ranges• The arity of relations is restricted to two• Constraining parameter definition can be done only for

parameters with a datatype as a range• Only the second parameter can have a datatype as range

Remark: these restrictions are for the sake of compatibility with what can be expressed in DLP and OWL

Page 23: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 23

WRL Variants

WRL Core : interoperability layer between Description Logics and LP – the common part of OWL and WRL

WRL Flight: based on the Datalog subset of F-Logic extended with locally stratified negation-as-failure, inequality and the unification operator under the Perfect Model Semantics

Page 24: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 24

WRL Variants

WRL Core : interoperability layer between Description Logics and LP – the common part of OWL and WRL

WRL Flight: based on the Datalog subset of F-Logic extended with locally stratified negation-as-failure, inequality and the unification operator under the Perfect Model Semantics

WRL Full: based on full Horn with negation-as-failure under the Well-Founded Semantics + function symbols.

Page 25: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 25

WRL-Core Logical Expressions

WRL Core only allows tree shaped rules (DLP), conjunction in the head,discjunction in the body allowed, as long as variable tree has no cyclesand is connected.

Limitations in logical expressions• From Description Logic point-of-view, there is a lack of:

– Existentials– Disjunction– (Classical) negation– Equality

• From Logic Programming point-of-view, there is a lack of:– N-ary predicates– Chaining variables over predicates– (Default) negation– Function symbols

Page 26: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 26

WRL-Flight Logical Expressions

• Syntax based on Datalog fragment of F-Logic, extended with negation-as-failure (the need for LP implication), the inequality symbol and the unification operator

• Allows classical implication in the head of a rule• Arbitrary Datalog rules:

– N-ary predicates– Chaining variables over predicates

• From Description Logic point-of-view, there is a lack of:– Existentials– Disjunction– (Classical) negation– Equality

• From Logic Programming point-of-view, there is a lack of:– Function symbols

Page 27: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 27

WRL-Full Logical Expressions

• Extends WRL-Flight logical expressions with:– Unsafe rules– Unstratified negation– Full Lloyd-Topor – arbitrary first-order formulas in the body of a rule

• From Description Logic point-of-view, there is a lack of:– Existentials– Disjunction– (Classical) negation– Equality

Page 28: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 28

Outline

• Introduction• WRL Variants• Syntax• Semantics• Exchange Syntaxes• Why not SWRL? Related approaches• Conclusions

Page 29: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 29

WRL Semantics

(I) Mapping between the conceptual syntax for ontologies (the part that has a meaning in the logical language) and the logical expression syntax.

(II) Mapping to existing logical formalisms• WRL Core Semantics

– Mapping to Horn Logic (or Horn fragment of F-Logic)– the Lloyd-Topor transformations are applied for obtaining the

actual Datalog rules– First-order semantics

Page 30: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 30

• ?x memberOf Human equivalent ?x memberOf Animal and ?x memberOf LegalAgent

memberOf(?x,Human) , memberOf(?x,Animal) and memberOf(?x,LegalAgent)

Lloyd-Topor:

memberOf(?x,Human) ) memberOf(?x,Animal)

memberOf(?x,Human) ) memberOf(?x,Animal)

memberOf(?x,Animal) and memberOf(?x,LegalAgent) ) memberOf(?x,Human)

Page 31: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 31

WRL Semantics

• WRL – Flight Semantics– mapping to function-free F-Logic LP (extended with

inequality and stratified default negation in the body of the rule)

– Again full Lloyd-Topor transformations are applied for obtaining the actual Datalog rules

– the perfect model semantics – every stratified program has a unique perfect model

• WRL – Full Semantics– mapping to full LP (i.e., which allows function symbols and

unsafe rules) with inequality and unstratified negation.– Full Lloyd-Topor transformations are applied for obtaining

the actual LP rules– Well-Founded Semantics

Page 32: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 32

Outline

• Introduction• Syntax• WRL Variants• Semantics• Exchange Syntaxes• Why not SWRL? Related approaches• Conclusions

Page 33: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 33

WRL Exchange Syntaxes

• XML Syntax– RuleML v0.89 – the main XML serialization language for the logical

expression part– the human-readable syntax – the basis for the XML syntax for the

conceptual part of WRL– for exchange over the Web and for interoperability with RuleML -

enabled applications– translation between human-readable and XML syntax– It is expected that WRL, WSML, SWSL and RuleML will converge

on XML Syntax

• RDF Syntax– the vocabulary used is an extension of the RDF Schema

vocabulary – interoperability with RDF applications– translation between human-readable and RDF syntax– for logical expressions, XML literals are used

Page 34: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 34

Outline

• Introduction• Syntax• WRL Variants• Semantics• Exchange Syntaxes• Why not SWRL? Related approaches• Conclusions

Page 35: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 35

• So, why not SWRL?– Extends OWL too much: is not a rule language in the LP sense but

rather an expressive extension of OWL, unfortunately undecidable, not translatable to existing fast LP engines.

– Restricts unnecessarily: SWRL only allow binary predicates

• What about relation to OWL?– WRL core directly translatable (based on DLP), semantic overlap:

ground entailment of facts.– We added in Flight and Full: relaxation of meta-reasoning-restriction

• SWSL-Rules– SWSL also defines a very related rule language, we expect

convergence in the W3C rules working group, but has more features, no conceptual syntax.

• WSML Language for WSMO, WRL is the basis for WSML logical expressions, extensions necessary (e.g. TR under

discussion)

Page 36: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 36

• What's next?– Scoped negation instead of negation as failure?

– Better integration with DL like syntax of OWL?

– Layer other components of WSMO on top of that language and apply a similar layering of expressivity, e.g. for pre-/postconditions of services, etc.

– Investigate extensions of F-Logic, combination with Transaction Logic, however we don't currently go the full path of SWSL to have all possible extensions at once.

Page 37: Web Rule Language (WRL) wsmo/wsml/wrl

SRI, 08/12/2005 37

Conclusions

• WRL is a language for modeling rules for use on the Semantic Web• Derived from the ontology component of the Web Service Modeling

Language (WSML)• WRL is a Web language:

– IRIs for object identification– XML datatypes

• WRL is based on well-known logical formalisms:– Description Logics– Logic Programming– Frame Logic

• Its syntax has two parts:– Conceptual modeling – Logical expressions

• XML and RDF syntaxes for exchange over the Web

Used and promoted in most major projects of DERI: