ontology engineering: ontology construction i

39
Ontology construction I Course Ontology Engineering

Upload: guus-schreiber

Post on 20-May-2015

1.509 views

Category:

Education


4 download

TRANSCRIPT

Page 1: Ontology Engineering: ontology construction I

Ontology construction I

Course Ontology Engineering

Page 2: Ontology Engineering: ontology construction I

Overview

• Subclass relations

• Reflections on category representations– Levels in hierarchies– Sets versus prototypes

• Construction patters– N-ary relations– Value sets versus value partitions

2

Page 3: Ontology Engineering: ontology construction I

3

Subclass relation in UML

Page 4: Ontology Engineering: ontology construction I

4

Multiple inheritance

Page 5: Ontology Engineering: ontology construction I

5

Generalization properties• Completeness

{complete} = each object participates in AT LEAST one subclass

{incomplete} = subclass participation is optional (use, e.g. with single subclasses)

• Disjointedness{disjoint} = object participates in AT MOST one subclass

{overlapping} = object may belong to multiple subclasses

“multiple specialization”

Page 6: Ontology Engineering: ontology construction I

6

Two different organizations of the disease hierarchy

Page 7: Ontology Engineering: ontology construction I

7

viewpoints - simultaneous multiple classifications

Page 8: Ontology Engineering: ontology construction I

8

Limitations of Hierarchies

• What’s in a link? – Hierarchical links often have different semantics

• “Dimensions” of distinction making provide rationale for hierarchical levels– (Multiple) classification along different dimensions

within single hierarchy creates confusion and makes applications unnecessarily complex

• Hierarchy enforces a single fixed sequence of dimensions– fixed ordering not always possible or desirable

Page 9: Ontology Engineering: ontology construction I

Categorization

• OWL (Description logic) takes an extensional view of classes– A set is completely defined by its members

• This puts the emphasis on specifying class boundaries

• Work of Rosch et al. takes a different view

9

Page 10: Ontology Engineering: ontology construction I

Categories (Rosch)

• Help us to organize the world

• Tools for perception

• Basic-level categories– Are the prime categories used by people– Have the highest number of common and

distinctive attributes– What those basic-level categories are may

depend on context

10

Page 11: Ontology Engineering: ontology construction I

Basic-level categories

11

Page 12: Ontology Engineering: ontology construction I

Vertical organization of hierarchies

• Basic-level classes often occur as a middle layer in hierarchies

• Higher levels: abstract classes that organize the hierarchy

• Lower levels: domain/context specific classes– may require particular expertise to understand

12

Page 13: Ontology Engineering: ontology construction I

Class room exercise

• Study the hierarchy of “chairs” in the Art & Architecture Thesaurus

http://www.getty.edu/research/tools/vocabularies/aat/

• Check whether this hierarchy follows the pattern described by Rosch

13

Page 14: Ontology Engineering: ontology construction I

Horizontal organization of categories

• Categories at the same level of abstraction

• People use prototypes to characterize these– Some chairs are more typically “chair” than

others

• Emphasis is more on what is common for a category than on differences with other categories

14

Page 15: Ontology Engineering: ontology construction I

Construction patterns:

Representing n-ary relations

Page 16: Ontology Engineering: ontology construction I

Re-representing properties as classes

• To say something about a property it must be re-represented as a class– property: hasDanger Class: Danger

• plus properties of Danger:

hasReason hasRisk

hasAvoidanceMeasure

– Sometimes called “reification”• But “reification” is used differently in different communities

Page 17: Ontology Engineering: ontology construction I

Pattern 1: dependent values

• Relation between two concepts

• One of the concepts can have multiple features that depend on the relation

• Example: diagnosis of a disease with a certain confidence level

Page 18: Ontology Engineering: ontology construction I

Pattern 1: example instance

Page 19: Ontology Engineering: ontology construction I

:Christine a :Person ; :has_diagnosis _:Diagnosis_Relation_1 .

:_Diagnosis_relation_1 a :Diagnosis_Relation ; :diagnosis_probability :HIGH; :diagnosis_value :Breast_Tumor_Christine .

Pattern 1: example instancein RDF

Page 20: Ontology Engineering: ontology construction I

Pattern 1: class constraints

Page 21: Ontology Engineering: ontology construction I

Pattern 1: class constraintsin RDF

:Diagnosis_Relation a owl:Class ; rdfs:subClassOf [ a owl:Restriction ; owl:someValuesFrom :Disease ; owl:onProperty :diagnosis_value ] ; rdfs:subClassOf [ a owl:Restriction ; owl:allValuesFrom :Probability_values ; owl:onProperty :diagnosis_probability ] .

:Person a owl:Class ; rdfs:subClassOf [ a owl:Restriction ; owl:allValuesFrom :Diagnosis_Relation ; owl:onProperty :has_diagnosis ] .

Page 22: Ontology Engineering: ontology construction I

Pattern 2: relation as class

• The relation itself is a concept• All arguments are equally important• Examples:

– Enrollment– Transaction– Purchase– Clue (the butler with the rope in the kitchen)

• See also the notion of UML association class

Page 23: Ontology Engineering: ontology construction I

Association class

Page 24: Ontology Engineering: ontology construction I

Pattern 2: example instance

Page 25: Ontology Engineering: ontology construction I

Pattern 2: example instance in RDF:Purchase_1 a :Purchase ; :has_buyer :John ; :has_object :Lenny_The_Lion ; :has_purpose :Birthday_Gift ; :has_amount 15 ; :has_seller :books.example.com .

Page 26: Ontology Engineering: ontology construction I

Pattern 2: class constraints

Page 27: Ontology Engineering: ontology construction I

Pattern 2: class constraints in RDF:Purchase a owl:Class ; rdfs:subClassOf [ a owl:Restriction ; owl:allValuesFrom :Purpose ; owl:onProperty :has_purpose ] ; rdfs:subClassOf [ a owl:Restriction ; owl:cardinality 1 ; owl:onProperty :has_buyer ] ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty :has_buyer ; owl:someValuesFrom :Person ] ;...

Page 28: Ontology Engineering: ontology construction I

Literature

• http://www.w3.org/TR/swbp-n-aryRelations/

28

Page 29: Ontology Engineering: ontology construction I

Construction patterns:

Specifying value sets

Page 30: Ontology Engineering: ontology construction I

30

Specifying value sets

• Identify modifiers that are mutually exclusive– Domestication– Risk– Sex– Age

• Make meaning precise– Age Age_group

Modifiers Domestication

Domestic Wild Feral

Risk Dangerous Risky Safe

Sex Male Female

Age Child

Infant Toddler

Adult Elderly

Page 31: Ontology Engineering: ontology construction I

31

Options for representing value sets

• Symbolic values– Individuals that enumerate all states of a Quality

• The enumeration of the values equals the quality class

• Value partitions– Classes that partition a Quality

• The disjunction of the partition classes equals the quality class

Page 32: Ontology Engineering: ontology construction I

32

Value sets for specifying values

• A quality – SexValue• Individuals for each value

– male, female

• Values all different (NOT assumed by OWL)• Value type is enumeration of values

SexValue = {male, female}

• A functional property hasSex

MaleAnimal = Animal and hasSex is male

Page 33: Ontology Engineering: ontology construction I
Page 34: Ontology Engineering: ontology construction I

34

Value Partitions: example Age Group

• How to represent the values for Age Group?

• Option: – specify Child, Toddler, etc. as subclasses of

AgeGroup– Specify age-group values as instances of the relevant

age-group classex:MyAgeGroup rdf:type ex:Adult .

• Main advantage: flexibility

Page 35: Ontology Engineering: ontology construction I
Page 36: Ontology Engineering: ontology construction I
Page 37: Ontology Engineering: ontology construction I

37

Issues in specifying values

• Value Partitions– Can be subdivided and specialised– Fit with philosophical notion of a quality space

(cf. e.g. DOLCE)– Require interpretation to go in databases as values

• in theory but rarely considered in practice

– Work better with existing classifiers in OWL-DL

• Value Sets– Cannot be subdivided– Fit with intuitions– More similar to databases – no interpretation– Work less well with existing classifiers

Page 38: Ontology Engineering: ontology construction I

38

Class room exercise

• Assume the following use case: for the collection of a museum we need to describe the color of clothes. These clothes can have subtle color variations, so we need an extensive color vocabulary. The museum uses the Art and Architecture Thesaurus for describing the items in their collections. This thesaurus contains extensive information about colors.

• Your task is to specify the values that a property "hasColor" can take for the class "Cloth". AAT contains more than 200 colors, but you can limit yourself to a representative subset of purple colors (at least 2 layers of ancestors below <purple color>).The subset should allow you to specify the relevant distinctions you want to make.

Page 39: Ontology Engineering: ontology construction I

Literature

• http://www.w3.org/TR/swbp-specified-values/

39