Logics for Data and Knowledge Representation

sounderslipInternet και Εφαρμογές Web

22 Οκτ 2013 (πριν από 3 χρόνια και 11 μήνες)

116 εμφανίσεις

Logics for Data and

Knowledge Representation

Web Ontology Language (OWL)

Feroz Farazi

OWL



Web

Ontology

Language

designed

to

be

used

when

the

document

content

is

necessary

to

be

processed

by

applications

instead

of

making

it

understandable

only

by

humans

[
OWL

Overview
]



It can be used to represent ontology


Vocabulary terms and the relationships between them


Concepts and relations between them



Provides more facilities than RDF and RDF Schema


In the representation of semantics


In performing reasoning tasks


OWL Sublanguages



There

are

three

sublanguages

of

OWL


OWL

Lite
:

trades

expressivity

for

efficiency


OWL

DL
:

a

balance

between

expressivity

and

computational

completeness


OWL

Full
:

trades

computational

completeness

for

expressivity



OWL Lite supports


Encoding simple classification hierarchy (e.g., taxonomy and thesaurus)


Assigning cardinality constraints 0 or 1



OWL DL supports


More expressive than OWL Lite while guarantees conclusions and decidability


Using all OWL constructs, some of them with certain restrictions


The restriction of not making a class an instance of another class


OWL Sublanguages



OWL

DL

is

named

so

because

of

its

connection

with

description

logics,

which

form

the

formal

basis

of

OWL



OWL Full


an extension of RDF with maximum expressiveness, e.g.,
a class can be
represented also as an individual


For these sublanguages the following statements can be made:


Each OWL Lite representation belongs to OWL DL


Each OWL DL representation belongs to OWL Full


Each valid OWL Lite conclusion is also valid in OWL DL


Each valid OWL DL conclusion is also valid in OWL Full

OWL Lite



In

OWL

Lite


users

are

allowed

to

use

a

subset

of

the

OWL,

RDF

and

RDFS

vocabulary


to

define

a

class,

one

must

use

the

OWL

construct

owl
:
Class


OWL

constructs,

namely
:

complementOf,

disjointWith,

hasValue,

oneOf

and

unionOf

are

not

allowed


Some

OWL

Constructs

are

allowed

to

use

but

their

use

is

limited


all

three

cardinality

constructs



cardinality,

maxCardinality

and

minCardinality,

c
an

only

have

0

or

1

in

their

value

fields


Moreover,

equivalentClass

and

intersectionOf

cannot

be

used

in

a

triple

if

the

subject

or

object

represents

an

anonymous

class

OWL DL



In

OWL

DL


Each

individual

must

be

an

extension

of

a

class


Even

if

an

individual

cannot

be

classified

under

any

user

defined

class,

it

must

be

classified

under

the

general

owl
:
Thing

class


Individuals

can

not

be

used

as

properties,

and

vice

versa


Moreover,

properties

can

not

be

used

as

classes,

and

vice

versa


It

is

allowed

to

use

the

intersectionOf

construct

with

any

number

of

classes

and

of

any

non

negative

integer

in

the

cardinality

restrictions

value

fields


The

computational

complexity

is

the

same

as

the

corresponding

Description

Logic

Properties



Inverse


Given

that

a

property

P

is

inverse

of

another

property

Q,


P

owl
:
inverseOf

Q,

and

two

individuals

x

and

y

are

connected


using

P

as

follows
:

x

P

y
.

We

can

infer

that

y

Q

x
.



For

example,


the

property

hasChild

can

be

an

inverse

property

of

hasParent


Symmetric


Given

that

a

property

P

is

symmetric,



P

rdf
:
type

owl
:
symmetricProperty
,

two

individuals

x

and

y

are


connected

using

P

as

follows
:

x

P

y
.

We

can

infer

that

y

P

x
.


For

example,

the

property

isMarriedTo

is

symmetric


Transitive

property

is

used

with

owl
:
TransitiveProperty

Properties



Equivalent

Property


In

RDFS,

x

rdfs
:
subPropertyOf

y



y

rdfs
:
subPropertyOf

x


In

OWL,

x

owl
:
equivalentProperty

y


For

example,

buy

and

purchase

can

be

equivalent

properties



Functional

Property


A

functional

property

can

have

only

one

value

attached

to

it

for

any

individual


Given

that

a

property

P

is

functional,



P

rdf
:
type

owl
:
FunctionalProperty
,

the

individuals

x,

y

and

z


are

connected

using

P

as

follows
:

x

P

y

and

x

P

z
.

We

can

infer


that

y

owl
:
sameAs

z
.


For

example,

the

property

hasMother

is

functional

Properties



Inverse

Functional

Property


An

inverse

functional

property

can

have

only

one

individual

as

a

subject

attached

to

it

for

any

value


Given

that

a

property

P

is

inverse

functional,



P

rdf
:
type

owl
:
InverseFunctionalProperty
,

the

individuals

x,

y


and

z

are

connected

using

P

as

follows
:

x

P

y

and

z

P

y
.

We

can


infer

that

x

owl
:
sameAs

z
.


For

example,

the

property

motherOf

is

inverse

functional


Used



Especially

in

settings

where

data

come

from

multiple

sources


In

entity

matching

on

the

Semantic

Web



OWL 2:


Extends OWL 1


Inherits OWL 1 language features


The new features of OWL 2 based on:


Real applications


User experience


Tool developer experience

OWL 2

Features and Rationale


Syntactic sugar


New constructs for properties


Extended datatypes


Punning


Extended annotations


Some innovations


Minor features

Features and Rationale


Syntactic sugar


Makes some patterns easier to write


Does not change


Expressiveness


Semantics


Complexity


Can help implementations


For more efficient processing


Features and Rationale


Syntactic sugar:


DisjointUnion


DisjointClasses


NegativeObjectPropertyAssertion


NegativeDataPropertyAssertion


DisjointUnion


Union of a set of classes


All the classes are pairwise disjoint

Syntactic sugar


Need for
disjointUnion

construct


A
:
CarDoor

is exclusively either


a
:
FrontDoor
,


a
:
RearDoor

or


a
:TrunkDoor



and not more than one of them


A
disjointUnion

example


<
owl:Class

rdf:about
="
CarDoor
">


<
owl:disjointUnionOf

rdf:parseType
="Collection">


<
rdf:Description

rdf:about
="
FrontDoor
"/>


<
rdf:Description

rdf:about
="
RearDoor
"/>



<
rdf:Description

rdf:about
="
TrunkDoor
"/>

</
owl:disjointUnionOf
>



</
owl:Class
>

Syntactic sugar


DisjointClasses


A set of classes


All the classes are pairwise disjoint


Need for DisjointClasses


Nothing can be both


A
LeftLung

and


A
RightLung

Syntactic sugar


NegativeObjectPropertyAssertion


Two individuals


A property does not hold between them

Example, Patient “John” does not live in “
Povo



NegativeDataPropertyAssertion


An individual


A literal


A property does not hold between them

Example, “John” is not “5” years old.

New constructs for properties


Self restriction


Qualified cardinality restriction


Object properties


Disjoint properties


Property chain


keys

Self restriction


Classes of objects that are related to
themselves by a given property


For example, the class of
processes

that
regulate themselves


It is also called
local reflexivity


An example: Auto
-
regulating processes
regulate

themselves

Qualified cardinality restrictions


Qualifies the instances to be counted


Restrain the class or data range of the
instances to be counted


For example,


Persons that have exactly three children who are
girls


Each individual has at most one SSN

Qualified cardinality restrictions


ObjectMinCardinality


ObjectMaxCardinality


ObjectExactCardinality


DataMinCardinality


DataMaxCardinality


DataExactCardinality

Object properties


ReflexiveObjectProperty


Globally reflexive


Everything is part of itself


IrreflexiveObjectProperty


Nothing can be a proper part of itself


AsymmetricObjectProperty


If x is proper part of y, then the opposite does not hold

Disjoint propertis


DisjointObjectProperties


Deals with object properties


Pairwise disjointness can be asserted


E.g., connectedTo and contiguousWith


DisjointDataProperties


Deals with data properties


Pairwise disjointness can be asserted


E.g., startTime and endTime of a surgery

Property chain inclusion


Properties can be defined as a composition of
other properties


If disease A is locatedIn body part B and B is
part of body part C then A is locatedIn C



SubObjectPropertyOf ( ObjectPropertyChain(
locatedIn partOf) locatedIn)


Keys


Individuals can be
identified uniquely


Identification can be done using


A data property


An object property or


A set of properties



HasKey
(
:
RegisteredPatient

:
hasWaitingListN

)



ClassAssertion
(
:
RegisteredPatient

:
ThisPatient

)


DataPropertyAssertion
(
:
hasWaitingListN

:
ThisPatient

"123
-
45
-
6789" )



HasKey
(
:Transplantation
:
donorId

:
recipientId

:
ofOrgan

)


Features and Rationale


Syntactic sugar


New constructs for properties


Extended datatypes


Punning


Extended annotations


Some innovations


Minor features

Extended datatypes


Extra
datatypes


For example,
owl:real

and
owl:rational


Datatype

restrictions


Range of
datatypes


For example, adult has an age >= 18


DatatypeRestriction
(
xsd:integer

minInclusive

18)


Datatype

definitions


New
datatypes


DatatypeDefinition
(
:
adultAge

DatatypeRestriction
(
xsd:integer

minInclusive

18))

Extended datatypes


Data range combinations


Intersection of


DataIntersectionOf(
xsd:nonNegativeInteger

xsd:nonPositiveInteger

)


Union of


DataUnionOf(
xsd:string

xsd:integer

)


Complement of data range


DataComplementOf(
xsd:positiveInteger

)


Punning


Punning
:
“What's
black and white and red
all
over
?”


Classes and individuals can have the same
name
thanks

to
punning


E.g., Eagle as a class and as an individual


Properties and individuals can have the same
name


E.g.,
is_located_in

as a property and as an
individual of
Deprecated_Properties

class

Punning


Classes and object properties also can have
the same name


But classes and datatype properties can not
have the same name


Also datatype properties and object
properties can not have the same name

Features and Rationale


Extended Annotations


Axioms can be annotated


For example, SubClassOf( Annotation(
rdfs:comment

"Middle lobes of
lungs are necessarily right lobes since left lungs do not have middle
lobe.")
:MiddleLobe

:RightLobe

)


Innovations


Top and Bottom properties


IRI: Internationalized Resource Identifier

Features and Rationale


Inverse object properties:


some object property can be inverse of another
property


For example, partOf and hasPart


ObjectInverseOf(
:partOf

):
this expression
represents the inverse property of
:part of


This makes writing ontologies easier by avoiding
the need to name an inverse

Profiles


Profiles are sublanguages of OWL 2


Profiles considered


Useful computational properties, e.g., reasoning
complexity


Implementation possibilities, e.g., using RDBs


There are three profiles


OWL 2 EL


OWL 2 QL


OWL 2 RL


OWL 2 EL


The EL acronym reflects the profile’s basis in the
EL family of description logics


This logic is also called
small
description

logic
(DL)
EL


This logic allows
for
conjunction and
existential

restrictions


It does not allow disjunction and
universal
restrictions


It can capture the expressive power used by
many large
-
scale ontologies, e.g., SNOMED CT

OWL 2 QL


The QL acronym reflects its relation to the
standard relational Query Language


It does not allow
existential

and
universal
restrictions

to a class expression or a data range


These restrictions


enable a tight integration with RDBMSs,


reasoners

can be implemented on top of standard
relational databases


Can answer complex queries (in particular, unions
of conjunctive queries) over the instance level
(
ABox
) of the DL knowledge base

OWL 2 RL


The RL acronym reflects its relation to the Rule
Languages


OWL 2 RL is
desgined

to accommodate


OWL 2 applications that can trade the full expressivity of
the language for efficiency


RDF(S) applications that need some added expressivity
from OWL 2


Existential quantification to a class, union and disjoint
union to class expressions are not allowed


These restrictions


allow OWL 2 RL to be implemented using rule
-
based
technologies such as rule extended DBMSs

Profiles


Profile selection depends on


Expressivenss required by the application


Priority given to reasoning on classes or data


Size of the datasets


References


OWL Overview (2004). W3C Recommendation.


OWL 2 New Features and Rationale (2009).
W3C Recommendation.


F
. Giunchiglia, F. Farazi, L. Tanca, and R. D. Virgilio.
The
semantic
web
languages
. In
Semantic Web Information management
,
a model based
perspective
. Roberto de Virgilio, Fausto Giunchiglia
,
Letizia Tanca (Eds.),
Springer, 2009
.


D.
Allemang

and J.
Hendler
.
Semantic web for the working
ontologist
:
modeling in RDF, RDFS and OWL.

Morgan Kaufmann Elsevier, Amsterdam, NL
,
2008.