1. Semantic Web
Technologies
Lecture 6: Applications in the Web of Data
03: Ontology Design 101
Dr. Harald Sack
Hasso Plattner Institute for IT Systems Engineering
University of Potsdam
Spring 2013
This file is licensed under the Creative Commons Attribution-NonCommercial 3.0 (CC BY-NC 3.0)
2. 2
Lecture 6: Applications in the Web of Data
Open HPI - Course: Semantic Web Technologies
Semantic Web Technologies , Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
3. 3
03 - Ontology Design 101
Open HPI - Course: Semantic Web Technologies - Lecture 6: Applications in the Web of Data
Semantic Web Technologies , Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
4. (Noy, McGuinness, 2000)
Ontology Development 101
•Example of a wine and food ontology
4
Which wine is the right one for fish?
French wine-growing
regions and wines
A shared
ontology on
wine and food
Californian
wine-growing regions
and wines
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
5. (Noy, McGuinness, 2000)
Ontology Development 101
•Example of a wine and food ontology
5
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
6. The Ontology Development 101 Process
determine consider enumerate define define define create
scope reuse terms classes properties constraints instances
6
•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
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
7. The Ontology Development 101 Process
determine consider enumerate define define define create
scope reuse terms classes properties constraints instances
6
•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
„There is no one cor
rect way to
model a domain.
There are always vi
able alternativ es.“
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
8. Determine Domain and Focus
determine consider enumerate define define define create
scope reuse terms classes properties constraints instances
7
•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
9. Determine Domain and Focus
determine consider enumerate define define define create
scope reuse terms classes properties constraints instances
7
•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
These Questions migh
t change
within the ontology
life cycle
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
10. Determine Domain and Focus
determine consider enumerate define define define create
scope reuse terms classes properties constraints instances
8
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?
•...
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
11. Consider Reuse
determine consider enumerate define define define create
scope reuse terms classes properties constraints instances
9
•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
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
12. Consider Reuse
determine consider enumerate define define define create
scope reuse terms classes properties constraints instances
9
•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 f
ind a suitabl
adaption is t e ontology or
oo complex th if the
en create a n
ew ontology!
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
13. Develop a Terminology
determine consider enumerate define define define create
scope reuse terms classes properties constraints instances
10
•About which concepts are we talking?
•What do we want to say about these concepts?
•Which properties do these concepts have?
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,...
•...
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
14. Develop Classes and Class Hierarchies
determine consider enumerate define define define create
scope reuse terms classes properties constraints instances
11
•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 an approach to model class hierarchies
•top-down:
start with most general concept with subsequent specialization
•bottom-up:
start with most specific concepts with subsequent grouping into
more general concepts
•middle-out:
start with most imnportant concepts with subsequent
specialization and generalization
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
15. Define Properties
determine consider enumerate define define define create
scope reuse terms classes properties constraints instances
12
•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
16. Define Property Constraints
determine consider enumerate define define define create
scope reuse terms classes properties constraints instances
13
•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
17. Definition of Individuals
determine consider enumerate define define define create
scope reuse terms classes properties constraints instances
14
•Create individuals populating the classes
•every class directly becomes the type of its individuals
•every superclass of a type is also a type of its individuals
•Create instances for properties, i.e. assignment of property
values for the individuals 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
18. The Ontology Development 101 Process
determine consider enumerate define define define create
scope reuse terms classes properties constraints instances
15
•in practice an iterative Process that repeats continuously
and improves the ontology
•Attention:
•Further refinement should include the formulation of axioms
•Not well suited for large scale industrial ontology engineering
•version control, evaluation, quality assurance, etc.
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
19. The Ontology Development 101 Process
determine consider enumerate define define define create
scope reuse terms classes properties constraints instances
15
•in practice an iterative Process that repeats continuously
and improves the ontology
•Attention:
•Further refinement should include the formulation of axioms
•Not well suited for large scale industrial ontology engineering
•version control, evaluation, quality assurance, etc.
„There is no one cor
rect way to
model a domain.
There are always vi
able alternativ es.“
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
20. 16
Further Ontology Design Methodologies
Semantic Web Technologies , Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
21. Unified Process for Ontology Building De Nicola, Missikoff, Navigli (2005)
17
•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
22. 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,
18 Transition). Each iteration results in a new prototype.
•Each iteration consists of 5 workflows (Requirements, Analysis,
Design, Implementation, Test)
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
23. 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
19 development does vary
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
24. Ontology Design Patterns (Gangemi et al., 2005)
•Adapting an idea originally from architecture
•recurring modeling problems
20
•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
http://ontologydesignpatterns.org/
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
25. Ontology Design Patterns - A Simple Example
•Example: taking over a temporary role
21
•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 •represent objects and
plays a character
the roles they play
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam http://ontologydesignpatterns.org/
26. 03 - Ontology Design 101
22
Semantic Web Technologies , Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
27. 23
04 - Linked Data Engineering
Open HPI - Course: Semantic Web Technologies - Lecture 6: Applications in the Web of Data
Semantic Web Technologies , Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam