(12) Semantic Web Technologies - Ontological Engineering

90
Semantic Web Technologies Lecture Dr. Harald Sack Hasso-Plattner-Institut für IT Systems Engineering University of Potsdam Winter Semester 2012/13 Lecture Blog: http://semweb2013.blogspot.com / This file is licensed under the Creative Commons Attribution-NonCommercial 3.0 (CC BY-NC 3.0 ) Dienstag, 15. Januar 13

Transcript of (12) Semantic Web Technologies - Ontological Engineering

Page 1: (12) Semantic Web Technologies - Ontological Engineering

Semantic Web Technologies

LectureDr. Harald Sack

Hasso-Plattner-Institut für IT Systems EngineeringUniversity of Potsdam

Winter Semester 2012/13

Lecture Blog: http://semweb2013.blogspot.com/This file is licensed under the Creative Commons Attribution-NonCommercial 3.0 (CC BY-NC 3.0)

Dienstag, 15. Januar 13

Page 2: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

Rules

&

the Se

mantic

Web

2

last lecture

Dienstag, 15. Januar 13

Page 3: (12) Semantic Web Technologies - Ontological Engineering

Semantic Web Technologies , Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

3 1. Introduction 2. Semantic Web - Basic Architecture

Languages of the Semantic Web - Part 1

3. Knowledge Representation and LogicsLanguages of the Semantic Web - Part 2

4. Applications in the ,Web of Data‘

Semantic Web Technologies Content

Dienstag, 15. Januar 13

Page 4: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

4

Ontolo

gical

Engine

ering

Dienstag, 15. Januar 13

Page 5: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

4. Applications in the Web of Data4.1.Ontological Engineering4.2.Linked Data Engineering 4.3.Semantic Search

Semantic Web Technologies Content

Dienstag, 15. Januar 13

Page 6: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

6

4.Ontology Engineering4.1.Ontologies revisited4.2.Methodologies of Ontology Design

4.2.1. In General

4.2.2. Method of Uschold and King4.2.3. Ontology 1014.2.4. Unified Process for ONtology (UPON)

4.2.5. Ontology Design Patterns

4.3.Ontology Learning4.4.Ontology Mapping and Ontology Merging

Dienstag, 15. Januar 13

Page 7: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

7

What is an Ontology?

„A theory of being, which tries to explain the being itself, by developing a system of universal categories and their intrinsic relationships...“

PhilosophyDienstag, 15. Januar 13

Page 8: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

8

What is an Ontology?

"An ontology is an explicit, formal specification of a shared conceptualization. The term is borrowed from philosophy, where an Ontology is a systematic account of Existence. For AI systems, what ‘exists’ is that which can be represented.“

Computer ScienceDienstag, 15. Januar 13

Page 9: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

9

Domain Ontology Task Ontology

Application Ontology

(acc. to Guarino,1998)

Top-Level Ontology(Upper Ontology,

Foundation Ontology)

What is an Ontology?

Dienstag, 15. Januar 13

Page 10: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563

10

Ontologies and the Semantic Web

•Semantic Web is based on the Interoperability of Metadaten

•Among heterogeneous Metadata there is a Semantic Gap that can be bridged with the help of ontologies

•Problem of the Semantic Gap:

• different ontologies can be applied to represent identical knowledge.

Dienstag, 15. Januar 13

Page 11: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563

11

The Semantic Gap - A Simple Example

•Let‘s model a world:

A

C

B

Initial State Final State

A

C

B

World

Modelling 2:Objectsblock Ablock Bblock C

Relationson(X,Y)clear(X)onTable(X)holding(X)handEmpty

Modelling 1:Objectsblock Ablock Bblock Ctable Thand H

Relationson(X,Y)clear(X)holding(X)handEmpty

Dienstag, 15. Januar 13

Page 12: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563

12

Modelling and Ontologies

A

C

B

Initial State Final State

A

C

B

•behind the model there is an ontology

Modelling 1:Objectxblock Ablock Bblock Ctable Thand H

Relationson(X,Y)clear(X)holding(X)handEmpty

entity relation

table block hand binary unary

handEmptyclear

holding

on

table T hand A

block A

block B

block C

Axiom: on(X,Y) ⋀ on(Y,Z) → above(X,Z)

Dienstag, 15. Januar 13

Page 13: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

13

entity relation

block binary unary

handEmptyclear

holding

onblock A

block B

block C onTable

Modelling and Ontologies•behind the model there is an ontology

A

C

B

Initial State Final State

A

C

BModelling 2:Objectsblock Ablock Bblock C

Relationson(X,Y)clear(X)onTable(X)holding(X)handEmpty

Dienstag, 15. Januar 13

Page 14: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

14•Ontologies enable interoperability among metadata•Therefore, we need•Methods for efficient development of ontologies

(Ontology Design)•Methods for efficient comparison of ontologies

(Ontology Mapping)•Methods for efficient combination of ontologies

(Ontology Merging)

•There are automated methods to support Ontological Engineering:•Learning new ontologies from a given set of information resources

(Ontology Learning)•Populating existing ontologies with individuals from information

resources

Ontological Engineering

Dienstag, 15. Januar 13

Page 15: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

15

„The only method to be driven, the empiricism is annoying.“

-- Johann Wolfgang von Goethe, aus „Maxims and Reflections”

„Zur Methode wird nur der getrieben, dem die Empirie lästig wird.“

-- Johann Wolfgang von Goethe, aus „Maximen und Reflexionen”

Dienstag, 15. Januar 13

Page 16: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

16

4.Ontology Engineering4.1.Ontologies revisited4.2.Methodologies of Ontology Design

4.2.1. In General

4.2.2. Method of Uschold and King4.2.3. Ontology 1014.2.4. Unified Process for ONtology (UPON)

4.2.5. Ontology Design Patterns

4.3.Ontology Learning4.4.Ontology Mapping and Ontology Merging

Dienstag, 15. Januar 13

Page 17: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

17

Methodologies of Ontology Design

•A methodology of Ontology Design describes all activities necessary for the construction of an ontology.

•Why do we need a formal methodology?

•development of consistent ontologies

•efficient development of complex ontologies

•distributed development of ontologies

•We distinguish (acc. to Fernandez-Lopez et. al., 1997)

•Ontology management activities

•Ontology development oriented activities

•Ontology support activities

Dienstag, 15. Januar 13

Page 18: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

18

Ontology Management Activities

•Scheduling•Identification tasks/problems to solve

•Arrangement/Planning of tasks/problems to solve

•Identification of required resources (time, memory, etc…)

•Control•Guarantees correct execution of tasks/problems to solve

•Quality Assurance•Quality assurance of all produced resources during

development(Ontologies, Software, Documentation)

Dienstag, 15. Januar 13

Page 19: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

19

1.Pre-Development2.Development3.Post-Development

1.Pre-Development•Environment Study

•What is the designated software platform for the ontology?

•Which applications should use the ontology?

•Feasibility Study

•Can the ontology really be developed?

•Does it make sense to develop the ontology?

Ontology Development Oriented Activities

Dienstag, 15. Januar 13

Page 20: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

20

Ontology Development Oriented Activities

2.Development

•Specification•Why is the ontology developed, what is the benefit and

who are the end-users?

•Conceptualization•Structuring domain knowledge in a conceptual model

•Formalization•Formalize conceptual model in (semi-)computable

model

•Implementation•Construction of a computable model in an ontology

representation language

Dienstag, 15. Januar 13

Page 21: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

21

Ontology Development Oriented Activities

3.Post-Development

•Maintenance•Update and adjustment of the ontology (if necessary)

•Use / Reuse•Usage of the ontology within the designated applications

as well as in unplanned applications/ontologies

Dienstag, 15. Januar 13

Page 22: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

22

Ontology Support Activities

•Knowledge Acquisition•Gather knowledge from experts (Ontology Learning)

•Evaluation•Technical evaluation of the ontology in each step of the

development process

•Integration•Reuse of existing ontologies (Ontology Reuse)

•Merging•Construction of a new ontology from already existing ontologies

within a specific domain

Dienstag, 15. Januar 13

Page 23: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

23

Ontology Support Activities

•Alignment•Mapping rules for involved ontologies

•Documentation •Each step of the ontology development must be acurately

documented

•Configuration Management•Manages all versions of documentation and of the developed

ontology

Dienstag, 15. Januar 13

Page 24: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

24

Ontological Engineering

Management Development Oriented Support

scheduling

control

quality assurance

environment study feasibility study

conceptualizationspecification

formalization implementation

maintenance use / reuse

knowledge acquisition

evaluation

documentation merging

alignmentconfigurationmanagement

integration

acc. to Fernandez-Lopez et. al., 1997

Dienstag, 15. Januar 13

Page 25: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

25

Ontological Engineering

GREATONTOLOGY

SOmething

Development Process

acc. to http://geekandpoke.typepad.com/geekandpoke/2012/01/simply-explained-dp.html

Dienstag, 15. Januar 13

Page 26: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

26

4.Ontology Engineering4.1.Ontologies revisited4.2.Methodologies of Ontology Design

4.2.1. In General

4.2.2. Method of Uschold and King4.2.3. Ontology 1014.2.4. Unified Process for ONtology (UPON)

4.2.5. Ontology Design Patterns

4.3.Ontology Learning4.4.Ontology Mapping and Ontology Merging

Dienstag, 15. Januar 13

Page 27: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

27

Methode of Uschold and King

•Process based development

•1995/96, first proposal of a methodology for ontology development

•IBM, University of Edinburgh, Unilever,...•Development of an ,Enterprise Ontology‘

identifypurpose capture coding integrating documen-

tationevaluation

Building

1 2 3 4

Dienstag, 15. Januar 13

Page 28: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

28

Methode pf Uschold und King

Identify Purpose and Domain of Application•Why is the ontology needed?•Designated application?

•(use / reuse / share / used as part of KB / …)•Identify all terms relevant for the application

identifypurpose capture coding integrating documen-

tationevaluation

Building

1

Example: Travel Ontology•Development of a common ontology for the domain ,Travel‘ that should be used in travel offices•Ontology could also be used for other application areas, e.g. to develop a catalogue for hotels and transportation means•relevant terms e.g: locations, types of locations, accommodations, types of accommodations (hotel / motel / camping / …), railway, busses, subway,...

Dienstag, 15. Januar 13

Page 29: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

29

Methode of Uschold and Kingidentifypurpose capture coding integrating documen-

tationevaluation

Building

Ontologie Building• Ontology Capture

• Humans as domain experts, who possess the mandatory knowledge...

• ...are not neccessarely fully-trained logicians that are able to design an ontology

• Therefore, knowledge engineers often are appointed to support the domain experts

2

Identify key concepts (classes) and relationships (relations) of the domain under consideration

Dienstag, 15. Januar 13

Page 30: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

30

Methode of Uschold and Kingidentifypurpose capture coding integrating documen-

tationevaluation

Building

Ontologie Building•Ontology Capture•Identify key concepts (classes) and relationships (relations) of the domain under consideration and provide them as plain text

•Identification of ontology concepts•Bottom-up / Top-down / Middle-Out

2

Example: Travel Ontology• Transportation is a class. Each Transportation has a Starting Point• Bus is a class. Bus is a Transportation.• City Bus is a class. A City Bus is a Bus, whose Starting Point as well as its Destination and all Stopovers are located in the same City.

Dienstag, 15. Januar 13

Page 31: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

31

Methode of Uschold and Kingidentifypurpose capture coding integrating documen-

tationevaluation

Building

Ontologie Building•Ontology Capture

•Bottom-up identification of ontology concepts •Construction from ,special‘ to ,general‘ •Identification of concepts with the most clear

specification, then generalisation towards abstract concepts

2

Example: Travel Ontology• Transportation is conceptualized with a Bottom-up strategy

Dienstag, 15. Januar 13

Page 32: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

32

Methode of Uschold and Kingidentifypurpose capture coding integrating documen-

tationevaluation

Building

Ontologie Building•Ontology Capture

•Bottom-up identification of ontology concepts

2

LondonUnderground

LondonLocal Bus

LondonTaxi

ParisMetro

ParisLocal Bus

ParisTaxi

London Transportation Paris TransportationSubway City Bus Taxi

Transportationis-subClass-of

Dienstag, 15. Januar 13

Page 33: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

33

Methode of Uschold and Kingidentifypurpose capture coding integrating documen-

tationevaluation

Building

Ontologie Building•Ontology Capture

•Bottom-up identification of ontology concepts

•increased total cost•difficult to find common ground among related

concepts•increased risk of inconsistencies→ then revision is necessary (even more expensive)

2

Dienstag, 15. Januar 13

Page 34: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

34

Methode of Uschold and Kingidentifypurpose capture coding integrating documen-

tationevaluation

Building

Ontologie Building•Ontology Capture

•Top-down identification of ontology concepts•first identify abstract concepts, then continue with specialization

2

Example: Travel Ontology• Transportation is conceptualized with a Top-down strategy

Dienstag, 15. Januar 13

Page 35: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

35

Methode of Uschold and Kingidentifypurpose capture coding integrating documen-

tationevaluation

Building

Ontologie Building•Ontology Capture

•Top-down identification of ontology concepts

2

object

concrete object abstract object

is-subClass-of

Subway City Bus Taxi Transportwith Taxi

Transportwith Bus

Transportwith Subway

usesuses

uses

Dienstag, 15. Januar 13

Page 36: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

36

Methode of Uschold and Kingidentifypurpose capture coding integrating documen-

tationevaluation

Building

Ontologie Building•Ontology Capture

•Top-down identification of ontology concepts

•Level of detail can be better controled•perhaps abstract concepts are not needed at all for ontology / application

•Less stability of the model → then revision is necessary (even more expensive)

2

Dienstag, 15. Januar 13

Page 37: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

37

Methode of Uschold and Kingidentifypurpose capture coding integrating documen-

tationevaluation

Building

Ontologie Building•Ontology Capture

•Middle-Out identification of ontology concepts•Start with core concepts, then specialication and/or generalization

2

Example: Travel Ontology• Transportation is conceptualized with a Middle-Out strategy

Dienstag, 15. Januar 13

Page 38: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

38

Methode of Uschold and Kingidentifypurpose capture coding integrating documen-

tationevaluation

Building

Ontologie Building•Ontology Capture

•Middle-Out identification of ontology concepts

2

Subway Bus Taxi

Transportation

is-subClass-of

City Bus Shuttle Bus Travel Bus

Dienstag, 15. Januar 13

Page 39: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

39

Methode of Uschold and Kingidentifypurpose capture coding integrating documen-

tationevaluation

Building

Ontologie Building•Ontology Capture

•Middle-Out identification of ontology concepts

•well balanced (wrt. level of detail / abstraction)•more stable than the other two methods

2

Dienstag, 15. Januar 13

Page 40: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

40

Methode of Uschold and Kingidentifypurpose capture coding integrating documen-

tationevaluation

Building

Ontologie Building•Coding

•All who participate in the development of the ontology must agree on a common structure of the knowledge base

•Integration of Existing Ontologies•Decision, whether and how existing ontologies should be reused

•can be performed in parallel with the other activities

2

Dienstag, 15. Januar 13

Page 41: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

41

Methode of Uschold and Kingidentifypurpose capture coding integrating documen-

tationevaluation

Building

Evaluation •Technical evaluation of the ontologies and the application software in each step of the development process

Documentation•Establishing guidelines for documentation

3

4

Dienstag, 15. Januar 13

Page 42: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

42

4.Ontology Engineering4.1.Ontologies revisited4.2.Methodologies of Ontology Design

4.2.1. In General

4.2.2. Method of Uschold and King4.2.3. Ontology 1014.2.4. Unified Process for ONtology (UPON)

4.2.5. Ontology Design Patterns

4.3.Ontology Learning4.4.Ontology Mapping and Ontology Merging

Dienstag, 15. Januar 13

Page 43: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

43

Ontology Development 101 (Noy, McGuinness, 2000)

•Example of a wine and food ontology

A sharedontology on

wine and food

Which wine fis the right one for fish?French wine-growing

regions and wines

Californian wine-growing regions

and wines

Dienstag, 15. Januar 13

Page 44: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

44

Ontology Development 101 (Noy, McGuinness, 2000)

•Example of a wine and food ontology

Dienstag, 15. Januar 13

Page 45: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

45

Ontology Development Process

•in practice an iterative Process that repeats continuously and improves the ontology

•there are always different approaches for modelling an ontology

•in practice the designated application decides about the modelling approach

determinescope

considerreuse

enumerateterms

defineclasses

defineproperties

defineconstraints

createinstances

„There is no one correct way tomodel a domain. There are always viable alternatives.“

Dienstag, 15. Januar 13

Page 46: (12) Semantic Web Technologies - Ontological Engineering

•Which domain should be covered by the ontology?

•What should the ontology be used for?

•What types of Questions should be answered by the knowledge represented in the ontology?

•Who will use and maintain the ontology?

•Formulation of Competence Questions

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

46

Determine Domain and Focus

determinescope

considerreuse

enumerateterms

defineclasses

defineproperties

defineconstraints

createinstances

These Questions might change within the ontology life cycle

Dienstag, 15. Januar 13

Page 47: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

47determine

scopeconsider

reuseenumerate

termsdefine

classesdefine

propertiesdefine

constraintscreate

instances

Competence Questions (Wine Ontology)•Which properties of the wine should be considered for modelling?

•Is Bordeaux a white wine or a red wine?

•Does a Sauvignon Blanc match with fish?

•Which wine matches best for grilled meat?

•Which properties of a wine do influence whether it matches with a specific dish?

•Does the bouquet of a wine change with different vintages?

•...

Determine Domain and Focus

Dienstag, 15. Januar 13

Page 48: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

48

Consider Reuse

determinescope

considerreuse

enumerateterms

defineclasses

defineproperties

defineconstraints

createinstances

•Why should we consider reuse?•in order to save cost•in order to apply tools that are applied for other existing ontologies also for our own ontology

•in order to reuse ontologies that have been validated by their application

If you don‘t find a suitable ontology or if the adaption is too complex then create a new ontology!

Dienstag, 15. Januar 13

Page 49: (12) Semantic Web Technologies - Ontological Engineering

•About which concepts are we talking?•Which properties have these concepts?•What do we want to say about these concepts?

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

49

Develop a Terminology

determinescope

considerreuse

enumerateterms

defineclasses

defineproperties

defineconstraints

createinstances

Example: Wine Ontology•wine, grape, winery, location,... •a wine‘s color, body, flavor, sugar content,... •subtypes of wine: white wine, red wine, Bordeaux wine,...•types of food: seafood, fish, meat, vegetables, cheese,...•...

Dienstag, 15. Januar 13

Page 50: (12) Semantic Web Technologies - Ontological Engineering

•Classes are concepts in the designated domain•class of wines•class of wineries•class of red wines•...

•Classes are collections of objects with similar properties•Choose a top-down / bottom-up / middle-out approach to model class hierarchies

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

50

Develop Classes and Class Hierarchies

determinescope

considerreuse

enumerateterms

defineclasses

defineproperties

defineconstraints

createinstances

Dienstag, 15. Januar 13

Page 51: (12) Semantic Web Technologies - Ontological Engineering

•Properties in a class definition describe attributes of instances•every wine has a color, residual sugar, producer, etc...

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

51

Define Properties

determinescope

considerreuse

enumerateterms

defineclasses

defineproperties

defineconstraints

createinstances

Dienstag, 15. Januar 13

Page 52: (12) Semantic Web Technologies - Ontological Engineering

•Property constraints (restrictions) describe or restrict the set of possible property values•The name of a wine is a String•The producer is an instance of Winemaker

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

52

Define Property Constraints

determinescope

considerreuse

enumerateterms

defineclasses

defineproperties

defineconstraints

createinstances

Dienstag, 15. Januar 13

Page 53: (12) Semantic Web Technologies - Ontological Engineering

•Create Instances for the classes•Every class directly becomes the type of its instances•Every superclass of a direct type is also type of its instances

•Create instances for properties, i.e. assignment of property values for the instances according to the given constraints

•„the glass of red wine that I drank last supper...“

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

53

Definition of Instances

determinescope

considerreuse

enumerateterms

defineclasses

defineproperties

defineconstraints

createinstances

Dienstag, 15. Januar 13

Page 54: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

54

4.Ontology Engineering4.1.Ontologies revisited4.2.Methodologies of Ontology Design

4.2.1. In General

4.2.2. Method of Uschold and King4.2.3. Ontology 1014.2.4. Unified Process for ONtology (UPON)

4.2.5. Ontology Design Patterns

4.3.Ontology Learning4.4.Ontology Mapping and Ontology Merging

Dienstag, 15. Januar 13

Page 55: (12) Semantic Web Technologies - Ontological Engineering

•Based on Unified Process (UP) methodology in software development and Unified Modelling Language (UML)

•Use-Case driven, i.e. more suitable for application ontologies than for domain ontologies

•Goals:•Reduction of time and cost in the development of large scale ontologies

•Quality improvement of the developed ontology via progressive validation of intermediate results

•Methodology for efficient collaboration of Knowledge Engineers and Domain Experts with clear separation of roles

•Intermediate results can already be evaluated by the user

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

55

Unified Process for Ontology Building De Nicola, Missikoff, Navigli (2005)

Dienstag, 15. Januar 13

Page 56: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

56

Unified Process for Ontology Building De Nicola, Missikoff, Navigli (2005)

•Development is divided into Cycles, which are subdivided into 4 Phases of Iterations (Inception, Elaboration, Construction, Transition). Each iteration results in a new prototype

•Each iteration consists of 5 workflowes (Requirements, Analysis, Design, Implementation, Test)

Dienstag, 15. Januar 13

Page 57: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

57

Unified Process for Ontology Building De Nicola, Missikoff, Navigli (2005)

•Workflows and Phases are almost orthogonal, i.e. involvement of single workflows in different phases of ontology development does vary

Dienstag, 15. Januar 13

Page 58: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

58

Unified Process for Ontology Building De Nicola, Missikoff, Navigli (2005)

(1)Requirements Workflow

Dienstag, 15. Januar 13

Page 59: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

59

Unified Process for Ontology Building De Nicola, Missikoff, Navigli (2005)

(2)Analysis Workflow

Dienstag, 15. Januar 13

Page 60: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

60

Unified Process for Ontology Building De Nicola, Missikoff, Navigli (2005)

(3)Design Workflow

Dienstag, 15. Januar 13

Page 61: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

61

Unified Process for Ontology Building De Nicola, Missikoff, Navigli (2005)

(4)Implementation Workflow

Dienstag, 15. Januar 13

Page 62: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

62

Unified Process for Ontology Building De Nicola, Missikoff, Navigli (2005)

(5)Test Workflow

Dienstag, 15. Januar 13

Page 63: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

63

4.Ontology Engineering4.1.Ontologies revisited4.2.Methodologies of Ontology Design

4.2.1. In General

4.2.2. Method of Uschold and King4.2.3. Ontology 1014.2.4. Unified Process for ONtology (UPON)

4.2.5. Ontology Design Patterns

4.3.Ontology Learning4.4.Ontology Mapping and Ontology Merging

Dienstag, 15. Januar 13

Page 64: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

64

Ontology Design Patterns (Gangemi, 2005)

•Adapting an Idea originally from Architecture •recurring modeling problems•providing a set of adaptable standard solutions

•Ontology Design Patterns provide•small reusable (abstract) ontology templates with explicit documentation

•searchable repository ordered by competence questions

•We distinguish:•Content Patterns

•Domain dependent, language independent •Logical Patterns

•Domain independent, related to representation language•Presentation Patterns

•Ontology from user perspective, as e.g. naming conventions•Transformation Patterns

•how to transform an ontology in another representation language

Dienstag, 15. Januar 13

Page 65: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

65

Content Pattern vs. Logical Pattern

•Logical ODPs solve design problems independently of a particular conceptualization

•Content ODPs are patterns for solving design problems for the domain classes and properties that populate an ontology; they address content problems

•Content ODPs are instantiations of Logical ODPs (or of compositions of Logical ODPs)

•Modeling problems solved by Content ODPs have two components: domain and requirements. •the same domain can have many requirements •the same requirement can be found in different domains

•A typical way of capturing requirements is by means of competency questions

•Content ODPs are collected and described in catalogues and comply to a common presentation template

Dienstag, 15. Januar 13

Page 66: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

66

Content Pattern - A Simple Example

•Example: taking over a temporary role•e.g.: Basil Rathbone played Sherlock Holmes in the 1939 movie „The Hound of the Baskervilles“

•Analyze the sentence, detect the modeling issues, and match to the Content ODPs

•A person plays a character •represent objects and

the roles they play

Dienstag, 15. Januar 13

Page 67: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

67

Dienstag, 15. Januar 13

Page 68: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

684.Ontology Engineering

4.1.Ontologies revisited4.2.Methodologies of Ontology Design

4.2.1. In General

4.2.2. Method of Uschold and King4.2.3. Ontology 1014.2.4. Unified Process for ONtology (UPON)

4.2.5. Ontology Design Patterns

4.3.Ontology Learning4.4.Ontology Mapping and Ontology Merging

Dienstag, 15. Januar 13

Page 69: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

69

Ontology Learning•Ontology Design is very expensive wrt. time and resources•can we automate the process or at least some parts?

•Ontologies can be „learned“ automatically

•Ontology Learning defines a set of methods and techniques•for fundamental development of new ontologies •for extension or adaption of already existing ontologies

•in a (partly) automated way from various resources.

•also referred to as Ontology Generation, Ontology Mining, or Ontology Extraction

•Automatisation requires help from•Natural Language Processing (NLP)•Data Mining•Machine Learning techniques (ML)

Dienstag, 15. Januar 13

Page 70: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

70

Ontology Learning•Fundamental data for ontology learning:

•Structured Data

•Semi-structured Data

•Unstructured Data

XML

HTMLXML

HTML

Machine Learning

Natural Language Processing

+Machine Learning

Dienstag, 15. Januar 13

Page 71: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

71

Ontology Learning - Basic Approach (I)

document corpus

(1) Term extraction <dog> <dogs>

<cat> <siamese cat>

terms ontology

(2) Conceptualizationpet

dog

siamese cat

cat

(3) Evaluation and Adaption

semi-automated process

Dienstag, 15. Januar 13

Page 72: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

72 • Natural Language Processing:(1)Tokenizer / Sentence Splitter(2)Morphological Analysis

• Stemming

• Lemmatizer(3)POS-Tagger

• Syntactic categories (verb, nomen, preposition, etc...)

(4)Regular Expression Matching(5)Chunks

• Detection of larger coherent structures in sentences(6)Syntactic Parser

Ontology Learning - Basic Approach (II)

Dienstag, 15. Januar 13

Page 73: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

73

Ontology Learning - Layer Cake

Termsriver, country, nation, city, capital, ...

Multilingual Synonyms{country, nation, Land}

Concept Descriptionc:=country:=<description(c), uri(c)>

Hierarchy of Conceptscapital ⊑c city , city ⊑c InhabitedGeoEntity

RelationsflowThrough(dom:river, range:GeoEntity)

Hierarchy of RelationscapitalOf ⊑R locatedIn

Axiomatic Schematariver ⊓ mountain = ∅

General Axions∀x((country(x)→∃y capitalOf(y,x)) ∧ (∀z (capitalOf(z,x)→y=z)))

Dienstag, 15. Januar 13

Page 74: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

74

Ontology Learning Tasks

•which tasks from ontology development can be automated?

Ontology Learning Tasks •Ontology creation•Ontology schema extraction•Extraction of ontology instances•Ontology integration and navigation•Ontology update•Ontology enrichment

Dienstag, 15. Januar 13

Page 75: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

75

Ontology Learning Tasks

•Ontology creation•Design from the scratch by an expert•Maschine Learning (ML) supports the expert during design by

•Suggestions of well suited relations among concepts•Integrity / consistency checking of the designed ontology

•Ontology schema extraction•Extraction of schemata from web documents / text documents / etc.

•ML uses input data and meta ontology to create fully-fledged domain ontologies (with the help of human experts)

Dienstag, 15. Januar 13

Page 76: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

76

Ontology Learning Tasks

•Extraction of ontology instances•Extraction of ontology instances from semi-structured or unstructured data to fill already existing ontology schemata with individuals

•applies technologies from Information Retrieval and Data Mining

•Ontology integration and navigation•Reconstruction of existing knowledge bases and navigation in existing knowledge bases,

•e.g. translation of a knowledge base from FOL to OWL

Dienstag, 15. Januar 13

Page 77: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

77

Ontology Learning Tasks

•Ontology update•Extension, reconstruction and adaption of already existing ontologies, e.g. adation to a changed domain

•relates to parts of ontologies that have been created in the way that they can be changed

•Ontology enrichment•(also Ontology tuning) relates to automated update of smaller parts of existing ontologies

•doesn‘t changes concepts and relations, but refines them (more precise)

•in difference to ontology update only parts of the ontology are considered that usually shouldn‘t be changed

Dienstag, 15. Januar 13

Page 78: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

78

4.Ontology Engineering4.1.Ontologies revisited4.2.Methodologies of Ontology Design

4.2.1. In General

4.2.2. Method of Uschold and King4.2.3. Ontology 1014.2.4. Unified Process for ONtology (UPON)

4.2.5. Ontology Design Patterns

4.3.Ontology Learning4.4.Ontology Mapping and Ontology Merging

Dienstag, 15. Januar 13

Page 79: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

79

Ontology Mapping

•to communicate, partners must use the same formal specification of a formal conceptualization

•but, to agree on the same ontologyis not always a simple task...(different applications, different views and opinions, different contexts,...)

•Partners, who use different ontologies (for the same domain) will not be able to communicate or to understand each other

•Ontologies must be mapped upon each other(= Ontology Mapping / Ontology Matching / Ontology Alignment )

Dienstag, 15. Januar 13

Page 80: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

80

Ontology Mapping

•is a process, where two ontologies are set in relation with each other on a conceptual level (Schema Matching).

•Thereby, instances of the start ontology OS will be transformed into instances of the target ontology OT according to their semantical relationship by using a mapping M: OS → OT .

•The mapping M can be•injective (not invertible) or also•bijective sein

Dienstag, 15. Januar 13

Page 81: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

81

Heterogeneity of Ontology

•Syntactical Heterogeneity:•Ontologies are available in different ontology representation languages

(E.g.: in OWL DL and F-Logic)•can be resolved on the conceptual level, most times preserving the

semantics

•Terminological Heterogeneity:•Naming differences for the identification of entities in different

ontologies (E.g.: ,Artikel‘ and ,Publication‘)•Might occur because different (natural) languages are used

•Conceptional (Semantic) Heterogeneity•Ontologies model the same domain, but in different ways•Differences might occur in completeness, granularity, perspective, etc.

•Semiotic (Pragmatic) Heterogeneity•Differences in interpretation of the domain to be modelled by humans

(difficult)

Dienstag, 15. Januar 13

Page 82: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

82

Ontology Mapping

Thing

Car Locomotive

Big Car

Bus

Engine

Cylinder Horsepower

is_a

is_a

is_a

is_a

has

hashas

has

Object

Wheeled

Train Automobile

AutobusHorsepower

is_a

is_ais_a

is_ahas has

Ontology 2Ontology 1

owl:equivalentClass

owl:equivalentClass

owl:equivalentClass

owl:equivalentClass

Dienstag, 15. Januar 13

Page 83: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

83

Ontology Mapping

•Ontology Mapping is not a “new” problem…•the same problems occur in Data Integration, e.g. for federated databases

•Federated databases manage local schemata for each contributing local database

•Data Integration (Schema Matching) can be applied via•bilateral mapping or•global Schemata and a mapping for each single local schema (mapping can be implemented via view)

Dienstag, 15. Januar 13

Page 84: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

84

Ontology Mapping Process

•Basic approach

OS1

OS2

importontologies

findsimilarities

specifymapping / merging

mappingM(OS1)

mergedontology

1 2 3

Dienstag, 15. Januar 13

Page 85: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

85

Ontology Mapping Process

Schema-Based Matching Techniques70

Structure-LevelElement-Level

Syntactic External Syntactic External Semantic

String-Based• Name

similarity

• Description similarity

Language-Based• Tokenization

• Lemmati-zation

• Morphology

LinguisticResources• Lexicons

• Thesauri

Constraint-Based• Type

similarity

• Key properties

AlignmentReuse• Entire

schema or

• Ontology fragments

Upper LevelvsDomain specificOntolo-gies

Data Analysis & Statistics• Frequency

• Distribution

Graph-Based• Graph

homo-morphism

• Path, children,

Taxonomy-Based• Taxonomy

structure

RepositoryOfStructures• Structure

metadata

Model-Based• DL reasoner

• SAT Solver

Linguistic Internal Relational

Terminological Structural Semantic

Schema-Based Matching Techniques

Extensional

Schema-Based Matching Techniques

Kind of Input

Basic Techniques

Granularity /Input Interpretation

Euzenat, Shvaiko: Ontology Matching, Springer 2007Dienstag, 15. Januar 13

Page 86: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

86

Ontology Merging

70•is a process, where from two or mor start ontologies a new ontology is created.

•The new ontology unifies and substitutes the original start ontologies.

•Union ApproachThe new ontology is the union of all entities of the start, where conflicts arrising from different representations of identical concepts from the start ontologies must be resolved.

•Intersection Approach (extensional)The new ontology only consists out of parts of the start ontologies that overlap.

Dienstag, 15. Januar 13

Page 87: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

87

4.Ontology Engineering4.1.Ontologies revisited4.2.Methodologies of Ontology Design

4.2.1. In General

4.2.2. Method of Uschold and King4.2.3. Ontology 1014.2.4. Unified Process for ONtology (UPON)

4.3.Ontology Learning4.4.Ontology Mapping and Ontology Merging

Dienstag, 15. Januar 13

Page 88: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

Linked

Data

Applic

ations

&

Semant

ic Sea

rch

Next lecture

88

Dienstag, 15. Januar 13

Page 89: (12) Semantic Web Technologies - Ontological Engineering

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

89

4. Semantic Web Technologies4.1 Ontological Engineering

Literature

» A. Gomez-Perez et al.Ontological Engineering, Springer, 2004.

» J. Euzenat, P. Shvaiko: Ontology Matching, Springer, 2007.

Dienstag, 15. Januar 13