co-funded by the european union semantic cms community the semantic web – part 2 modeling complex...

50
Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer Organization Date of presentation

Upload: kassandra-notley

Post on 31-Mar-2015

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

Co-funded by the European Union

Semantic CMS Community

The Semantic Web – Part 2

Modeling Complex Knowledge Domains

Copyright IKS Consortium1

LecturerOrganization

Date of presentation

Page 2: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page: 2

Copyright IKS Consortium

Content Management The Semantic Web

Storing and Accessing Semantic Data

Semantic Lifting

Knowledge Representation and Reasoning

Knowledge Interaction and Presentation

Designing Interactive Ubiquitous IS

Semantifying your CMS

Reference Architecture for Semantic CMS

Requirements Engineering for Semantic CMS

Part I: Foundations

Part III: MethodologiesPart II: Semantic

Content Management

Page 3: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Semantic Web Layer Cake

Copyright IKS Consortium

3

Semantic Web Layer Cake, Image source: http://www.w3.org/2007/03/layerCake.svg

Unique identification of resources

A format for specifying structured data in a machine-readable form

A model for describing resources with properties

and property values.

A language for querying information specified in

RDF.

Page 4: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

RDF

RDF can be used to make statements about single resources identified by URIs

RDF is able to define relations among resources Literals can be assigned as values to properties of

resources

Copyright IKS Consortium

4

http://example.org/myCarhttp://example.org/

Jaguar

http://example.org/rel/Brand

XFhttp://example.org/rel/Model

http://example.org/myCar

Page 5: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

RDF Classes

Copyright IKS Consortium

5

http://example.org/myCarhttp://example.org/

Jaguar

http://example.org/rel/Brand

http://example.org/VWVehicle

Car

How are these terms related to each other?

Do these terms have anything in common?

Page 6: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

RDF Properties

We need to do statements about properties What is the type of the property?

Definition of valid types for subjects and objects Definition of hierarchies of properties

Copyright IKS Consortium

6

http://example.org/myCar

http://example.org/UniversityPaderborn

http://example.org/rel/Brand

Is “UniversityPaderborn” a valid value for property “Brand”?

Page 7: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Copyright IKS Consortium

7

We need to define

a vocabulary for

our domain!

Page 8: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

RDF Schema

“RDF's vocabulary description language, RDF Schema, is a semantic extension of RDF. It provides mechanisms for describing groups of related resources and the relationships between these resources.”

W3C Recommendation RDF Vocabulary Description Language 1.0: RDF Schema

The RDFS namespace is:

“rdfs: http://www.w3.org/2000/01/rdf-schema#”

But RDFS also uses elements from the rdf namespace!

Copyright IKS Consortium

8

http://www.w3.org/TR/rdf-schema/

Page 9: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

RDF Schema

RDFS does not provide a specific vocabulary for describing properties such as “Brand”, but a language to define vocabularies

RDFS uses RDF to define RDF

vocabularies

Due to it's limited expressiveness,

RDFS is a language to define lightweight ontologies

Copyright IKS Consortium

9

http://www.w3.org/TR/rdf-schema/

”A little semantics goes a long way“

- Jim Hendler

Page 10: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

RDFS Classes

“Resources may be divided into groups called classes. The members of a class are known as instances of the class. Classes are themselves resources.”

The members (resources) of a class A are termed instances of the class A

Classes are resource, e.g. “http://example.org/CarManufacturer” and can be described by RDF properties

Copyright IKS Consortium

10

Page 11: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

RDFS Classes

The predicate rdf:type assigns the object as type of the subject

The assignment to a type is not exclusive

A subject can be typed by several objects!

Example:

Copyright IKS Consortium

11

ex:Jaguar rdf:type ex:CarManufacturer

Page 12: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

RDFS Classes

A resource can be defined as a class explicitly The type rdfs:Class defines a resource as a class

Example:

rdfs:Class is the “class of all classes”, i.e.:

Copyright IKS Consortium

12

ex:CarManufacturer rdf:type rdfs:Class

rdfs:Class rdf:type rdfs:Class

Page 13: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Hierarchies of Classes

“The property rdfs:subClassOf is an instance of rdf:Property that is used to state that all the instances of one class are instances of another.”

The subject and object of the predicate “rdfs:subClassOf” must be instances of rdfs:Class

The property rdfs:subClassOf is transitive

Example:

Copyright IKS Consortium

13

ex:CarManufacturer rdfs:subClassOf ex:Company

Page 14: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

RDFS Constructs - Predefined Classes

Copyright IKS Consortium

14

rdfs:ResourceAll things described by RDF are called resources, and are instances of the class rdfs:Resource.

rdfs:ClassThis is the class of resources that are classes. rdfs:Class is an instance of rdfs:Class.

rdfs:LiteralThe class rdfs:Literal is the class of literal values such as strings and integers. rdfs:Literal is an instance of rdfs:Class. rdfs:Literal is a subclass of rdfs:Resource.

rdfs:Datatyperdfs:Datatype is the class of datatypes. rdfs:Datatype is both an instance of and a subclass of rdfs:Class. Each instance of rdfs:Datatype is a subclass of rdfs:Literal.

rdf:XMLLiteralThe class rdf:XMLLiteral is the class of XML literal values. rdf:XMLLiteral is an instance of rdfs:Datatype and a subclass of rdfs:Literal.

rdf:Propertyrdf:Property is the class of RDF properties. rdf:Property is an instance of rdfs:Class.

http://www.w3.org/TR/rdf-schema/

Typos?

Page 15: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

RDFS Properties

“The RDF Concepts and Abstract Syntax specification describes the concept of an RDF property as a relation between subject resources and object resources”

A resource can be defined as property explicitly

Copyright IKS Consortium

15

ex:Brand rdf:type rdf:Property

Page 16: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Hierarchies of Properties

“The property rdfs:subPropertyOf is an instance of rdf:Property that is used to state that all resources related by one property are also related by another.”

The subject and object of the predicate “rdfs:subPropertyOf ” must be instances of rdf:Property

The property rdfs:subPropertyOf is transitive

Example:

Copyright IKS Consortium

16

ex:friendOf rdfs:subPropertyOf ex:knows

Page 17: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Property Restrictions

We need to express, that only subjects and objects of specific types should be used for the predicate “Brand”

Copyright IKS Consortium

17

http://example.org/myCar

http://example.org/UniversityPaderborn

http://example.org/rel/Brand

Is “UniversityPaderborn” a valid value for property “Brand”?

Page 18: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Domain

“rdfs:domain is an instance of rdf:Property that is used to state that any resource that has a given property is an instance of one or more classes.”

States that each subject with the predicate (property) is an instance of the defined class

If more than one domain is defined, the subjects are instances of all classes!

Example:

Copyright IKS Consortium

18

ex:Brand rdfs:domain ex:Vehicle

Page 19: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Range

“rdfs:range is an instance of rdf:Property that is used to state that the values of a property are instances of one or more classes.”

States that each object of the predicate (property) is an instance of the defined class

If more than one range is defined, the objects are instances of all classes!

Example:

Copyright IKS Consortium

19

ex:Brand rdfs:range ex:Company

Page 20: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

RDFS Constructs – Predefined Properties (I)

Copyright IKS Consortium

20

rdfs:rangerdfs:range is an instance of rdf:Property that is used to state that the values of a property are instances of one or more classes.

rdfs:domainrdfs:domain is an instance of rdf:Property that is used to state that any resource that has a given property is an instance of one or more classes.

rdf:typerdf:type is an instance of rdf:Property that is used to state that a resource is an instance of a class.

rdfs:subClassOfThe property rdfs:subClassOf is an instance of rdf:Property that is used to state that all the instances of one class are instances of another.

rdfs:subPropertyOfThe property rdfs:subPropertyOf is an instance of rdf:Property that is used to state that all resources related by one property are also related by another.

Page 21: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

RDFS Constructs – Predefined Properties (II)

Copyright IKS Consortium

21

rdfs:labelrdfs:label is an instance of rdf:Property that may be used to provide a human-readable version of a resource's name.

rdfs:commentrdfs:comment is an instance of rdf:Property that may be used to provide a human-readable description of a resource.

Page 22: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

RDFS - Example

Copyright IKS Consortium

22

ex:CarManufacturer

rdf:type

ex:myCar ex:Jaguarex:Brand

ex:Car

rdf:type

rdfs:domain

rdf:rangeex:Company

ex:Vehicle

rdfs:subClassOfrdfs:subClassOf

RDFAssertional knowledge

RDFS Terminological knowledge

class

class property

class

class

ex:Brand

Page 23: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Back to the Cake ...

Copyright IKS Consortium

23

Semantic Web Layer Cake, Image source: http://www.w3.org/2007/03/layerCake.svg

Unique identification of resources

A format for specifying structured data in a machine-readable form

A model for describing resources with properties

and property values.

A language for describing a lightweight ontology.

A language for querying information specified in

RDF.

Page 24: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Why is RDFS not enough?

RDFS cannot express negations

Defined property restrictions are global

Missing cardinalities for properties

Relations between (sub-)classes (e.g. disjunction)

Copyright IKS Consortium

24

Page 25: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

OWL – Web Ontology Language

“The OWL Web Ontology Language is designed for use by applications that need to process the content of information instead of just presenting information to humans.”

OWL has been developed as a vocabulary extension of RDF

Explicitly represents the meaning of terms in vocabularies and the relationships between those terms. (Ontology)

Copyright IKS Consortium

25

http://www.w3.org/TR/2004/REC-owl-features-20040210/

Page 26: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

OWL – The Story

2004 - OWL W3C Recommendation 2009 - OWL 2 W3C Recommendation

OWL = Web Ontology Language

Why not WOL? Obvious pronunciation which is easy on the ear Opens up great opportunities for logos Owls are associated with wisdom It has an interesting back story

Copyright IKS Consortium

26

http://lists.w3.org/Archives/Public/www-webont-wg/2001Dec/0169.html

http://piqs.de

Page 27: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Dialects of OWL

OWL Lite Provides classification hierarchy and simple constraint

features OWL DL (description logic) - Includes OWL Lite

Provides the maximum expressiveness without losing computational completeness and decidability of reasoning systems.

OWL Full - Includes OWL DL Is meant for users who want maximum expressiveness

and the syntactic freedom of RDF with no computational guarantees.

Copyright IKS Consortium

27

http://www.w3.org/TR/2004/REC-owl-features-20040210/

Page 28: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

How does OWL look like?

Basic structure of an OWL Document

Copyright IKS Consortium

28

<rdf:RDF xmlns:owl ="http://www.w3.org/2002/07/owl#" xmlns:rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:xsd ="http://www.w3.org/2001/XMLSchema#"> xmlns="http://example.org/">

<owl:Ontology rdf:about=“”> <rdfs:comment>An example OWL ontology</rdfs:comment> <owl:priorVersion rdf:resource="http://example.org/20120101/cars"/>

<owl:imports rdf:resource="http://example.org/20110707/manufacturer"/>

<rdfs:label>Car Ontology</rdfs:label> </owl:Ontology>

...

</rdf:RDF>

RDF DocumentNamespace Definitions

Ontology Header

Importing another ontology

Default Namespace

Page 29: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Simple OWL Classes

Comparable to RDFS classes Every individual in OWL is a member of the class

owl:Thing Each user-defined class is implicitly a subclass of

owl:Thing OWL also defines the empty class owl:Nothing Definition of domain-specific root classes:

Copyright IKS Consortium

29

<owl:Class rdf:ID=“Vehicle”/><owl:Class rdf:ID=“CarManufacturer”/>

Define class

Page 30: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Hierarchies of Classes

The definition of basic taxonomies for classes can be done by rdfs:subClassOf.

rdfs:subClassOf is transitive.

Copyright IKS Consortium

30

<owl:Class rdf:ID=“Car"> <rdfs:subClassOf rdf:resource="Vehicle"/> </owl:Class>

“Car” is a subclass of “Vehicle”

Page 31: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Disjoint Classes

“The disjointness of a set of classes can be expressed using the owl:disjointWith constructor. It guarantees that an individual that is a member of one class cannot simultaneously be an instance of a specified other class.“

Copyright IKS Consortium

31

<owl:Class rdf:about=“Car"> <owl:disjointWith rdf:resource=“Cat”/></owl>

The classes “Car” and “Vehicle” are

disjoint.

Page 32: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Infer about Disjoint Classes

Copyright IKS Consortium

32

<owl:Class rdf:ID=“Car"> <rdfs:subClassOf rdf:resource="Vehicle"/> </owl:Class>

<owl:Class rdf:ID=“Cat"> <rdfs:subClassOf rdf:resource=“Animal"/> </owl:Class>

<owl:Class rdf:about=“Vehicle"> <owl:disjointWith rdf:resource=“Animal”/></owl>

The class “Car” is a subclass of “Vehicle”

The class “Cat” is a subclass of “Animal”

The classes “Vehicle” and

“Animal” are disjoint

It can be inferred, that the classes “Car” and “Cat“are disjoint too!

Page 33: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Individuals

In addition to the definition of classes, we also need to describe the members of classes (individuals)

Abbreviated representation

Copyright IKS Consortium

33

<owl:Thing rdf:ID=“Jaguar"/>

<owl:Thing rdf:about=“Jaguar"> <rdf:type rdf:resource=“CarManufacturer"/> </owl:Thing>

Definition of individual “Jaguar”

Ties the individual to the class

< CarManufacturer rdf:ID="Jaguar"/>

Page 34: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Simple Properties

“This world of classes and individuals would be pretty uninteresting if we could only define taxonomies. Properties let us assert general facts about the members of classes and specific facts about individuals.“

Property are binary relations. In OWL, two different types of properties are distinguished: object properties, relations between instances of two

classes. datatype properties, relations between instances of

classes and RDF literals and XML Schema datatypes

Copyright IKS Consortium

34

http://www.w3.org/TR/owl-guide/

Page 35: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Object properties relate instances of classes by rdfs:domain and rdfs:range.

Object Properties

Copyright IKS Consortium

35

<owl:ObjectProperty rdf:ID=“Brand”>

<rdfs:domain rdf:resource=“Vehicle”/> <rdfs:range rdf:resource=“CarManufacturer”/>

</owl:Thing>

Domain and range for object property

“Brand”

<owl:ObjectProperty rdf:about=“Brand”/>

Properties are defined like classes

Page 36: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Datatype properties relate class instances and data values using rdfs:domain and rdfs:range.

Datatype Properties

Copyright IKS Consortium

36

http://www.w3.org/TR/owl-guide/

<owl:ObjectProperty rdf:ID=“ConstructionYear”>

<rdfs:domain rdf:resource=“Car”/> <rdfs:range rdf:resource=“&xsd;gYear”/>

</owl:Thing>

Domain and range for datatype property “ConstructionYear”

<owl:DatatypeProperty rdf:about=“ConstructionYear”/>

Properties are defined like classes

Page 37: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Recommended XML Schema datatypes

xsd:string xsd:normalizedString xsd:boolean

xsd:decimal xsd:float xsd:double

xsd:integer xsd:nonNegativeInteger xsd:positiveInteger

xsd:nonPositiveInteger xsd:negativeInteger xsd:byte

xsd:long xsd:int xsd:short

xsd:unsignedLong xsd:unsignedInt xsd:unsignedShort

xsd:hexBinary xsd:base64Binary xsd:unsignedByte

xsd:dateTime xsd:time xsd:date

xsd:gYear xsd:gMonthDay xsd:gDay

xsd:anyURI xsd:token xsd:language

xsd:NMTOKEN xsd:Name xsd:NCName

xsd:gYearMonth xsd:gMonth

Copyright IKS Consortium

37

Page 38: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Cardinality Constraints for Properties

owl:minCardinality defines the minimal cardinality for the value of a property.

owl:maxCardinality defines the maximal cardinality for the value of a property.

Copyright IKS Consortium

38

<owl:Class rdf:ID=“Vehicle">

<rdfs:subClassOf> <owl:Restriction>

<owl:onProperty rdf:resource=“Wheels”/><owl:minCardinality rdf:datatype=“&xsd;nonNegativeInteger”>2

</owl:minCardinality> </owl:Restriction> </rdfs:subClassOf>

</owl:Class>

Anonymous class Restriction for property “Wheels”

Minimal number of “Wheels” is “2”

Page 39: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Cardinality Constraints for Properties

“owl:cardinality permits the specification of exactly the number of elements in a relation.”

Copyright IKS Consortium

39

<owl:Class rdf:ID=“Motorcycle">

<rdfs:subClassOf> <owl:Restriction>

<owl:onProperty rdf:resource=“Wheels”/><owl:cardinality rdf:datatype=“&xsd;nonNegativeInteger”>2

</owl:cardinality> </owl:Restriction> </rdfs:subClassOf>

</owl:Class>

Restriction for property “Wheels”

Exact number of “Wheels” is “2”

Page 40: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Property Restrictions

“The owl:allValuesFrom restriction requires that for every instance of the class that has instances of the specified property, the values of the property are all members of the class indicated by the owl:allValuesFrom clause.”

Local restriction for class definition

Copyright IKS Consortium

40

<owl:Class rdf:ID=“Car"> <rdfs:subClassOf>

<owl:Restriction> <owl:onProperty rdf:resource=“preOwner” /> <owl:allValuesFrom rdf:resource=“Person” /></owl:Restriction>

<rdfs:subClassOf></owl:Class>

Restriction on property “PreOwner“ for

instances from class “Car”

Each value is member of class “Person”

Page 41: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Property Restrictions

Copyright IKS Consortium

41

<owl:Class rdf:ID=“Car">

<rdfs:subClassOf><owl:Restriction> <owl:onProperty rdf:resource=“preOwner” /> <owl:someValuesFrom rdf:resource=“Person” /></owl:Restriction>

<rdfs:subClassOf>

</owl:Class>

Restriction on property “PreOwner“ for

instances from class “Car”

At least one value is member of class

“Person”

Relation Implication

allValuesFrom For all cars, if they have a previous owner, all previous owners are persons.

someValuesFrom For all cars, they have at least one previous owner that is a person.

Page 42: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Property Restrictions with Constants

“owl:hasValue allows us to specify classes based on the existence of particular property values. Hence, an individual will be a member of such a class whenever at least one of its property values is equal to the owl:hasValue resource.”

Copyright IKS Consortium

42

<owl:Class rdf:ID=“myCars"> <rdfs:subClassOf> <owl:Restriction>

<owl:onProperty rdf:resource=“Owner”/><owl:hasValue rdf:”JohnMiller”>

</owl:Restriction> </rdfs:subClassOf></owl:Class>

Restriction for property “Owner”

The class “myCar” is defined by value

assignment

Page 43: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Intersection

owl:intersectionOf defines a class as an intersection of other classes.

Copyright IKS Consortium

43

<owl:Class rdf:ID=“CarsFromVW">

<owl:intersectionOf rdf:parseType=“Collection”><owl:Class rdf:about=”Cars”><owl:Class rdf:about=“VW”/>

</owl:intersectionOf>

</owl:Class>

If something is a “Car” and a “VW” it is a

”CarFromVW”

Page 44: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Union

“owl:unionOf describes a class that contains those individuals that occur in at least one of the class extensions of the class descriptions in the list”.

Copyright IKS Consortium

44

<owl:Class rdf:ID=“Gearbox">

<owl:unionOf rdf:parseType=“Collection”><owl:Class rdf:about=”ManualTransmission”><owl:Class rdf:about=“AutomaticTransmission”/>

</owl:intersectionOf>

</owl:Class>

Gearbox is everything that is “ManualTransmission”

or “AutomaticTransmission”.

Page 45: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Complement

“The owl:complementOf construct selects all individuals from the domain of discourse that do not belong to a certain class.”

Copyright IKS Consortium

45

<owl:Class rdf:about=”ManualTransmission”>

<owl:Class rdf:about=“AutomaticTransmission”/> </owl:complementOf ref:resource=“ManualTransmission” /></owl:Class>

“AutomaticTransmission” includes as members all individuals that do not

belong to “ManualTransmission”.

Page 46: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

If you want to know more ...

There is stuff about OWL out there, which is not part of this course: Class axioms Global restriction for properties Logical characteristics of properties

If you are interested in learning more about OWL please check: The W3C OWL Reference (http://www.w3.org/TR/owl-ref) The W3C OWL Guide (http://www.w3.org/TR/owl-guide)

....

Copyright IKS Consortium

46

Page 47: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

OWL 2

OWL 2 adds new functionality to OWL, while the overall structure is very similar

OWL 2 provides syntactic sugar e.g. disjoint union of classes

Some OWL 2 feature provide new expressivity: keys, property chains richer datatypes, data ranges; qualified cardinality restrictions asymmetric, reflexive, disjoint properties enhanced annotation capabilities

Copyright IKS Consortium

47

http://www.w3.org/TR/owl2-primer/

Page 48: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Back to the Cake ...

Copyright IKS Consortium

48

Semantic Web Layer Cake, Image source: http://www.w3.org/2007/03/layerCake.svg

Unique identification of resources

A format for specifying structured data in a machine-readable form

A model for describing resources with properties

and property values.

A language for describing a lightweight ontology.

A language for querying information specified in

RDF.

Highly expressive ontology language for modelling complex

knowledge domains.

Page 49: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

Lessons Learned

Now you should know ...

... what is the main difference between RDF and ontology languages like RDF Schema and OWL.

... how can RDF Schema be used to build simple ontologies.

... what are the shortcomings of RDF Schema and why is it not enough in some application cases.

... the web ontology language OWL. .. in which sense OWL is more expressive than RDF

Schema.

Copyright IKS Consortium

49

Page 50: Co-funded by the European Union Semantic CMS Community The Semantic Web – Part 2 Modeling Complex Knowledge Domains Copyright IKS Consortium 1 Lecturer

www.iks-project.eu

Page:

References and Additional Material

RDF Vocabulary Description Language 1.0: RDF Schema http://www.w3.org/TR/rdf-schema/

OWL Web Ontology Language Guide http://www.w3.org/TR/owl-guide/

OWL Web Ontology Language Reference http://www.w3.org/TR/owl-ref/

OWL 2 Web Ontology Language Primer http://www.w3.org/TR/owl2-primer/

Copyright IKS Consortium

50