43
Rules for the Semantic Web Rules for the Semantic Web The WSML Approach Jos de Bruijn [email protected] Digital Enterprise Research Institute (DERI) National University of Ireland, Galway University of Innsbruck, Austria April 27, 2005 1/ 34

Rules for the Semantic Web - The WSML Approach

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Rules for the Semantic WebThe WSML Approach

Jos de [email protected]

Digital Enterprise Research Institute (DERI)National University of Ireland, Galway

University of Innsbruck, Austria

April 27, 2005

1/ 34

Page 2: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Web Rule Language in its Context

2/ 34

Page 3: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Outline

The Web Service Modeling Language WSMLWSML Language VariantsWSML SyntaxWSML Logical ExpressionsWSML Exchange Syntaxes

Key Features of WSML

Layering on the Semantic Web

Conclusions

3/ 34

Page 4: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

Outline

The Web Service Modeling Language WSMLWSML Language VariantsWSML SyntaxWSML Logical ExpressionsWSML Exchange Syntaxes

Key Features of WSML

Layering on the Semantic Web

Conclusions

4/ 34

Page 5: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

The Web Service Modeling Language WSML

I A language for the Semantic description of Web ServicesI Based on the Web Service Modeling Ontology WSMO

I OntologiesI Web ServicesI GoalsI Mediators

I Disregard Web Service-related aspects in this presentationI Semantics based on well-known logical language paradigms:

I Description LogicsI Logic ProgrammingI Frame Logic

I WSML distinguishes between:I Conceptual modelingI Logical expressions

5/ 34

Page 6: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

WSML Language Variants

WSML Language Variants

WSML-Core WSML-Rule

WSML-FullWSML-DL

First-Order Logic

WSML-Flight

Des

crip

tion

Logi

cs

Logic Programming

(with nonmonotonic extensions)

First-O

rder Logic(w

ith nonmonotonic extensions)

(with nonmonotonic negation)

6/ 34

Page 7: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

WSML Syntax

PrologueBy Example

// Specification of the WSML variantwsmlVariant ”http://www.wsmo.org/wsml/wsml-syntax/wsml-flight”

// Namespace prefix declarationnamespace { ”http://www.example.org/example#”,

dc ”http://purl.org/dc/elements/1.1/”}

// WSML specificationsontology ”http://www.example.org/exampleOntology”

[...]goal ”http://www.example.org/exampleGoal”

[...]

etc...

7/ 34

Page 8: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

WSML Syntax

WSML Specification

A WSML specification has the following structure:

I Type of specification (Ontology/Web Service/Goal/Mediator)I Header

I Non-Functional PropertiesI Imported OntologiesI Used Mediators

I Content of the specification

8/ 34

Page 9: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

WSML Syntax

OntologiesHeader

[.. prologue ..]

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

nonFunctionalProperties

dc#title hasValue ”WSML example ontology”

endNonFunctionalProperties

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

9/ 34

Page 10: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

WSML Syntax

OntologiesConcepts

I Form the basic terminology of the domain of discourse

I May be organized in a hierarchy (using subConceptOf)I Has a number of attributes:

I Attributes have a type:I Type constraint (ofType)I Type inference (impliesType)

I Attributes may have cardinality constraintsI Attributes may have a number of features:

I TransitiveI SymmetricI ReflexiveI Inverse of another attribute

10/ 34

Page 11: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

WSML Syntax

OntologiesConcepts - example

concept Person subConceptOf {Primate, LegalAgent}nfp

// Related axiom

dc#relation hasValue personUncle

endnfp

// A functional attribute (maximal cardinality=1)

hasName ofType (0 1) string

// hasParent is the inverse of hasChild

hasChild inverseOf(hasParent) ofType Person

hasParent ofType Person

hasBrother ofType Person

11/ 34

Page 12: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

WSML Syntax

OntologiesRelations

I Inspired by relations in mathematics

I Have arbitrary arity

I May have typing associated with its arguments

I May be organized in a hierarchy (using subRelationOf)

relation Marriage (ofType Person, ofType Person, ofType date)

nfp

dc#description hasValue ”Marriage is a relation between two

persons, which are the participants in the marriage, and the date

in the marriage.”

endnfp

12/ 34

Page 13: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

WSML Syntax

OntologiesInstances

I Are the objects in the domain

I May be member of one or more concepts

I May have a number of attribute values associated with it

instance john memberOf Person

nfp

dc#description hasValue ”The person John Smith”

endnfp

hasName hasValue ”John Smith”

13/ 34

Page 14: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

WSML Syntax

OntologiesRelation Instances

I Are tuples in a relation

relationInstance Marriage(john,mary, date(2005,03,03))

nfp

dc#description hasValue ”John and Mary married on 2005-03-03.”

endnfp

14/ 34

Page 15: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

WSML Syntax

OntologiesAxioms

I Refine concept and relation definitions in Ontologies usinglogical expressions

I Add arbitrary knowledge and constraints

I Entry point for logical expressions, rules in ontology

I Allowed logical expressions depend on WSML variant

axiom personUnclenfp

dc#description hasValue ”The brother of a person’s parent is thatperson’s uncle .”

endnfpdefinedBy

?x[hasUncle hasValue ?z] impliedBy ?x[hasParent hasValue ?y] and?y[hasBrother hasValue ?z].

16/ 34

Page 16: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

WSML Logical Expressions

Logical Expression syntax

I Used for refining Ontologies and specifying Web Servicefunctionality

I Allow to use the full expressive power of the underlying logic

I Frame syntax (F-Logic)I Logic Programming constructs

I Negation-as-failureI LP implication

I Variables are implicitly universally quantified outside theformula

I Symbols resemble natural language and are unambiguous

I WSML variants restrict allowed logical expressions

17/ 34

Page 17: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

WSML Logical Expressions

Examples

// a simple rule ; the brother of someone’s parent is that person’s// uncle?x[hasUncle hasValue ?z] :− ?x[hasParent hasValue ?y] and

?y[hasBrother hasValue ?z].

// the same person cannot be both a man and a woman (constraint)!− ?x memberOf Man and ?x memberOf Woman.

// every person has a father?x memberOf Person implies exists ?y (?x[ father hasValue ?y]) .

19/ 34

Page 18: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

WSML Logical Expressions

Examples

// a simple rule ; the brother of someone’s parent is that person’s// uncle?x[hasUncle hasValue ?z] :− ?x[hasParent hasValue ?y] and

?y[hasBrother hasValue ?z].

// the same person cannot be both a man and a woman (constraint)!− ?x memberOf Man and ?x memberOf Woman.

// every person has a father?x memberOf Person implies exists ?y (?x[ father hasValue ?y]) .

19/ 34

Page 19: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

WSML Logical Expressions

Examples

// a simple rule ; the brother of someone’s parent is that person’s// uncle?x[hasUncle hasValue ?z] :− ?x[hasParent hasValue ?y] and

?y[hasBrother hasValue ?z].

// the same person cannot be both a man and a woman (constraint)!− ?x memberOf Man and ?x memberOf Woman.

// every person has a father?x memberOf Person implies exists ?y (?x[ father hasValue ?y]) .

19/ 34

Page 20: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

WSML Logical Expressions

Examples

// a simple rule ; the brother of someone’s parent is that person’s// uncle?x[hasUncle hasValue ?z] :− ?x[hasParent hasValue ?y] and

?y[hasBrother hasValue ?z].

// the same person cannot be both a man and a woman (constraint)!− ?x memberOf Man and ?x memberOf Woman.

// every person has a father?x memberOf Person implies exists ?y (?x[ father hasValue ?y]) .

19/ 34

Page 21: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

WSML Exchange Syntaxes

WSML XML Syntax

I Syntax for exchange over the Web

I Translation between human-readable and XML syntax

I XML Schema for WSML has been defined

20/ 34

Page 22: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

WSML Exchange Syntaxes

WSML XMLExample

<!ENTITY ex ”http://www.example.org/ontologies/example#”><!ENTITY wsml ”http://www.wsmo.org/wsml/wsml−syntax#”><wsml xmlns=”&wsml;”variant=”http://www.wsmo.org/wsml/wsml−syntax/wsml−flight”><importsOntology>

http://www.wsmo.org/ontologies/location</importsOntology><concept name=”&ex;Person”>

<nonFunctionalProperties>[..]</nonFunctionalProperties><attribute name=”&ex;hasName” type=”constraining”>

<range>&wsml;string</range><maxCardinality>1</maxCardinality>

</attribute>[..]

</concept>[..]

</wsml>

22/ 34

Page 23: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

WSML Exchange Syntaxes

WSML RDF Syntax

I Interoperability with RDF applications

I Maximal reuse of RDF and RDFS vocabulary

I WSML RDF includes most of RDF

I Translation between human-readable and RDF syntax

I For logical expressions, XML literals are used

23/ 34

Page 24: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

The Web Service Modeling Language WSML

WSML Exchange Syntaxes

WSML RDFExample

<http://www.example.org/ontology> rdf#type wsml#ontology

<http://www.example.org/ontology> wsml#variant

<http://www.wsmo.org/wsml/wsml−syntax/wsml−flight>

<http://www.example.org/ontology> wsml#nfp :nfp1

:nfp1 dc#title ”WSML example ontology”ˆˆxsd#string

<http://www.example.org/ontology> wsml#importsOntology

<http://www.wsmo.org/ontologies/location>

<http://www.example.org/ontology> wsml#hasConcept ex#Person

ex#Person wsml#hasAttribute :att1

:att1 wsml#attribute ex#hasName

:att1 wsml#ofType xsd#string

:att1 wsml#maxCardinality ”1”ˆˆxsd:integer

<http://www.example.org/ontology> wsml#hasAxiom

ex#personUncle

ex#personUncle rdfs#isDefinedBy

”<impliedByLP>..</impliedByLP>”ˆˆrdf#XMLLiteral

25/ 34

Page 25: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Key Features of WSML

Outline

The Web Service Modeling Language WSMLWSML Language VariantsWSML SyntaxWSML Logical ExpressionsWSML Exchange Syntaxes

Key Features of WSML

Layering on the Semantic Web

Conclusions

26/ 34

Page 26: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Key Features of WSML

Key Features of WSML

I One framework for a set of Layered Languages

I Normative, Human-readable Syntax

I Separation of conceptual modeling and logical expressions

I Semantics based on well-known formalisms

I Relation between DL and Rules through common subset

I Web Language

I Frame-based syntax

27/ 34

Page 27: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Layering on the Semantic Web

Outline

The Web Service Modeling Language WSMLWSML Language VariantsWSML SyntaxWSML Logical ExpressionsWSML Exchange Syntaxes

Key Features of WSML

Layering on the Semantic Web

Conclusions

28/ 34

Page 28: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Layering on the Semantic Web

The WSML Approach to language layering

29/ 34

Page 29: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Layering on the Semantic Web

Current Languages on the Semantic Web

How to Incorporate rules?

I Layering Rules on top of OWL (e.g. SWRL)

I Hybrid approach (e.g. CARIN/AL-Log)

I Using a common subset for interoperation (e.g. DLP)

30/ 34

Page 30: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Layering on the Semantic Web

Current Languages on the Semantic Web

How to Incorporate rules?

I Layering Rules on top of OWL (e.g. SWRL)

I Hybrid approach (e.g. CARIN/AL-Log)

I Using a common subset for interoperation (e.g. DLP)

30/ 34

Page 31: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Layering on the Semantic Web

Common subset

I Maintain nice properties of each of the underlying logics

I Reuse existing implementations of rules and description logic

I Allow straightforward extension in both directions

31/ 34

Page 32: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Layering on the Semantic Web

Common subset

I Maintain nice properties of each of the underlying logics

I Reuse existing implementations of rules and description logic

I Allow straightforward extension in both directions

31/ 34

Page 33: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Conclusions

Outline

The Web Service Modeling Language WSMLWSML Language VariantsWSML SyntaxWSML Logical ExpressionsWSML Exchange Syntaxes

Key Features of WSML

Layering on the Semantic Web

Conclusions

32/ 34

Page 34: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Conclusions

ConclusionsWSML position on a Rules language for the Web:

1. Relation between DL and Rules through common subset

2. Rules-based ontology language

3. Ontology meta-model independent from underlying logic

4. Separation of conceptual modeling and logical expressions

5. Normative, Human-readable Syntax

6. Semantics based on well-known formalisms; allows integrationwith existing systems

7. Web Language

8. Frame-based syntax

WSML resourceshttp://www.wsmo.org/wsml/wsml-syntax#

33/ 34

Page 35: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Conclusions

ConclusionsWSML position on a Rules language for the Web:

1. Relation between DL and Rules through common subset

2. Rules-based ontology language

3. Ontology meta-model independent from underlying logic

4. Separation of conceptual modeling and logical expressions

5. Normative, Human-readable Syntax

6. Semantics based on well-known formalisms; allows integrationwith existing systems

7. Web Language

8. Frame-based syntax

WSML resourceshttp://www.wsmo.org/wsml/wsml-syntax#

33/ 34

Page 36: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Conclusions

ConclusionsWSML position on a Rules language for the Web:

1. Relation between DL and Rules through common subset

2. Rules-based ontology language

3. Ontology meta-model independent from underlying logic

4. Separation of conceptual modeling and logical expressions

5. Normative, Human-readable Syntax

6. Semantics based on well-known formalisms; allows integrationwith existing systems

7. Web Language

8. Frame-based syntax

WSML resourceshttp://www.wsmo.org/wsml/wsml-syntax#

33/ 34

Page 37: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Conclusions

ConclusionsWSML position on a Rules language for the Web:

1. Relation between DL and Rules through common subset

2. Rules-based ontology language

3. Ontology meta-model independent from underlying logic

4. Separation of conceptual modeling and logical expressions

5. Normative, Human-readable Syntax

6. Semantics based on well-known formalisms; allows integrationwith existing systems

7. Web Language

8. Frame-based syntax

WSML resourceshttp://www.wsmo.org/wsml/wsml-syntax#

33/ 34

Page 38: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Conclusions

ConclusionsWSML position on a Rules language for the Web:

1. Relation between DL and Rules through common subset

2. Rules-based ontology language

3. Ontology meta-model independent from underlying logic

4. Separation of conceptual modeling and logical expressions

5. Normative, Human-readable Syntax

6. Semantics based on well-known formalisms; allows integrationwith existing systems

7. Web Language

8. Frame-based syntax

WSML resourceshttp://www.wsmo.org/wsml/wsml-syntax#

33/ 34

Page 39: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Conclusions

ConclusionsWSML position on a Rules language for the Web:

1. Relation between DL and Rules through common subset

2. Rules-based ontology language

3. Ontology meta-model independent from underlying logic

4. Separation of conceptual modeling and logical expressions

5. Normative, Human-readable Syntax

6. Semantics based on well-known formalisms; allows integrationwith existing systems

7. Web Language

8. Frame-based syntax

WSML resourceshttp://www.wsmo.org/wsml/wsml-syntax#

33/ 34

Page 40: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Conclusions

ConclusionsWSML position on a Rules language for the Web:

1. Relation between DL and Rules through common subset

2. Rules-based ontology language

3. Ontology meta-model independent from underlying logic

4. Separation of conceptual modeling and logical expressions

5. Normative, Human-readable Syntax

6. Semantics based on well-known formalisms; allows integrationwith existing systems

7. Web Language

8. Frame-based syntax

WSML resourceshttp://www.wsmo.org/wsml/wsml-syntax#

33/ 34

Page 41: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Conclusions

ConclusionsWSML position on a Rules language for the Web:

1. Relation between DL and Rules through common subset

2. Rules-based ontology language

3. Ontology meta-model independent from underlying logic

4. Separation of conceptual modeling and logical expressions

5. Normative, Human-readable Syntax

6. Semantics based on well-known formalisms; allows integrationwith existing systems

7. Web Language

8. Frame-based syntax

WSML resourceshttp://www.wsmo.org/wsml/wsml-syntax#

33/ 34

Page 42: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Conclusions

ConclusionsWSML position on a Rules language for the Web:

1. Relation between DL and Rules through common subset

2. Rules-based ontology language

3. Ontology meta-model independent from underlying logic

4. Separation of conceptual modeling and logical expressions

5. Normative, Human-readable Syntax

6. Semantics based on well-known formalisms; allows integrationwith existing systems

7. Web Language

8. Frame-based syntax

WSML resourceshttp://www.wsmo.org/wsml/wsml-syntax#

33/ 34

Page 43: Rules for the Semantic Web - The WSML Approach

Rules for the Semantic Web

Conclusions

Web Rule Language in its Context

34/ 34