SlideShare a Scribd company logo
1 of 53
Mustafa Jarrar
Lecture Notes, Web Data Management (MCOM7348)
University of Birzeit, Palestine
1st Semester, 2013

OWL
Web Ontology Language

Dr. Mustafa Jarrar
University of Birzeit
mjarrar@birzeit.edu
www.jarrar.info
Jarrar © 2013

1
Watch this lecture and download the slides from
http://jarrar-courses.blogspot.com/2013/11/web-data-management.html
Thanks to Anton Deik and Rami Hodrob for their help in preparing these slides

Jarrar © 2013

2
Reading Material

http://www.w3.org/TR/owl2-primer/
Jarrar © 2013

3
Lecture outline
1.  Introduction to OWL
2.  OWL Basics
3.  Class Expression Axioms
4.  Property Axioms
5.  Assertions
6.  Class Expressions -Propositional Connectives
and Enumeration of Individuals

7. Class Expressions​ -Property Restrictions
8. Class Expressions​ -Cardinality Restrictions
Keywords: Tutorial, lecture, OWL, OWL2, RDFS, Ontology, Ontology Language, Class,
Property, Object Property, Data Property, Class Expression Axioms, Class Expression, Property
Axioms, Class Expressions, Enumeration, Property Restrictions, Cardinality Restrictions

Jarrar © 2013

4
What is OWL?
OWL stands for Web Ontology Language.
OWL became a W3C standard in February 2004. OWL 2, and OWL2 in
27 October 2009.
OWL is part of the "Semantic Web Vision" – The next generation of the
Web (Web 3.0).
To describe the meaning/semantics of the Web data (RDF is written in
terms of OWL)
OWL is called an ontology language. That is, what we specify in OWL is
called an ontology (Ontology is about the exact description of things
and their relationships.) For the web, ontology is about the exact
description of web information and relationships between them.
OWL’s underpinning description logic is SHOIQ.

Jarrar © 2013

5
OWL versus RDFS and RDF
OWL and RDFS are much of the same thing, but OWL allow constrains
and rules.
OWL can be seen as an extension of RDF/RDFS, OWL comes with a
larger vocabulary and stronger syntax than RDF and RDFS.
OWL has three sublanguages (OWL full, OWL DL, OWL Lite).

Jarrar © 2013

6
Variations of OWL
OWL Lite
–  A subset of OWL DL
–  This part of OWL is easier for reasoning
OWL DL
–  The part of OWL Full that is in the Description Logic framework.
–  Known to have decidable reasoning.
OWL Full
–  maximum expressiveness
–  no computational guarantees (not undecidable reasoning)

Jarrar © 2013

7
OWL 2
•  OWL 2, became a W3C recommendation in 27 October 2009.
•  An ontology language for the semantic Web which is extended from
OWL 1 and empowered by new features.
•  OWL 2 DL underpinning description logic is SROIQ.
•  OWL 2 is supported by several semantic reasoners such as RacerPro
2, Pellet, Hermit and FaCT++.

Jarrar © 2013

8
Versions of OWL 2
OWL 2 EL
–  Allows for subclass axioms with intersection, existential
quantification, top, bottom and closed classes with only one member.
–  Disallow for negation, disjunction, arbitrary universal quantification,
role inverses.
OWL 2 QL
–  Allows for subproperties, domain, range and subclass statements.
–  Disallow for closed classes.
OWL 2 RL
–  Allows for all axiom types, cardinality restrictions(only ≤1 and ≤0 on
right hand side) and closed classes with only one member.
–  Disallow certain constructors( universal and negation on left hand
side and extensional and union on right hand side of subclass
statements).
Jarrar © 2013

9
OWL Basics

Part 2/8
•  Classes
•  Individuals
•  Properties
•  Special Classes and Properties

Jarrar © 2013

10
Classes
Owl:Class
Unary predicates: Person(__), City(__).
User-defined classes which are subclasses of root class owl:Thing. A
class may contain individuals, which are instances of the class, and other
subclasses.
<?xml version="1.0"?>
<rdf:RDF xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#”
xmlns:owl="http://www.w3.org/2002/07/owl#"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<owl:Ontology rdf:about="">
<rdfs:comment> comments here</rdfs:comment>
</owl:ontology>

<owl:Class rdf:about=“Person"/>
<owl:Class rdf:about=“City"/>
<owl:Class rdf:about=“Country"/>

</rdf:RDF>

Similar to Object-Type in ORM, Entity in EER, or Class in UML
Jarrar © 2013

11
Individuals
Individuals
•  Constants: Edward_Said, Palestine.
•  An individual is a member/instance of a class
<Man rdf:about=“Edward_Said" />
<Country rdf:about=“Palestine" />
<City rdf:about=“Jerusalem" />

àNotice that there is no way in ORM/UML/EER to add instance of
concepts as art of the schema.

Jarrar © 2013

12
Properties (ObjectProperty)
owl:ObjectProperty
•  A relation between instances of two classes.
•  Binary predicates (hasAuthor(__, __) ).
<owl:ObjectProperty rdf:about=“hasAuthor">
<rdfs:domain rdf:resource="# Book"/>
<rdfs:range rdf:resource="#Person"/>
</owl:ObjectProperty>
Similar to a binary relation in ORM between two entity types.
Book

Person
HasAuthor

But unlike ORM, property may not have domain and range, these are
used for reasoning
Jarrar © 2013

13
Properties (DatatypeProperty)
owl:DataTypeProperty
•  Relation between instances of classes and values.
•  The range of a literal datatype (use XML Schema datatypes).
<owl:DatatypeProperty rdf:about=“hasTitle">
<rdfs:domain rdf:resource=“Book" />
<rdfs:range rdf:resource=" xsd:string"/>
</owl:DatatypeProperty>
<owl:DatatypeProperty rdf:about=“hasPrice">
<rdfs:domain rdf:resource=“Book" />
<rdfs:range rdf:resource="xsd:integer"/>
</owl:DatatypeProperty>
Similar to a binary relation in ORM between an Entity and a Value.
Book

Title
Has

Jarrar © 2013

14
Properties (Assertions)
Examples of how to instances of properties
<rdf:Description rdf:about=” http://en.wikipedia.org/wiki/Orientalism">
<hasAuther rdf:resource="http://en.wikipedia.org/wiki/Edward_Said"/>
<hasTitle rdf:datatype=”xsd:string">Orientalism</hasTitle>
<hasPrice rdf:datatype=”xsd:integer">51</hasPrice>
</rdf:Description>
<rdf:Description rdf:about="John">
<hasWife rdf:resource="Mary"/>
</rdf:Description>

Jarrar © 2013

15
Special Classes and Properties
•  Top class: T
owl:Thing
contains all individuals of the domain.

• 

Bottom class: ┴
owl:Nothing
contains no individuals(empty class).

• 

Universal property: U
owl:topObjectProperty
links every individual to every individual.

Jarrar © 2013

16
Class Expression Axioms

Part 3/8

•  Subclass Axioms
•  Equivalent Classes
•  Disjoint Classes
•  Disjoint Union of Class Expressions

Jarrar © 2013

17
Class Expression Axioms
Subclass Axioms
rdfs:subClassOf
Notice that rdfs:subClassOf is part of RDFS, not OWL. This to show that
OWL extends RDF/RDFS.
SubClassOf( a:Man a:Person ) means that Each Man is a Person.
<owl:Class rdf:about=“Man">
<rdfs:subClassOf rdf:resource=“Person"/>
</owl:Class>
<owl:Class rdf:about=“Book">
<rdfs:subClassOf rdf:resource=“Publication" />
</owl:Class>

Publication

Book

Similar to the SubType relation ORM, UML and EER,

Jarrar © 2013

18
Class Expression Axioms
Equivalent Classes
owl:equivalentClass
•  States equivalence (i.e., class extension) of two named classes.
•  Useful when integrating or mapping between two different ontologies.
<owl:Class rdf:about=“Palestine_President">
<owl:equivalentClass rdf:resource=“PrincipalResidentOfPlestine"/>
</owl:Class>
•  A class axiom may contain (multiple) owl:equivalentClass statements.
•  The classes Being, Human and Person are semantically equivalent to
each other.
<owl:Class rdf:about=“Being">
<owl:equivalentClass rdf:resource=“Human"/>
<owl:equivalentClass rdf:resource=“Person"/>
</owl:Class>
Jarrar © 2013

19
Class Expression Axioms
Disjoint Classes
owl:AllDisjointClasses
•  To state that these classes have no individuals in common.
•  AllDisjointClasses (C1 ... Cn ): all of the classes Ci, 1 ≤ i ≤ n, are
pairwise disjoint; that is, no individual can be at the same time an
instance of both Ci and Cj for i ≠ j.
<owl:AllDisjointClasses>
<owl:members rdf:parseType="Collection">
<owl:Class rdf:about="Woman"/>
<owl:Class rdf:about="Man"/>
</owl:members>
</owl:AllDisjointClasses>

A1
Jarrar © 2013

A

A2

⨂

…

An
20
Class Expression Axioms
Disjoint Union of Class Expressions
owl:disjointUnionOf
•  DisjointUnion (C C1 ... Cn ): a class C is a disjoint union of the classes
Ci, 1 ≤ i ≤ n, all of which are pairwise disjoint the extensions of all Ci
exactly cover the extension of C.
•  DisjointUnion (Person Female Male ) means each Person is either a
Male or a Female, each Female is a Person, each Male is a Person,
and nothing can be both a Female and a Male.
<owl:Class rdf:about="#Person">
<owl:disjointUnionOf rdf:parseType="Collection">
<rdf:Description rdf:about="#Female"/>
<rdf:Description rdf:about="#Male"/>
</owl:disjointUnionOf>

A

A1
Jarrar © 2013

A2

.

⨂

…

An
21
Class Expression Axioms
OWL2 Example1
•  Here we illustrate a simple example represented in ORM and OWL 2.
•  In the example, the illustrated OWL 2 constructs are Class, Subclass,
Union of Classes and Disjoint Classes.
<owl:Class rdf:about="&OWL2Example1:Person“/>
<owl:Class rdf:about="&OWL2Example1:Female">
<rdfs:subClassOf rdf:resource="&OWL2Example1:Person"/>
</owl:Class>
<owl:Class rdf:about="&OWL2Example1:Male">
<rdfs:subClassOf rdf:resource="&OWL2Example1:Person"/>
</owl:Class>
<owl:Class rdf:about="&OWL2Example1:Person">
<owl:equivalentClass>
<owl:Class>
<owl:unionOf rdf:parseType="Collection">
<rdf:Description rdf:about="&OWL2Example1:Female"/>
<rdf:Description rdf:about="&OWL2Example1:Male"/>
</owl:unionOf>
</owl:Class>
</owl:equivalentClass>
</owl:Class>
Jarrar © 2013

Person

Male

Female

22
Class Expression Axioms
OWL2 Example1
•  Here we illustrate a simple example represented in ORM and OWL 2.
•  In the example, the illustrated OWL 2 constructs are Class, Subclass,
Union of Classes and Disjoint Classes.
<owl:AllDisjointClasses>
<owl:members rdf:parseType="Collection">
<owl:Class rdf:about=“Female"/>
<owl:Class rdf:about="Male"/>
</owl:members>
</owl:AllDisjointClasses>

Jarrar © 2013

Person

Male

Female

23
Property Axioms
•  Object Subproperties

Part 4/8

•  Equivalent Object Properties
•  Disjoint Object Properties
•  Inverse Object Properties
•  Object Property Domain
•  Object Property Range
•  Functional Object Properties
•  Inverse-Functional Object Properties
Jarrar © 2013

24
Object Property Axioms
Object Subproperties
rdfs:subPropertyOf
Properties, like classes, can be arranged in a hierarchy.
SubPropertyOf (OP1 OP2 ): if an individual x is connected by OP1 to an
individual y, then x is also connected by OP2 to y.
The rdfs:subPropertyOf means that anything with a Borrows property with
value X also has a ChecksOut property with value X.
<owl:ObjectProperty rdf:about=“Borrows">
<rdfs:domain rdf:resource=“Person"/>
<rdfs:range rdf:resource=“Book"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about=“ChecksOut">
<rdfs:subPropertyOf rdf:resource=”Borrows" />
</owl:ObjectProperty>

...
...

...
R
S

⊆	
  

...

<owl:ObjectProperty rdf:about="hasWife">
<rdfs:subPropertyOf rdf:resource="hasSpouse"/>
</owl:ObjectProperty>

Similar to the Subset constraint in ORM.
Jarrar © 2013

25
Object Property Axioms
Equivalent Properties
owl:equivalentProperty
•  EquivalentObjectProperties (OP1 ... OPn): all of the object properties
OPi, 1 ≤ i ≤ n, are semantically equivalent to each other.
•  EquivalentObjectProperties (a:hasBrother a:hasMaleSibling) means
that having a brother is the same as having a male sibling
<owl:ObjectProperty rdf:about="hasChild">
<owl:equivalentProperty rdf:resource=”x:child"/>
</owl:ObjectProperty>
<owl:DatatypeProperty rdf:about="hasAge">
<owl:equivalentProperty rdf:resource=”y:age"/>
</owl:DatatypeProperty>

Jarrar © 2013

...
...

R =
S

...
...

26
Object Property Axioms
Disjoint Properties
owl:propertyDisjointWith
•  DisjointObjectProperties (OP1 ... OPn): all of the object properties
OPi, 1 ≤ i ≤ n, are pairwise disjoint; that is, no individual x can be
connected to an individual y by both OPi and OPj for i ≠ j .
•  DisjointObjectProperties( a:hasFather a:hasMother ) means that
Fatherhood is disjoint with motherhood.
<rdf:Description rdf:about="hasFather">
<owl:propertyDisjointWith rdf:resource="hasMother"/>
</rdf:Description>

...

...
R

...

⨂

...

S
Jarrar © 2013

27
Object Property Axioms
Inverse Object Properties
owl:inverseOf
•  If a property P is tagged as the owl:inverseOf Q, then for all x and y:
P(x,y) iff Q(y,x).
•  Note that the syntax for owl:inverseOf takes a property name as an
argument. A iff B means (A implies B) and (B implies A).
•  InverseObjectProperties (OP1 OP2): the object property OP1 is an
inverse of the object property OP2, that is if an individual x is
connected by OP1 to an individual y, then y is also connected by OP2
to x, and vice versa.
<owl:ObjectProperty rdf:about="hasParent">
<owl:inverseOf rdf:resource="hasChild"/>
</owl:ObjectProperty>

...

...

hasParent/hasChild
Jarrar © 2013

28
Object Property Axioms
Property Domain
rdfs:domain
•  ObjectPropertyDomain (OP C): the domain of the object property
OP is the class C, that is, if an individual x is connected by OP with
some other individual, then x is an instance of C.
•  ObjectPropertyDomain( a:hasDog a:Person ) means that only people
can own dogs.
<owl:ObjectProperty rdf:about=“hasDog">
<rdfs:domain rdf:resource=“Person"/>
…
</owl:ObjectProperty>

Person

Jarrar © 2013

hasDog/

...

29
Object Property Axioms
Property Range
rdfs:range
•  ObjectPropertyRange(OP C): the range of the object property OP is
the class C , that is, if some individual is connected by OP with an
individual x, then x is an instance of C.
•  ObjectPropertyRange( a:hasDog a:Dog ) means that the range of the
a:hasDog property is the class a:Dog.
<owl:ObjectProperty rdf:about="#hasDog">
…
<rdfs:range rdf:resource="#Dog"/>
</owl:ObjectProperty>

hasDog/
Jarrar © 2013

Dog
30
Object Property Axioms
Functional Object Property
Owl:FunctionalProperty
•  FunctionalObjectProperty (OP): the object property OP is functional,
that is, for each individual x, there can be at most one distinct
individual y such that x is connected by OP to y.
•  FunctionalObjectProperty (a:hasFather ) means that each individual
can have at most one father.
<owl:FunctionalProperty rdf:about=“#hasFather"/>

A

R

B
Jarrar © 2013

31
Object Property Axioms
Inverse-Functional Object Property
Owl:InverseFunctionalProperty
•  InverseFunctionalObjectProperty (OPI ): the object property OPI is
inverse-functional, that is, for each individual x, there can be at most
one individual y such that y is connected by OP with x.
•  InverseFunctionalObjectProperty (a:fatherOf ) means that each
object can have at most one father.
<owl:InverseFunctionalProperty rdf:about=“#FatherOf"/>

A

R

B

There is no inverse for Datatype properties
Jarrar © 2013

32
Object Property Axioms
OWL2 Example2
•  Here we illustrate a simple example represented in ORM and OWL 2.
•  In the example, the illustrated OWL 2 constructs are Object
Subproperties, Inverse Object Properties, Object Property Domain,
Object Property Range and Functional Object Properties.
Drives

Gender

Has

Person

DrivenBy

Vehicle

Owns

<owl:Class rdf:about="&OWL2Example2:Person"/>
<owl:Class rdf:about="&OWL2Example2:Vehicle"/>
<owl:Class rdf:about="&OWL2Example2:Gender"/>
<owl:ObjectProperty rdf:about="&OWL2Example2:Drives">
<rdfs:domain rdf:resource="&OWL2Example2:Person"/>
<rdfs:range rdf:resource="&OWL2Example2:Vehicle"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="&DrivenBy">
<owl:inverseOf rdf:resource="OWL2Example2:Drives"/>
</owl:ObjectProperty>

<owl:ObjectProperty rdf:about="&OWL2Example2:Owns">
<rdfs:domain rdf:resource="&OWL2Example2:Person"/>
<rdfs:range rdf:resource="&OWL2Example2:Vehicle"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="&OWL2Example2:Owns">
<rdfs:subPropertyOf rdf:resource="&OWL2Example2:Drives"/>
</owl:ObjectProperty>
<owl:FunctionalProperty rdf:about=“&OWL2Example2:Has/>

Jarrar © 2013

33
Assertions

Part 5/8

•  Individual Equality

•  Individual Inequality

Jarrar © 2013

34
Assertions
Individual Equality
owl:sameAs
•  Identity between Individuals
•  This mechanism is similar to that for classes, but declares two
individuals to be identical.
•  SameIndividual ( a1 ... an ): all of the individuals ai, 1 ≤ i ≤ n, are equal
to each other(synonymes).
<rdf:Description rdf:about="http://www.amazon.com/Orientalism-Edward-W-Said/dp/039474067X">
<owl:sameAs rdf:resource="http://en.wikipedia.org/wiki/Orientalis"/>
</rdf:Description>
<rdf:Description rdf:about=“x:Edward_Said">
<owl:sameAs rdf:resource=“# E_Said"/>
</rdf:Description>

Jarrar © 2013

35
Assertions
Individual Inequality
owl:differentFrom
•  An owl:differentFrom statement indicates that two URI references refer
to different individuals.
<rdf:Description rdf:about="http:/amazon.com/Orientalism-Edward-W-Said/dp/039474067X">
<owl:differentFrom rdf:resource="http://www.youtube.com/watch?v=X3iA73JXIFo"/>
</rdf:Description>

<rdf:Description rdf:about="John">
<owl:differentFrom rdf:resource="Bill"/>
</rdf:Description>

Jarrar © 2013

36
Class Expressions
Propositional Connectives and Enumeration of Individuals
•  Intersection of Class Expressions

Part 6/8

•  Union of Class Expressions
•  Complement of Class Expressions
•  Enumeration of Individuals

Jarrar © 2013

37
Class Expressions
Intersection of Class Expressions
owl:intersectionOf
Describes a class for which the class extension contains precisely those
individuals that are members of the class extension of all class
descriptions in the list.
<owl:Class rdf:about="Mother">
<owl:equivalentClass>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<owl:Class rdf:about="Woman"/>
<owl:Class rdf:about="Parent"/>
A_Intersection
</owl:intersectionOf>
⊓
</owl:Class>
</owl:equivalentClass>
</owl:Class>
A1 A2 .	
  .	
  .

An

Proposed Notation
Jarrar © 2013

38
Class Expressions
Union of Class Expressions
owl:unionOf
The union of two classes contains every individual which is contained in
at least one of these classes. Therefore we could characterize the class
of all parents as the union of the classes Mother and Father:
<owl:Class rdf:about="Parent">
<owl:equivalentClass>
<owl:Class>
<owl:unionOf rdf:parseType="Collection">
<owl:Class rdf:about="Mother"/>
<owl:Class rdf:about="Father"/>
</owl:unionOf>
</owl:Class>
</owl:equivalentClass>
</owl:Class>
A1

Jarrar © 2013

A
A2

…

An
39
Class Expressions
Complement of Class Expressions
owl:complementOf
The complement of a class corresponds to logical negation: it consists of
exactly those objects which are not members of the class itself. The
following definition of childless persons uses the class complement and
also demonstrates that class constructors can be nested:
<owl:Class rdf:about="ChildlessPerson">
<owl:equivalentClass>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<owl:Class rdf:about="Person"/>
<owl:Class>
<owl:complementOf rdf:resource="Parent"/>
</owl:Class>
Proposed Notation
</owl:intersectionOf>
</owl:Class>
</owl:equivalentClass>
</owl:Class>

NotA
¬
A

Jarrar © 2013

40
Class Expressions
Enumeration of Individuals
owl:one of
•  A way to describe a class is just to enumerate all its instances.
•  These instances are the only members of PalestinianCities. Classes
defined this way are sometimes referred to as closed classes or
enumerated sets. We cannot have more, or less instances.
<owl:Class rdf:about=”PalestinianCities">
<owl:equivalentClass>
<owl:Class>
<owl:oneOf rdf:parseType="Collection">
<rdf:Description rdf:about="Jerusalem "/>
<rdf:Description rdf:about="Aka"/>
<rdf:Description rdf:about=”Ramallah"/>
…
{b1,	
  …	
  ,	
  bn}
</owl:oneOf>
</owl:Class>
...
B	
  ≡ {b1,	
  …	
  ,	
  bn}
B
</owl:equivalentClass>
</owl:Class>
Jarrar © 2013

41
Class Expressions -Property Restrictions

Part 7/8
•  Existential Quantification
•  Universal Quantification
•  Individual Value Restriction
•  Self-Restriction

Jarrar © 2013

42
Class Expressions
Object Property Restrictions- Existential Quantification

owl:someValuesFrom
•  Defines a class as the set of all individuals that are connected via a
particular property to another individual which is an instance of a
certain class.
•  Each Account must have at least one Owner that is a Person.
<owl:Class rdf:about=“Account">
<owl:equivalentClass>
<owl:Restriction>
<owl:onProperty rdf:resource="#HasOwner" />
<owl:someValuesFrom rdf:resource="#Person" />
</owl:Restriction>
</owl:equivalentClass>
</owl:Class>
Account

HasOwner/	
  

è Same for DatatypeProperty
Jarrar © 2013

Person

43
Class Expressions
Object Property Restrictions- Universal Quantification

owl:allValuesFrom
•  To describe a class of individuals for which all related individuals must be
instances of a given class
•  For every Account, if they have owners, all the owners must be Persons.
<owl:Class rdf:about=“Account">
<owl:equivalentClass>
<owl:Restriction>
<owl:onProperty rdf:resource="#HasOwner" />
<owl:allValuesFrom rdf:resource="#Person" />
</owl:Restriction>
</owl:equivalentClass>
</owl:Class>
è Same for DatatypeProperty
Jarrar © 2013

44
Class Expressions
Object Property Restrictions- Individual Value Restriction

owl:hasValue
ObjectHasValue( OP a ): consists of an object property OP and an
individual a, and it contains all those individuals that are connected by
OP to a. For example, we can create a class “BirzeitLovers” to include
all those who love Birzeit.
<owl:Class rdf:about=“BirzeitLovers">
<owl:equivalentClass>
<owl:Restriction>
<owl:onProperty rdf:resource=”#Loves"/>
<owl:hasValue rdf:resource="#Birzeit"/>
</owl:Restriction>
</owl:equivalentClass>
BirzeitLovers
</owl:Class>

individual

	
  

Birzeit

loves/

(Proposed Notation)
Jarrar © 2013

45
Class Expressions
Object Property Restrictions- Self Restriction

owl:hasSelf
•  ObjectHasSelf (OP): a class expression that contains all individuals that
are connected to themselves via OPE
•  ObjectHasSelf ( a:loves ) contains those individuals that love themselves.
<owl:Class rdf:about=“SelfLover">
<owl:equivalentClass>
<owl:Restriction>
<owl:onProperty rdf:resource="#loves"/>
<owl:hasSelf rdf:datatype="&xsd;boolean">true</owl:hasSelf>
</owl:Restriction>
</owl:equivalentClass>
SelfLover
</owl:Class>
Self
Jarrar © 2013

Loves/

(Proposed
Notation)
46
Class Expressions -Cardinality Restrictions

Part 8/8
•  Minimum Cardinality
•  Maximum Cardinality
•  Exact Cardinality

Jarrar © 2013

47
Class Expressions - Cardinality
Owl:minCardinality
•  OWL allows us to place some restrictions on properties, such as
owl:minCardinality.
•  Each student must be EnrolledIn in 3 things, at least
<owl:Class rdf:about=“Student">
<rdfs:subClassOf>
<owl:Restriction>
<owl:minCardinality rdf:datatype="&xsd;nonNegativeInteger“> 3
</owl:minCardinality>
<owl:onProperty rdf:resource=”#EnrolledIn"/>
</owl:Restriction>
</rdfs:subClassOf>
</owl:Class>
≥	
  n

A

Jarrar © 2013

rA

Thing

48
Class Expressions - Cardinality
Owl:maxCardinality
•  OWL allows us to place some restrictions on properties, such as
owl:maxCardinality.
•  Each student must be EnrolledIn in 6 things, at most
<owl:Class rdf:about=“Student">
<rdfs:subClassOf>
<owl:Restriction>
<owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger“> 6
</owl:MaxCardinality>
<owl:onProperty rdf:resource=”EnrolledIn"/>
</owl:Restriction>
</rdfs:subClassOf>
</owl:Class>

A
Jarrar © 2013

≤	
  n

rA

Thing
49
Class Expressions - Cardinality
Owl:Cardinality
•  OWL allows us to place some restrictions on properties, such as
owl:Cardinality.
•  Each student must be EnrolledIn in 5 things, exactly
<owl:Class rdf:about=“Student">
<rdfs:subClassOf>
<owl:Restriction>
<owl:Cardinality rdf:datatype="&xsd;nonNegativeInteger“> 5
</owl:Cardinality>
<owl:onProperty rdf:resource=”EnrolledIn"/>
</owl:Restriction>
</rdfs:subClassOf>
</owl:Class>

A

Jarrar © 2013

=	
  n

rA

Thing

50
Class Expressions - Cardinality
owl:qualifiedCardinality
•  Same as owl:Cardinality, but we restrict the property with its range.
•  Each student must be EnrolledIn in 5 courses, exactly
<owl:Class rdf:about=“Student">
<rdfs:subClassOf>
<owl:Restriction>
<owl:qualifiedCardinality rdf:datatype="&xsd;nonNegativeInteger“> 5
</owl:qualifiedCardinality>
<owl:onProperty rdf:resource=”EnrolledIn"/>
<owl:onClass rdf:resource=”Course"/>
</owl:Restriction>
</rdfs:subClassOf>
=	
  n
rA
B
A
</owl:Class>

Similarly, there is minQualifiedCardinality and maxQualifiedCardinality
Jarrar © 2013

51
XML Datatypes
xsd:string
xsd:int
xsd:gYearMonth
xsd:normalizedString
xsd:short
xsd:gYear
xsd:boolean
xsd:byte
xsd:gMonthDay
xsd:decimal
xsd:unsignedLong
xsd:gDay
xsd:float
xsd:unsignedInt
xsd:gMonth
xsd:double
xsd:unsignedShort
xsd:anyURI
xsd:integer
xsd:unsignedByte
xsd:token
xsd:nonNegativeInteger xsd:hexBinary
xsd:language
xsd:positiveInteger
xsd:base64Binary
xsd:NMTOKEN
xsd:nonPositiveInteger
xsd:dateTime
xsd:Name
xsd:negativeInteger
xsd:time
xsd:NCName
xsd:long
xsd:date
The above datatypes, plus rdfs:Literal, form the built-in OWL datatypes.
Jarrar © 2013

52
References
www.w3c.org
www.w3schools.com

Jarrar © 2013

53

More Related Content

What's hot (20)

Owl web ontology language
Owl  web ontology languageOwl  web ontology language
Owl web ontology language
 
Understanding RDF: the Resource Description Framework in Context (1999)
Understanding RDF: the Resource Description Framework in Context  (1999)Understanding RDF: the Resource Description Framework in Context  (1999)
Understanding RDF: the Resource Description Framework in Context (1999)
 
Semantic web
Semantic webSemantic web
Semantic web
 
Introduction to RDF
Introduction to RDFIntroduction to RDF
Introduction to RDF
 
semantic web & natural language
semantic web & natural languagesemantic web & natural language
semantic web & natural language
 
Introduction to RDF
Introduction to RDFIntroduction to RDF
Introduction to RDF
 
Rdf
RdfRdf
Rdf
 
sw owl
 sw owl sw owl
sw owl
 
General Introduction for Semantic Web and Linked Open Data
General Introduction for Semantic Web and Linked Open DataGeneral Introduction for Semantic Web and Linked Open Data
General Introduction for Semantic Web and Linked Open Data
 
Semantic Web in Action
Semantic Web in ActionSemantic Web in Action
Semantic Web in Action
 
Semantic Web: From Representations to Applications
Semantic Web: From Representations to ApplicationsSemantic Web: From Representations to Applications
Semantic Web: From Representations to Applications
 
Ontologies in RDF-S/OWL
Ontologies in RDF-S/OWLOntologies in RDF-S/OWL
Ontologies in RDF-S/OWL
 
Rdf And Rdf Schema For Ontology Specification
Rdf And Rdf Schema For Ontology SpecificationRdf And Rdf Schema For Ontology Specification
Rdf And Rdf Schema For Ontology Specification
 
RDF and OWL
RDF and OWLRDF and OWL
RDF and OWL
 
Jarrar: RDFs -RDF Schema
Jarrar: RDFs -RDF SchemaJarrar: RDFs -RDF Schema
Jarrar: RDFs -RDF Schema
 
Data in RDF
Data in RDFData in RDF
Data in RDF
 
semanticweb
semanticwebsemanticweb
semanticweb
 
OWL briefing
OWL briefingOWL briefing
OWL briefing
 
Ist16-04 An introduction to RDF
Ist16-04 An introduction to RDF Ist16-04 An introduction to RDF
Ist16-04 An introduction to RDF
 
SHACL Overview
SHACL OverviewSHACL Overview
SHACL Overview
 

Viewers also liked

Jarrar: SPARQL - RDF Query Language
Jarrar: SPARQL - RDF Query LanguageJarrar: SPARQL - RDF Query Language
Jarrar: SPARQL - RDF Query LanguageMustafa Jarrar
 
Jarrar: RDF Stores: Challenges and Solutions
Jarrar: RDF Stores: Challenges and SolutionsJarrar: RDF Stores: Challenges and Solutions
Jarrar: RDF Stores: Challenges and SolutionsMustafa Jarrar
 
Jarrar: RDFS ( RDF Schema)
Jarrar: RDFS ( RDF Schema) Jarrar: RDFS ( RDF Schema)
Jarrar: RDFS ( RDF Schema) Mustafa Jarrar
 
Open Standards for the Semantic Web: XML / RDF(S) / OWL / SOAP
Open Standards for the Semantic Web: XML / RDF(S) / OWL / SOAPOpen Standards for the Semantic Web: XML / RDF(S) / OWL / SOAP
Open Standards for the Semantic Web: XML / RDF(S) / OWL / SOAPPieter De Leenheer
 
Ontology Engineering: representation in OWL
Ontology Engineering: representation in OWLOntology Engineering: representation in OWL
Ontology Engineering: representation in OWLGuus Schreiber
 
The Nature of Information
The Nature of InformationThe Nature of Information
The Nature of InformationAdrian Paschke
 
Semantic Technologies and Triplestores for Business Intelligence
Semantic Technologies and Triplestores for Business IntelligenceSemantic Technologies and Triplestores for Business Intelligence
Semantic Technologies and Triplestores for Business IntelligenceMarin Dimitrov
 
Jarrar: Web 2 Data Mashups
Jarrar: Web 2 Data MashupsJarrar: Web 2 Data Mashups
Jarrar: Web 2 Data MashupsMustafa Jarrar
 
Jarrar: Data Integration and Fusion using RDF
Jarrar: Data Integration and Fusion using RDFJarrar: Data Integration and Fusion using RDF
Jarrar: Data Integration and Fusion using RDFMustafa Jarrar
 
Jarrar: Architectural Solutions in Data Integration
Jarrar: Architectural Solutions in Data IntegrationJarrar: Architectural Solutions in Data Integration
Jarrar: Architectural Solutions in Data IntegrationMustafa Jarrar
 
Jarrar: Sparql Project
Jarrar: Sparql ProjectJarrar: Sparql Project
Jarrar: Sparql ProjectMustafa Jarrar
 
Jarrar: Knowledge Engineering- Course Outline
Jarrar: Knowledge Engineering- Course OutlineJarrar: Knowledge Engineering- Course Outline
Jarrar: Knowledge Engineering- Course OutlineMustafa Jarrar
 
Jarrar: Subtype Relations and Constraints
Jarrar: Subtype Relations and ConstraintsJarrar: Subtype Relations and Constraints
Jarrar: Subtype Relations and ConstraintsMustafa Jarrar
 
Jarrar: Introduction to Data Integration
Jarrar: Introduction to Data IntegrationJarrar: Introduction to Data Integration
Jarrar: Introduction to Data IntegrationMustafa Jarrar
 
Jarrar: Data Fusion using RDF
Jarrar: Data Fusion using RDFJarrar: Data Fusion using RDF
Jarrar: Data Fusion using RDFMustafa Jarrar
 
Jarrar: The Next Generation of the Web 3.0: The Semantic Web Vesion
Jarrar: The Next Generation of the Web 3.0: The Semantic Web VesionJarrar: The Next Generation of the Web 3.0: The Semantic Web Vesion
Jarrar: The Next Generation of the Web 3.0: The Semantic Web VesionMustafa Jarrar
 

Viewers also liked (20)

Jarrar: SPARQL - RDF Query Language
Jarrar: SPARQL - RDF Query LanguageJarrar: SPARQL - RDF Query Language
Jarrar: SPARQL - RDF Query Language
 
Jarrar: Zinnar
Jarrar: ZinnarJarrar: Zinnar
Jarrar: Zinnar
 
Jarrar: RDF Stores: Challenges and Solutions
Jarrar: RDF Stores: Challenges and SolutionsJarrar: RDF Stores: Challenges and Solutions
Jarrar: RDF Stores: Challenges and Solutions
 
Jarrar: RDFa
Jarrar: RDFaJarrar: RDFa
Jarrar: RDFa
 
Jarrar: RDFS ( RDF Schema)
Jarrar: RDFS ( RDF Schema) Jarrar: RDFS ( RDF Schema)
Jarrar: RDFS ( RDF Schema)
 
Open Standards for the Semantic Web: XML / RDF(S) / OWL / SOAP
Open Standards for the Semantic Web: XML / RDF(S) / OWL / SOAPOpen Standards for the Semantic Web: XML / RDF(S) / OWL / SOAP
Open Standards for the Semantic Web: XML / RDF(S) / OWL / SOAP
 
Ontology Engineering: representation in OWL
Ontology Engineering: representation in OWLOntology Engineering: representation in OWL
Ontology Engineering: representation in OWL
 
The Nature of Information
The Nature of InformationThe Nature of Information
The Nature of Information
 
Semantic Technologies and Triplestores for Business Intelligence
Semantic Technologies and Triplestores for Business IntelligenceSemantic Technologies and Triplestores for Business Intelligence
Semantic Technologies and Triplestores for Business Intelligence
 
Ontology
OntologyOntology
Ontology
 
Jarrar: Web 2 Data Mashups
Jarrar: Web 2 Data MashupsJarrar: Web 2 Data Mashups
Jarrar: Web 2 Data Mashups
 
Jarrar: Data Integration and Fusion using RDF
Jarrar: Data Integration and Fusion using RDFJarrar: Data Integration and Fusion using RDF
Jarrar: Data Integration and Fusion using RDF
 
Jarrar: Linked Data
Jarrar: Linked DataJarrar: Linked Data
Jarrar: Linked Data
 
Jarrar: Architectural Solutions in Data Integration
Jarrar: Architectural Solutions in Data IntegrationJarrar: Architectural Solutions in Data Integration
Jarrar: Architectural Solutions in Data Integration
 
Jarrar: Sparql Project
Jarrar: Sparql ProjectJarrar: Sparql Project
Jarrar: Sparql Project
 
Jarrar: Knowledge Engineering- Course Outline
Jarrar: Knowledge Engineering- Course OutlineJarrar: Knowledge Engineering- Course Outline
Jarrar: Knowledge Engineering- Course Outline
 
Jarrar: Subtype Relations and Constraints
Jarrar: Subtype Relations and ConstraintsJarrar: Subtype Relations and Constraints
Jarrar: Subtype Relations and Constraints
 
Jarrar: Introduction to Data Integration
Jarrar: Introduction to Data IntegrationJarrar: Introduction to Data Integration
Jarrar: Introduction to Data Integration
 
Jarrar: Data Fusion using RDF
Jarrar: Data Fusion using RDFJarrar: Data Fusion using RDF
Jarrar: Data Fusion using RDF
 
Jarrar: The Next Generation of the Web 3.0: The Semantic Web Vesion
Jarrar: The Next Generation of the Web 3.0: The Semantic Web VesionJarrar: The Next Generation of the Web 3.0: The Semantic Web Vesion
Jarrar: The Next Generation of the Web 3.0: The Semantic Web Vesion
 

Similar to Jarrar: OWL (Web Ontology Language)

Chapter 4 semantic web
Chapter 4 semantic webChapter 4 semantic web
Chapter 4 semantic webR A Akerkar
 
Tutorial OWL and drug discovery ICBO 2013
Tutorial OWL and drug discovery ICBO 2013Tutorial OWL and drug discovery ICBO 2013
Tutorial OWL and drug discovery ICBO 2013Samuel Croset
 
WEB ONTOLOGY LANGUAGE: OWL
WEB ONTOLOGY LANGUAGE: OWLWEB ONTOLOGY LANGUAGE: OWL
WEB ONTOLOGY LANGUAGE: OWLTochukwu Udeh
 
Ontologies and Vocabularies
Ontologies and VocabulariesOntologies and Vocabularies
Ontologies and Vocabulariesseanb
 
OODBMS Concepts - National University of Singapore.pdf
OODBMS Concepts - National University of Singapore.pdfOODBMS Concepts - National University of Singapore.pdf
OODBMS Concepts - National University of Singapore.pdfssuserd5e338
 
Semantic Modelling using Semantic Web Technology
Semantic Modelling using Semantic Web TechnologySemantic Modelling using Semantic Web Technology
Semantic Modelling using Semantic Web TechnologyRinke Hoekstra
 
Ontologies and Ontology Languages: RDFS, OWL, and SKOS: University of Florida...
Ontologies and Ontology Languages: RDFS, OWL, and SKOS: University of Florida...Ontologies and Ontology Languages: RDFS, OWL, and SKOS: University of Florida...
Ontologies and Ontology Languages: RDFS, OWL, and SKOS: University of Florida...Allison Jai O'Dell
 
Jarrar: ORM in Description Logic
Jarrar: ORM in Description Logic  Jarrar: ORM in Description Logic
Jarrar: ORM in Description Logic Mustafa Jarrar
 
CS6010 Social Network Analysis Unit II
CS6010 Social Network Analysis   Unit IICS6010 Social Network Analysis   Unit II
CS6010 Social Network Analysis Unit IIpkaviya
 
Pal gov.tutorial2.session5 1.rdf_jarrar
Pal gov.tutorial2.session5 1.rdf_jarrarPal gov.tutorial2.session5 1.rdf_jarrar
Pal gov.tutorial2.session5 1.rdf_jarrarMustafa Jarrar
 
Vu Semantic Web Meeting 20091123
Vu Semantic Web Meeting 20091123Vu Semantic Web Meeting 20091123
Vu Semantic Web Meeting 20091123Rinke Hoekstra
 
Integrating a Domain Ontology Development Environment and an Ontology Search ...
Integrating a Domain Ontology Development Environment and an Ontology Search ...Integrating a Domain Ontology Development Environment and an Ontology Search ...
Integrating a Domain Ontology Development Environment and an Ontology Search ...Takeshi Morita
 
introduction to oops presentation
 introduction to oops presentation introduction to oops presentation
introduction to oops presentationHarshithaAllu
 

Similar to Jarrar: OWL (Web Ontology Language) (20)

Chapter 4 semantic web
Chapter 4 semantic webChapter 4 semantic web
Chapter 4 semantic web
 
Tutorial OWL and drug discovery ICBO 2013
Tutorial OWL and drug discovery ICBO 2013Tutorial OWL and drug discovery ICBO 2013
Tutorial OWL and drug discovery ICBO 2013
 
Semantic Web - OWL
Semantic Web - OWLSemantic Web - OWL
Semantic Web - OWL
 
WEB ONTOLOGY LANGUAGE: OWL
WEB ONTOLOGY LANGUAGE: OWLWEB ONTOLOGY LANGUAGE: OWL
WEB ONTOLOGY LANGUAGE: OWL
 
Owl assignment udeh
Owl assignment udehOwl assignment udeh
Owl assignment udeh
 
Ontology Engineering
Ontology EngineeringOntology Engineering
Ontology Engineering
 
eureka09
eureka09eureka09
eureka09
 
eureka09
eureka09eureka09
eureka09
 
Ontologies and Vocabularies
Ontologies and VocabulariesOntologies and Vocabularies
Ontologies and Vocabularies
 
Linked (Open) Data
Linked (Open) DataLinked (Open) Data
Linked (Open) Data
 
OODBMS Concepts - National University of Singapore.pdf
OODBMS Concepts - National University of Singapore.pdfOODBMS Concepts - National University of Singapore.pdf
OODBMS Concepts - National University of Singapore.pdf
 
Semantic Modelling using Semantic Web Technology
Semantic Modelling using Semantic Web TechnologySemantic Modelling using Semantic Web Technology
Semantic Modelling using Semantic Web Technology
 
Ontologies and Ontology Languages: RDFS, OWL, and SKOS: University of Florida...
Ontologies and Ontology Languages: RDFS, OWL, and SKOS: University of Florida...Ontologies and Ontology Languages: RDFS, OWL, and SKOS: University of Florida...
Ontologies and Ontology Languages: RDFS, OWL, and SKOS: University of Florida...
 
Jarrar: ORM in Description Logic
Jarrar: ORM in Description Logic  Jarrar: ORM in Description Logic
Jarrar: ORM in Description Logic
 
CS6010 Social Network Analysis Unit II
CS6010 Social Network Analysis   Unit IICS6010 Social Network Analysis   Unit II
CS6010 Social Network Analysis Unit II
 
Pal gov.tutorial2.session5 1.rdf_jarrar
Pal gov.tutorial2.session5 1.rdf_jarrarPal gov.tutorial2.session5 1.rdf_jarrar
Pal gov.tutorial2.session5 1.rdf_jarrar
 
Vu Semantic Web Meeting 20091123
Vu Semantic Web Meeting 20091123Vu Semantic Web Meeting 20091123
Vu Semantic Web Meeting 20091123
 
Integrating a Domain Ontology Development Environment and an Ontology Search ...
Integrating a Domain Ontology Development Environment and an Ontology Search ...Integrating a Domain Ontology Development Environment and an Ontology Search ...
Integrating a Domain Ontology Development Environment and an Ontology Search ...
 
OWL Simple Properties.pptx
OWL Simple Properties.pptxOWL Simple Properties.pptx
OWL Simple Properties.pptx
 
introduction to oops presentation
 introduction to oops presentation introduction to oops presentation
introduction to oops presentation
 

Recently uploaded

Planning a health career 4th Quarter.pptx
Planning a health career 4th Quarter.pptxPlanning a health career 4th Quarter.pptx
Planning a health career 4th Quarter.pptxLigayaBacuel1
 
ENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomnelietumpap1
 
Quarter 4 Peace-education.pptx Catch Up Friday
Quarter 4 Peace-education.pptx Catch Up FridayQuarter 4 Peace-education.pptx Catch Up Friday
Quarter 4 Peace-education.pptx Catch Up FridayMakMakNepo
 
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfFraming an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfUjwalaBharambe
 
Judging the Relevance and worth of ideas part 2.pptx
Judging the Relevance  and worth of ideas part 2.pptxJudging the Relevance  and worth of ideas part 2.pptx
Judging the Relevance and worth of ideas part 2.pptxSherlyMaeNeri
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Mark Reed
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxMULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxAnupkumar Sharma
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Celine George
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxGrade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxChelloAnnAsuncion2
 
How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17Celine George
 
ROOT CAUSE ANALYSIS PowerPoint Presentation
ROOT CAUSE ANALYSIS PowerPoint PresentationROOT CAUSE ANALYSIS PowerPoint Presentation
ROOT CAUSE ANALYSIS PowerPoint PresentationAadityaSharma884161
 
Hierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementHierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementmkooblal
 
Types of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxTypes of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxEyham Joco
 
Roles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceRoles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceSamikshaHamane
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designMIPLM
 

Recently uploaded (20)

Planning a health career 4th Quarter.pptx
Planning a health career 4th Quarter.pptxPlanning a health career 4th Quarter.pptx
Planning a health career 4th Quarter.pptx
 
ENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choom
 
Quarter 4 Peace-education.pptx Catch Up Friday
Quarter 4 Peace-education.pptx Catch Up FridayQuarter 4 Peace-education.pptx Catch Up Friday
Quarter 4 Peace-education.pptx Catch Up Friday
 
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfFraming an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
 
Judging the Relevance and worth of ideas part 2.pptx
Judging the Relevance  and worth of ideas part 2.pptxJudging the Relevance  and worth of ideas part 2.pptx
Judging the Relevance and worth of ideas part 2.pptx
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
Raw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptxRaw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptx
 
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxMULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxGrade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
 
How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
ROOT CAUSE ANALYSIS PowerPoint Presentation
ROOT CAUSE ANALYSIS PowerPoint PresentationROOT CAUSE ANALYSIS PowerPoint Presentation
ROOT CAUSE ANALYSIS PowerPoint Presentation
 
Hierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementHierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of management
 
Types of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxTypes of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptx
 
Roles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceRoles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in Pharmacovigilance
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-design
 

Jarrar: OWL (Web Ontology Language)

  • 1. Mustafa Jarrar Lecture Notes, Web Data Management (MCOM7348) University of Birzeit, Palestine 1st Semester, 2013 OWL Web Ontology Language Dr. Mustafa Jarrar University of Birzeit mjarrar@birzeit.edu www.jarrar.info Jarrar © 2013 1
  • 2. Watch this lecture and download the slides from http://jarrar-courses.blogspot.com/2013/11/web-data-management.html Thanks to Anton Deik and Rami Hodrob for their help in preparing these slides Jarrar © 2013 2
  • 4. Lecture outline 1.  Introduction to OWL 2.  OWL Basics 3.  Class Expression Axioms 4.  Property Axioms 5.  Assertions 6.  Class Expressions -Propositional Connectives and Enumeration of Individuals 7. Class Expressions​ -Property Restrictions 8. Class Expressions​ -Cardinality Restrictions Keywords: Tutorial, lecture, OWL, OWL2, RDFS, Ontology, Ontology Language, Class, Property, Object Property, Data Property, Class Expression Axioms, Class Expression, Property Axioms, Class Expressions, Enumeration, Property Restrictions, Cardinality Restrictions Jarrar © 2013 4
  • 5. What is OWL? OWL stands for Web Ontology Language. OWL became a W3C standard in February 2004. OWL 2, and OWL2 in 27 October 2009. OWL is part of the "Semantic Web Vision" – The next generation of the Web (Web 3.0). To describe the meaning/semantics of the Web data (RDF is written in terms of OWL) OWL is called an ontology language. That is, what we specify in OWL is called an ontology (Ontology is about the exact description of things and their relationships.) For the web, ontology is about the exact description of web information and relationships between them. OWL’s underpinning description logic is SHOIQ. Jarrar © 2013 5
  • 6. OWL versus RDFS and RDF OWL and RDFS are much of the same thing, but OWL allow constrains and rules. OWL can be seen as an extension of RDF/RDFS, OWL comes with a larger vocabulary and stronger syntax than RDF and RDFS. OWL has three sublanguages (OWL full, OWL DL, OWL Lite). Jarrar © 2013 6
  • 7. Variations of OWL OWL Lite –  A subset of OWL DL –  This part of OWL is easier for reasoning OWL DL –  The part of OWL Full that is in the Description Logic framework. –  Known to have decidable reasoning. OWL Full –  maximum expressiveness –  no computational guarantees (not undecidable reasoning) Jarrar © 2013 7
  • 8. OWL 2 •  OWL 2, became a W3C recommendation in 27 October 2009. •  An ontology language for the semantic Web which is extended from OWL 1 and empowered by new features. •  OWL 2 DL underpinning description logic is SROIQ. •  OWL 2 is supported by several semantic reasoners such as RacerPro 2, Pellet, Hermit and FaCT++. Jarrar © 2013 8
  • 9. Versions of OWL 2 OWL 2 EL –  Allows for subclass axioms with intersection, existential quantification, top, bottom and closed classes with only one member. –  Disallow for negation, disjunction, arbitrary universal quantification, role inverses. OWL 2 QL –  Allows for subproperties, domain, range and subclass statements. –  Disallow for closed classes. OWL 2 RL –  Allows for all axiom types, cardinality restrictions(only ≤1 and ≤0 on right hand side) and closed classes with only one member. –  Disallow certain constructors( universal and negation on left hand side and extensional and union on right hand side of subclass statements). Jarrar © 2013 9
  • 10. OWL Basics Part 2/8 •  Classes •  Individuals •  Properties •  Special Classes and Properties Jarrar © 2013 10
  • 11. Classes Owl:Class Unary predicates: Person(__), City(__). User-defined classes which are subclasses of root class owl:Thing. A class may contain individuals, which are instances of the class, and other subclasses. <?xml version="1.0"?> <rdf:RDF xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#” xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <owl:Ontology rdf:about=""> <rdfs:comment> comments here</rdfs:comment> </owl:ontology> <owl:Class rdf:about=“Person"/> <owl:Class rdf:about=“City"/> <owl:Class rdf:about=“Country"/> </rdf:RDF> Similar to Object-Type in ORM, Entity in EER, or Class in UML Jarrar © 2013 11
  • 12. Individuals Individuals •  Constants: Edward_Said, Palestine. •  An individual is a member/instance of a class <Man rdf:about=“Edward_Said" /> <Country rdf:about=“Palestine" /> <City rdf:about=“Jerusalem" /> àNotice that there is no way in ORM/UML/EER to add instance of concepts as art of the schema. Jarrar © 2013 12
  • 13. Properties (ObjectProperty) owl:ObjectProperty •  A relation between instances of two classes. •  Binary predicates (hasAuthor(__, __) ). <owl:ObjectProperty rdf:about=“hasAuthor"> <rdfs:domain rdf:resource="# Book"/> <rdfs:range rdf:resource="#Person"/> </owl:ObjectProperty> Similar to a binary relation in ORM between two entity types. Book Person HasAuthor But unlike ORM, property may not have domain and range, these are used for reasoning Jarrar © 2013 13
  • 14. Properties (DatatypeProperty) owl:DataTypeProperty •  Relation between instances of classes and values. •  The range of a literal datatype (use XML Schema datatypes). <owl:DatatypeProperty rdf:about=“hasTitle"> <rdfs:domain rdf:resource=“Book" /> <rdfs:range rdf:resource=" xsd:string"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about=“hasPrice"> <rdfs:domain rdf:resource=“Book" /> <rdfs:range rdf:resource="xsd:integer"/> </owl:DatatypeProperty> Similar to a binary relation in ORM between an Entity and a Value. Book Title Has Jarrar © 2013 14
  • 15. Properties (Assertions) Examples of how to instances of properties <rdf:Description rdf:about=” http://en.wikipedia.org/wiki/Orientalism"> <hasAuther rdf:resource="http://en.wikipedia.org/wiki/Edward_Said"/> <hasTitle rdf:datatype=”xsd:string">Orientalism</hasTitle> <hasPrice rdf:datatype=”xsd:integer">51</hasPrice> </rdf:Description> <rdf:Description rdf:about="John"> <hasWife rdf:resource="Mary"/> </rdf:Description> Jarrar © 2013 15
  • 16. Special Classes and Properties •  Top class: T owl:Thing contains all individuals of the domain. •  Bottom class: ┴ owl:Nothing contains no individuals(empty class). •  Universal property: U owl:topObjectProperty links every individual to every individual. Jarrar © 2013 16
  • 17. Class Expression Axioms Part 3/8 •  Subclass Axioms •  Equivalent Classes •  Disjoint Classes •  Disjoint Union of Class Expressions Jarrar © 2013 17
  • 18. Class Expression Axioms Subclass Axioms rdfs:subClassOf Notice that rdfs:subClassOf is part of RDFS, not OWL. This to show that OWL extends RDF/RDFS. SubClassOf( a:Man a:Person ) means that Each Man is a Person. <owl:Class rdf:about=“Man"> <rdfs:subClassOf rdf:resource=“Person"/> </owl:Class> <owl:Class rdf:about=“Book"> <rdfs:subClassOf rdf:resource=“Publication" /> </owl:Class> Publication Book Similar to the SubType relation ORM, UML and EER, Jarrar © 2013 18
  • 19. Class Expression Axioms Equivalent Classes owl:equivalentClass •  States equivalence (i.e., class extension) of two named classes. •  Useful when integrating or mapping between two different ontologies. <owl:Class rdf:about=“Palestine_President"> <owl:equivalentClass rdf:resource=“PrincipalResidentOfPlestine"/> </owl:Class> •  A class axiom may contain (multiple) owl:equivalentClass statements. •  The classes Being, Human and Person are semantically equivalent to each other. <owl:Class rdf:about=“Being"> <owl:equivalentClass rdf:resource=“Human"/> <owl:equivalentClass rdf:resource=“Person"/> </owl:Class> Jarrar © 2013 19
  • 20. Class Expression Axioms Disjoint Classes owl:AllDisjointClasses •  To state that these classes have no individuals in common. •  AllDisjointClasses (C1 ... Cn ): all of the classes Ci, 1 ≤ i ≤ n, are pairwise disjoint; that is, no individual can be at the same time an instance of both Ci and Cj for i ≠ j. <owl:AllDisjointClasses> <owl:members rdf:parseType="Collection"> <owl:Class rdf:about="Woman"/> <owl:Class rdf:about="Man"/> </owl:members> </owl:AllDisjointClasses> A1 Jarrar © 2013 A A2 ⨂ … An 20
  • 21. Class Expression Axioms Disjoint Union of Class Expressions owl:disjointUnionOf •  DisjointUnion (C C1 ... Cn ): a class C is a disjoint union of the classes Ci, 1 ≤ i ≤ n, all of which are pairwise disjoint the extensions of all Ci exactly cover the extension of C. •  DisjointUnion (Person Female Male ) means each Person is either a Male or a Female, each Female is a Person, each Male is a Person, and nothing can be both a Female and a Male. <owl:Class rdf:about="#Person"> <owl:disjointUnionOf rdf:parseType="Collection"> <rdf:Description rdf:about="#Female"/> <rdf:Description rdf:about="#Male"/> </owl:disjointUnionOf> A A1 Jarrar © 2013 A2 . ⨂ … An 21
  • 22. Class Expression Axioms OWL2 Example1 •  Here we illustrate a simple example represented in ORM and OWL 2. •  In the example, the illustrated OWL 2 constructs are Class, Subclass, Union of Classes and Disjoint Classes. <owl:Class rdf:about="&OWL2Example1:Person“/> <owl:Class rdf:about="&OWL2Example1:Female"> <rdfs:subClassOf rdf:resource="&OWL2Example1:Person"/> </owl:Class> <owl:Class rdf:about="&OWL2Example1:Male"> <rdfs:subClassOf rdf:resource="&OWL2Example1:Person"/> </owl:Class> <owl:Class rdf:about="&OWL2Example1:Person"> <owl:equivalentClass> <owl:Class> <owl:unionOf rdf:parseType="Collection"> <rdf:Description rdf:about="&OWL2Example1:Female"/> <rdf:Description rdf:about="&OWL2Example1:Male"/> </owl:unionOf> </owl:Class> </owl:equivalentClass> </owl:Class> Jarrar © 2013 Person Male Female 22
  • 23. Class Expression Axioms OWL2 Example1 •  Here we illustrate a simple example represented in ORM and OWL 2. •  In the example, the illustrated OWL 2 constructs are Class, Subclass, Union of Classes and Disjoint Classes. <owl:AllDisjointClasses> <owl:members rdf:parseType="Collection"> <owl:Class rdf:about=“Female"/> <owl:Class rdf:about="Male"/> </owl:members> </owl:AllDisjointClasses> Jarrar © 2013 Person Male Female 23
  • 24. Property Axioms •  Object Subproperties Part 4/8 •  Equivalent Object Properties •  Disjoint Object Properties •  Inverse Object Properties •  Object Property Domain •  Object Property Range •  Functional Object Properties •  Inverse-Functional Object Properties Jarrar © 2013 24
  • 25. Object Property Axioms Object Subproperties rdfs:subPropertyOf Properties, like classes, can be arranged in a hierarchy. SubPropertyOf (OP1 OP2 ): if an individual x is connected by OP1 to an individual y, then x is also connected by OP2 to y. The rdfs:subPropertyOf means that anything with a Borrows property with value X also has a ChecksOut property with value X. <owl:ObjectProperty rdf:about=“Borrows"> <rdfs:domain rdf:resource=“Person"/> <rdfs:range rdf:resource=“Book"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about=“ChecksOut"> <rdfs:subPropertyOf rdf:resource=”Borrows" /> </owl:ObjectProperty> ... ... ... R S ⊆   ... <owl:ObjectProperty rdf:about="hasWife"> <rdfs:subPropertyOf rdf:resource="hasSpouse"/> </owl:ObjectProperty> Similar to the Subset constraint in ORM. Jarrar © 2013 25
  • 26. Object Property Axioms Equivalent Properties owl:equivalentProperty •  EquivalentObjectProperties (OP1 ... OPn): all of the object properties OPi, 1 ≤ i ≤ n, are semantically equivalent to each other. •  EquivalentObjectProperties (a:hasBrother a:hasMaleSibling) means that having a brother is the same as having a male sibling <owl:ObjectProperty rdf:about="hasChild"> <owl:equivalentProperty rdf:resource=”x:child"/> </owl:ObjectProperty> <owl:DatatypeProperty rdf:about="hasAge"> <owl:equivalentProperty rdf:resource=”y:age"/> </owl:DatatypeProperty> Jarrar © 2013 ... ... R = S ... ... 26
  • 27. Object Property Axioms Disjoint Properties owl:propertyDisjointWith •  DisjointObjectProperties (OP1 ... OPn): all of the object properties OPi, 1 ≤ i ≤ n, are pairwise disjoint; that is, no individual x can be connected to an individual y by both OPi and OPj for i ≠ j . •  DisjointObjectProperties( a:hasFather a:hasMother ) means that Fatherhood is disjoint with motherhood. <rdf:Description rdf:about="hasFather"> <owl:propertyDisjointWith rdf:resource="hasMother"/> </rdf:Description> ... ... R ... ⨂ ... S Jarrar © 2013 27
  • 28. Object Property Axioms Inverse Object Properties owl:inverseOf •  If a property P is tagged as the owl:inverseOf Q, then for all x and y: P(x,y) iff Q(y,x). •  Note that the syntax for owl:inverseOf takes a property name as an argument. A iff B means (A implies B) and (B implies A). •  InverseObjectProperties (OP1 OP2): the object property OP1 is an inverse of the object property OP2, that is if an individual x is connected by OP1 to an individual y, then y is also connected by OP2 to x, and vice versa. <owl:ObjectProperty rdf:about="hasParent"> <owl:inverseOf rdf:resource="hasChild"/> </owl:ObjectProperty> ... ... hasParent/hasChild Jarrar © 2013 28
  • 29. Object Property Axioms Property Domain rdfs:domain •  ObjectPropertyDomain (OP C): the domain of the object property OP is the class C, that is, if an individual x is connected by OP with some other individual, then x is an instance of C. •  ObjectPropertyDomain( a:hasDog a:Person ) means that only people can own dogs. <owl:ObjectProperty rdf:about=“hasDog"> <rdfs:domain rdf:resource=“Person"/> … </owl:ObjectProperty> Person Jarrar © 2013 hasDog/ ... 29
  • 30. Object Property Axioms Property Range rdfs:range •  ObjectPropertyRange(OP C): the range of the object property OP is the class C , that is, if some individual is connected by OP with an individual x, then x is an instance of C. •  ObjectPropertyRange( a:hasDog a:Dog ) means that the range of the a:hasDog property is the class a:Dog. <owl:ObjectProperty rdf:about="#hasDog"> … <rdfs:range rdf:resource="#Dog"/> </owl:ObjectProperty> hasDog/ Jarrar © 2013 Dog 30
  • 31. Object Property Axioms Functional Object Property Owl:FunctionalProperty •  FunctionalObjectProperty (OP): the object property OP is functional, that is, for each individual x, there can be at most one distinct individual y such that x is connected by OP to y. •  FunctionalObjectProperty (a:hasFather ) means that each individual can have at most one father. <owl:FunctionalProperty rdf:about=“#hasFather"/> A R B Jarrar © 2013 31
  • 32. Object Property Axioms Inverse-Functional Object Property Owl:InverseFunctionalProperty •  InverseFunctionalObjectProperty (OPI ): the object property OPI is inverse-functional, that is, for each individual x, there can be at most one individual y such that y is connected by OP with x. •  InverseFunctionalObjectProperty (a:fatherOf ) means that each object can have at most one father. <owl:InverseFunctionalProperty rdf:about=“#FatherOf"/> A R B There is no inverse for Datatype properties Jarrar © 2013 32
  • 33. Object Property Axioms OWL2 Example2 •  Here we illustrate a simple example represented in ORM and OWL 2. •  In the example, the illustrated OWL 2 constructs are Object Subproperties, Inverse Object Properties, Object Property Domain, Object Property Range and Functional Object Properties. Drives Gender Has Person DrivenBy Vehicle Owns <owl:Class rdf:about="&OWL2Example2:Person"/> <owl:Class rdf:about="&OWL2Example2:Vehicle"/> <owl:Class rdf:about="&OWL2Example2:Gender"/> <owl:ObjectProperty rdf:about="&OWL2Example2:Drives"> <rdfs:domain rdf:resource="&OWL2Example2:Person"/> <rdfs:range rdf:resource="&OWL2Example2:Vehicle"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="&DrivenBy"> <owl:inverseOf rdf:resource="OWL2Example2:Drives"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="&OWL2Example2:Owns"> <rdfs:domain rdf:resource="&OWL2Example2:Person"/> <rdfs:range rdf:resource="&OWL2Example2:Vehicle"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="&OWL2Example2:Owns"> <rdfs:subPropertyOf rdf:resource="&OWL2Example2:Drives"/> </owl:ObjectProperty> <owl:FunctionalProperty rdf:about=“&OWL2Example2:Has/> Jarrar © 2013 33
  • 34. Assertions Part 5/8 •  Individual Equality •  Individual Inequality Jarrar © 2013 34
  • 35. Assertions Individual Equality owl:sameAs •  Identity between Individuals •  This mechanism is similar to that for classes, but declares two individuals to be identical. •  SameIndividual ( a1 ... an ): all of the individuals ai, 1 ≤ i ≤ n, are equal to each other(synonymes). <rdf:Description rdf:about="http://www.amazon.com/Orientalism-Edward-W-Said/dp/039474067X"> <owl:sameAs rdf:resource="http://en.wikipedia.org/wiki/Orientalis"/> </rdf:Description> <rdf:Description rdf:about=“x:Edward_Said"> <owl:sameAs rdf:resource=“# E_Said"/> </rdf:Description> Jarrar © 2013 35
  • 36. Assertions Individual Inequality owl:differentFrom •  An owl:differentFrom statement indicates that two URI references refer to different individuals. <rdf:Description rdf:about="http:/amazon.com/Orientalism-Edward-W-Said/dp/039474067X"> <owl:differentFrom rdf:resource="http://www.youtube.com/watch?v=X3iA73JXIFo"/> </rdf:Description> <rdf:Description rdf:about="John"> <owl:differentFrom rdf:resource="Bill"/> </rdf:Description> Jarrar © 2013 36
  • 37. Class Expressions Propositional Connectives and Enumeration of Individuals •  Intersection of Class Expressions Part 6/8 •  Union of Class Expressions •  Complement of Class Expressions •  Enumeration of Individuals Jarrar © 2013 37
  • 38. Class Expressions Intersection of Class Expressions owl:intersectionOf Describes a class for which the class extension contains precisely those individuals that are members of the class extension of all class descriptions in the list. <owl:Class rdf:about="Mother"> <owl:equivalentClass> <owl:Class> <owl:intersectionOf rdf:parseType="Collection"> <owl:Class rdf:about="Woman"/> <owl:Class rdf:about="Parent"/> A_Intersection </owl:intersectionOf> ⊓ </owl:Class> </owl:equivalentClass> </owl:Class> A1 A2 .  .  . An Proposed Notation Jarrar © 2013 38
  • 39. Class Expressions Union of Class Expressions owl:unionOf The union of two classes contains every individual which is contained in at least one of these classes. Therefore we could characterize the class of all parents as the union of the classes Mother and Father: <owl:Class rdf:about="Parent"> <owl:equivalentClass> <owl:Class> <owl:unionOf rdf:parseType="Collection"> <owl:Class rdf:about="Mother"/> <owl:Class rdf:about="Father"/> </owl:unionOf> </owl:Class> </owl:equivalentClass> </owl:Class> A1 Jarrar © 2013 A A2 … An 39
  • 40. Class Expressions Complement of Class Expressions owl:complementOf The complement of a class corresponds to logical negation: it consists of exactly those objects which are not members of the class itself. The following definition of childless persons uses the class complement and also demonstrates that class constructors can be nested: <owl:Class rdf:about="ChildlessPerson"> <owl:equivalentClass> <owl:Class> <owl:intersectionOf rdf:parseType="Collection"> <owl:Class rdf:about="Person"/> <owl:Class> <owl:complementOf rdf:resource="Parent"/> </owl:Class> Proposed Notation </owl:intersectionOf> </owl:Class> </owl:equivalentClass> </owl:Class> NotA ¬ A Jarrar © 2013 40
  • 41. Class Expressions Enumeration of Individuals owl:one of •  A way to describe a class is just to enumerate all its instances. •  These instances are the only members of PalestinianCities. Classes defined this way are sometimes referred to as closed classes or enumerated sets. We cannot have more, or less instances. <owl:Class rdf:about=”PalestinianCities"> <owl:equivalentClass> <owl:Class> <owl:oneOf rdf:parseType="Collection"> <rdf:Description rdf:about="Jerusalem "/> <rdf:Description rdf:about="Aka"/> <rdf:Description rdf:about=”Ramallah"/> … {b1,  …  ,  bn} </owl:oneOf> </owl:Class> ... B  ≡ {b1,  …  ,  bn} B </owl:equivalentClass> </owl:Class> Jarrar © 2013 41
  • 42. Class Expressions -Property Restrictions Part 7/8 •  Existential Quantification •  Universal Quantification •  Individual Value Restriction •  Self-Restriction Jarrar © 2013 42
  • 43. Class Expressions Object Property Restrictions- Existential Quantification owl:someValuesFrom •  Defines a class as the set of all individuals that are connected via a particular property to another individual which is an instance of a certain class. •  Each Account must have at least one Owner that is a Person. <owl:Class rdf:about=“Account"> <owl:equivalentClass> <owl:Restriction> <owl:onProperty rdf:resource="#HasOwner" /> <owl:someValuesFrom rdf:resource="#Person" /> </owl:Restriction> </owl:equivalentClass> </owl:Class> Account HasOwner/   è Same for DatatypeProperty Jarrar © 2013 Person 43
  • 44. Class Expressions Object Property Restrictions- Universal Quantification owl:allValuesFrom •  To describe a class of individuals for which all related individuals must be instances of a given class •  For every Account, if they have owners, all the owners must be Persons. <owl:Class rdf:about=“Account"> <owl:equivalentClass> <owl:Restriction> <owl:onProperty rdf:resource="#HasOwner" /> <owl:allValuesFrom rdf:resource="#Person" /> </owl:Restriction> </owl:equivalentClass> </owl:Class> è Same for DatatypeProperty Jarrar © 2013 44
  • 45. Class Expressions Object Property Restrictions- Individual Value Restriction owl:hasValue ObjectHasValue( OP a ): consists of an object property OP and an individual a, and it contains all those individuals that are connected by OP to a. For example, we can create a class “BirzeitLovers” to include all those who love Birzeit. <owl:Class rdf:about=“BirzeitLovers"> <owl:equivalentClass> <owl:Restriction> <owl:onProperty rdf:resource=”#Loves"/> <owl:hasValue rdf:resource="#Birzeit"/> </owl:Restriction> </owl:equivalentClass> BirzeitLovers </owl:Class> individual   Birzeit loves/ (Proposed Notation) Jarrar © 2013 45
  • 46. Class Expressions Object Property Restrictions- Self Restriction owl:hasSelf •  ObjectHasSelf (OP): a class expression that contains all individuals that are connected to themselves via OPE •  ObjectHasSelf ( a:loves ) contains those individuals that love themselves. <owl:Class rdf:about=“SelfLover"> <owl:equivalentClass> <owl:Restriction> <owl:onProperty rdf:resource="#loves"/> <owl:hasSelf rdf:datatype="&xsd;boolean">true</owl:hasSelf> </owl:Restriction> </owl:equivalentClass> SelfLover </owl:Class> Self Jarrar © 2013 Loves/ (Proposed Notation) 46
  • 47. Class Expressions -Cardinality Restrictions Part 8/8 •  Minimum Cardinality •  Maximum Cardinality •  Exact Cardinality Jarrar © 2013 47
  • 48. Class Expressions - Cardinality Owl:minCardinality •  OWL allows us to place some restrictions on properties, such as owl:minCardinality. •  Each student must be EnrolledIn in 3 things, at least <owl:Class rdf:about=“Student"> <rdfs:subClassOf> <owl:Restriction> <owl:minCardinality rdf:datatype="&xsd;nonNegativeInteger“> 3 </owl:minCardinality> <owl:onProperty rdf:resource=”#EnrolledIn"/> </owl:Restriction> </rdfs:subClassOf> </owl:Class> ≥  n A Jarrar © 2013 rA Thing 48
  • 49. Class Expressions - Cardinality Owl:maxCardinality •  OWL allows us to place some restrictions on properties, such as owl:maxCardinality. •  Each student must be EnrolledIn in 6 things, at most <owl:Class rdf:about=“Student"> <rdfs:subClassOf> <owl:Restriction> <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger“> 6 </owl:MaxCardinality> <owl:onProperty rdf:resource=”EnrolledIn"/> </owl:Restriction> </rdfs:subClassOf> </owl:Class> A Jarrar © 2013 ≤  n rA Thing 49
  • 50. Class Expressions - Cardinality Owl:Cardinality •  OWL allows us to place some restrictions on properties, such as owl:Cardinality. •  Each student must be EnrolledIn in 5 things, exactly <owl:Class rdf:about=“Student"> <rdfs:subClassOf> <owl:Restriction> <owl:Cardinality rdf:datatype="&xsd;nonNegativeInteger“> 5 </owl:Cardinality> <owl:onProperty rdf:resource=”EnrolledIn"/> </owl:Restriction> </rdfs:subClassOf> </owl:Class> A Jarrar © 2013 =  n rA Thing 50
  • 51. Class Expressions - Cardinality owl:qualifiedCardinality •  Same as owl:Cardinality, but we restrict the property with its range. •  Each student must be EnrolledIn in 5 courses, exactly <owl:Class rdf:about=“Student"> <rdfs:subClassOf> <owl:Restriction> <owl:qualifiedCardinality rdf:datatype="&xsd;nonNegativeInteger“> 5 </owl:qualifiedCardinality> <owl:onProperty rdf:resource=”EnrolledIn"/> <owl:onClass rdf:resource=”Course"/> </owl:Restriction> </rdfs:subClassOf> =  n rA B A </owl:Class> Similarly, there is minQualifiedCardinality and maxQualifiedCardinality Jarrar © 2013 51