ontologies

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

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

51 εμφανίσεις

Ontology Engineering

Nguyen
Trung

Lap

1

Contents


What is an ontology?


What is the usefulness of an ontology?


Ontologies languages


Ontologies development


Tool introduction


Labs


develop an ontology

2

What is an ontology? (1)


Philosophy:
Ontology


Engineering
: ontologies (count noun)


Investigating
reality, representing it

3

What is an ontology
? (2)


An ontology is an explicit description of a domain:


concepts


properties and attributes of concepts


constraints on properties and attributes


Individuals


An ontology defines


a common vocabulary


a shared understanding



4

What is an ontology?
(3)


Ontology
vs

OOP


Ontology


Reflect the world


Structure


OOP


Reflect data and code


Behavior


5

Definitions


Definitions


Most quoted:
“An
ontology is a
specification
of
a
conceptualization”
(by Tom Gruber, 1993)


“a
formal specification
of
a shared
conceptualization”
(
by
Borst
, 1997)


“An
ontology is a formal, explicit specification
of
a
shared
conceptualization
" (
Studer

et al., 1998
)


An ontology is a hierarchically structured set of terms for
describing
a domain
that can be used as a skeletal
foundation for a knowledge base.(
Swartout

et al., 1997)

6

Definitions


“An ontology is a specification of a
conceptualization



Conceptualization: reality


Specification: language

7


8


9

What is the usefulness of an
ontology
?


Making, more or less precisely, the (dis
-
)agreement
among people
explicit


Enrich software applications with the
additional
semantics


Thus, practically, improving: computer
-
computer
,
computer
-
human
, and
human
-
human
communication

10

Examples


Data(base)
integration


Instance
classification


Matching


Querying
, information retrieval


Ontologies
to improve NLP


Modeling


e
-
learning


Support for knowledge intensive applications.


Text extraction, decision support, resource planning,
intelligent interfaces.


Knowledge repository structure.

11

Example: Job matching


Job seeker post: “.. work as programmer in HCMC”


Company offer: “.. software developer, Vietnam”


Keyword based: not matched


12

Example: Job matching


Job seeker post: “ work as programmer in HCMC”


Company offer: “ software developer, Vietnam”


Keyword based:
not matched


13

Example: Job matching


Job seeker post: “ work as programmer in HCMC”


Company offer: “ software developer, Vietnam”


Simple knowledge base (an ontology):





Ontology
-
based matching:
matched


14


Knowledge base


-

Programmer
is equal to software developer

-

HCMC
is located in Vietnam


Ontology Languages

15


Description
logic
-

DL


DL
is a family of formal knowledge representation
languages


A Description Logic (DL) models
concepts
,
roles

and
individuals
, and their relationships.


16

DL


In DL, a distinction is drawn between the so
-
called
TBox

(terminological box) and the
ABox

(
assertional

box).


For
example, the statement:


(1)
Every
employee is a person


belongs in the
TBox
, while the statement:


(2) Bob is an employee


belongs in the
ABox
.


17

DL Architecture

18

DL model


Let
C

and
D
be concepts,
a

and
b

be individuals, and
R

be a role


19

Resource Description Framework
(RDF
)


The W3C
recommendation for semantic annotations
in the Semantic Web

20

RDF


An RDF statement (or RDF triple) is of the form:


subject

property
object
.


To represent RDF statements in a machine
-
processable

way, RDF
defines a
specific extensible markup language
(XML) syntax

21

Web Ontology Language

OWL













Semantic web components

22

Stack of language


XML


Surface syntax, no semantics


XML Schema


Describes structure of XML documents


RDF


Data model
for
“relations”
between
“things”


RDF Schema


RDF Vocabulary
Definition
Language


OWL


A more expressive Vocabulary
Definition
Language


23

Design goal for OWL


Shareable


Changing over time


Interoperability


Inconsistency detection


Balancing expressivity and complexity


Ease of use


Compatible with existing standards


Internationalization

24

Requirement for OWL


Ontologies are object on the Web


with their own meta
-
data, versioning, etc...


Ontologies are extendable


They contain classes, properties, data
-
types,


range/domain, individuals


Equality (for classes, for individuals)


Classes as instances


Cardinality constraints


XML syntax

25

OWL Profiles


OWL Lite


Classification
hierarchy


Simple constraints


OWL DL


Maximal expressiveness


While maintaining tractability


Standard formalization in a DL


OWL Full


Very high expressiveness


Losing tractability


All syntactic freedom of RDF (self
-
modifying)

26

OWL Profiles


OWL Lite


(sub)classes, individuals


(sub)properties, domain,


range


conjunction


(in)equality


(
unqualied
)
cardinality
0/1


datatypes


inverse, transitive,


symmetric properties


someValuesFrom


allValuesFrom


27


OWL DL


Negation


Disjunction


(
unqualied
) Full


cardinality


Enumerated classes


hasValue


OWL Full


Meta
-
classes


Modify language


OWL 2 structure

28

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

OWL 2


OWL 2 is a language for expressing
ontologies
.


OWL 2 is not a programming language: OWL 2 is
declarative


OWL 2 is not a database
framework


Database: close
-
world assumption


OWL : open
-
world assumption

29

Modeling Knowledge:

Basic
Notions


Axioms: the basic statements that an OWL ontology
expresses


Entities
: elements used to refer to real
-
world objects


Expressions
: combinations of entities to form
complex descriptions from basic ones

30

OWL syntax via example


Example, model by introducing a person


Class and instance

31

32


Class hierarchy


33


34


35


Property hierarchy


36


Domain and range


37

38


Individual



Data type


39


Complex class


40


Union class


41


Restriction

42

Need to remember the syntax?


NO


Tool will support you

43

SWRL (1)


SWRL


semantic web rule language


Rules
are if
-
then
clauses.


New knowledge
is added only if a particular set of
statements
is true

44

SWRL(2)


Combine ontologies and rules


Ontologies: OWL
-
DL


Rules:
RuleML

45

Why SWRL?


Improve the ontology’s expressivity


Cover some limitations of OWL


Although expressivity comes with a price


Decidability


Rule can be reused


It is easier to read and write rules with SWRL


Suitable for policy definition


46

SWRL syntax


Atom <
-

C(i
)|D(v)|R(i
;
j)|U(i
; v)
|builtIn(p
;
v1,...,
vn)
|i
= j
|
i
# j



C = Class

D
= Data type


R = Object Property

U
= Data type Property


I, j
= Object variable names
or Object
individual names


v
1…
vn

= Data type variable names
or Data
type value
names


p = Built
-
in names

47

SWRL Syntax (2)


a <
-

b1,…,
bn

where,


a : head (an atom
)


bi:
body (all atoms
)


‘,’ mean and



A SWRL knowledge base (k) is defined as follows:


k =
(
∑,
P)
where,



=
Knowledge base of
OWL


P = A finite set of rules

48

SWRL Example


Person
(?x),
hasChild
(?
x, ?y)
-
>
hasSpouse
(?
x)

49

Ontology reasoning


Reasoning over
a
first
-
order logical
theory


Main (`standard') reasoning tasks for the OWL
ontologies:


consistency of the ontology


concept (and role) consistency


concept (and role)
subsumption


instance checking


instance retrieval


query answering

50

Ontology Reasoning


Reasoning with OWA (vs. CWA)


Open World Assumption


Absence of information is interpreted as unknown information


Assumes incomplete information


Good for describing knowledge in a way that is extensible


Closed World Assumption


Absence of information is interpreted as negative information


Assumes we have complete information


Good for constraining information and validating data in
an
application

51

OWA example


Which alumni do not have a PhD?


Alumnus Degree
Obtained (data)


Delani

PhD in history


Maria PhD in politics


Peter MSc in Informatics


Dalila

PhD in politics

52

Ontology development process

53

Tutorial

determine

scope

consider

reuse

enumerate

terms

define

classes

define

properties

define

constraints

create

instances

In reality
-

an iterative process:

determine

scope

consider

reuse

enumerate

terms

define

classes

consider

reuse

enumerate

terms

define

classes

define

properties

create

instances

define

classes

define

properties

define

constraints

create

instances

define

classes

consider

reuse

define

properties

define

constraints

create

instances

Determine domain and scope


What is the domain that the ontology will cover?


For what we are going to use the ontology?


For what types of questions the information in the
ontology should provide answers (
competency
questions
)?


(
Answers
to these questions may change during the
lifecycle
)


54

Protégé


Tool for ontology

55

References


Ontology engineering courses


http://
www.slideshare.net/petabyte/ontology
-
engineering
-
for
-
the
-
semantic
-
web
-
and
-
beyond


http://
www.meteck.org/teaching/SA/MOWS10OntoEngCo
use.html


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


Books


Hand book on ontology


Ontological engineering


Protégé OWL tutorial

56

Discussion

57

Thank you!

58