Ontology Flashcards
Ontology
An ontology defines a common vocabulary for people who need to share information in a domain.
It includes machine-interpretable definitions of basic concepts in the domain and relations among them.
5 Motivations to develop an ontology.
The need to:
- Share common understanding of the structure of information among people or software agents.
- Make domain knowledge explicit and reusable.
- Compare domains, applications, context.
- Facilitate collaboration.
- Provide a model to study a domain.
An ontology includes: (3)
- Classes (concepts, kinds, types, sorts of thing)
- Relationships (properties, roles)
- Instances (individuals)
Classes
Answers to the question “what kind of thing is this”
Classes define the main concepts in the domain.
Class hirearchy
A class can be:
- Superclass (parent) of another class.
- Subclass (child) of another class.
Every subclass inherits the characteristics of its superclass in the domain.
Multiple inheritance is usually allowed. E.g. SeaPlane can be both a Plane and WaterBorneVehicle, although neither of these two is a subclass of the other one.
Individuals
Ontologies usually have individuals also called instances.
These are the specific objects we will see in our world. Every individual belongs to at least one class.
Individuals inherit the attributes of their class(es), and have specific values (that differentiate them from other individuals in the class).
OWL relationships
Called properties and are divided into those:
- between individuals (object properties), or
- relating an individual to a value (datatype properties, elsewhere often called attributes).
Relationships (4)
- Allow us to define classes (e.g. all individuals having certain properties)
- Specify the main attributes (by naming them and defining restrictions) which each individual in the class should have,
- Allow us to define links between classes,
- Can specify the link between two classes by naming it and defining restrictions.
RDF
Resource Description Framework
is a framework for representing information on the Web.
RDF is extensively used in providing linked data.
- RDF allows the representation of data about resources on the Web, and also about physical things in the real world, as well as about abstract ideas.
- You can start by thinking of RDF as a way of describing individual things and their relationships.
- RDF makes descriptions out of triples.
- A large collection of data is then a large network of nodes and links where every one of the links is the middle part of an RDF triple.
URL
Uniform Resource Locator.
It means a Web Resource attress, including protocol (e.g. HTTP).
URI
Uniform Resource Indicator
Includes URLs and resources having no location (e.g. urn:isbn:073727272 (a book)).
Could be a way of referring to a real world thing (e.g. a person).
IRI
Internationalized Resource Indicator.
Like URI but allows unicode.
RFC2396 resource
“A resource can be anything that has identity”
What does it mean to assert an RDF triple
To say that some relationship, indicated by the predicate, holds between the resources denoted by the subject and object.
The statement corresponding to an RDF triple is known as an RDF statement.
The predicate itself is an IRI and denots a property, that is, a resource that can be thought of as a binary relation.
Description Logic exists to describe two kinds of thing
- Concepts
- Roles
Description Logic
Concepts
- A concept can be thought of as a set of things (its instances)
- The word ‘concept’ means the same as ‘class’ in this context.
E.g. Human, Pizza, Grandmother, MeatTopping
Description Logic
Roles
Can be thought of as a binary relation between things
E.g. hasTopping, isMotherOf, isGrandmotherOf
8 Ways in which concepts are built up
- Atomic concepts
- Universal concept
- Bottom concept
- Negated concept
- Concept intersection
- Concept union
- Universal value restriction
- Existential value restriction
Building concepts
Atomic concepts
Names of concepts, e.g. Human, Pizza
Building concepts
Universal concept
⊤
(tautology)
Instances are all things in the ontology.
Building concepts
Bottom concept
⊥
(contradiction)
This is the class with no instances.
A.k.a. the empty concept
Building concepts
Negated concept
¬C
where C
is any concept.
Instances are things not in C
.
Building concepts
Concept intersection
C ⨅ D
The things in the class are instances of both C
and D
.
where C
and D
are any concepts
Building concepts
Concept union
C ⨆ D
The things in the class are instance of C
or D
or both.
where C
and D
are any concepts.
Building concepts
Universal value restriction
∀r. C
where C
is a concept and r
is a role.
The things in the class where everything to which they stand in relation r
belongs to the class C
.
E.g. ∀ eats. Vegetable
is the class of things that only eat vegetables
Building concepts
Existential value restriction
∃r. C
where C
is a concept and r
is a role.
The things in the class where something to which they stand in relation r
belongs to the class C
.
E.g. ∃ eats. Vegetable.
is the class of things that eat at least one thing which is a Vegetable.
Concept equivalence
C ≣ D
Asserting that means concepts have the same instances.
Concept subsumption
C ⊑ D
Asserting that means C
is a sub-concept of D
.
TBox & ABox
A typical Description logic consists of:
- TBox: A set of terminological axioms
- ABox: A set of assertions about individuals
7 Characteristics of Relationships
- functional
- inverse functional
- transitive
- symmetric
- asymmetric
- reflexive
- irreflexive
7 Characteristics of Relationships
Functional relationship
If A
is any individual then it never happens that:
- there are individuals B
and C
which are different from each other and R(A, B)
and R(A, C)
7 Characteristics of Relationships
Inverse functional relationship
If A
is any individual, then it never happens that:
- there are individuals B
and C
which are different from each other, and
- R(B, A)
and R(C, A)
7 Characteristics of Relationships
Transitive relationship
If A
, B
, C
are any individuals (including possibly some of them being equal to others) then it always happens that:
- if R(A, B)
and R(B, C)
, then R(A, C)
7 Characteristics of Relationships
Symmetric relationship
If A
and B
are any individuals (including possibly both being the same) then it always happens that:
- if R(A, B)
, then R(B, A)
.
7 Characteristics of Relationships
Assymetric relationship
If A
and B
are any individuals (including possibly both being the same) then it never happens that:
- if R(A, B)
, then R(B, A)
.
7 Characteristics of Relationships
Reflexive relationship
If A
is any individual, then it always happens that
- R(A, A)
holds
7 Characteristics of Relationships
Irreflexive relationship
If A
is any individual then it never happens that
- R(A, A)
holds
Composing properties
Given properties R
and S
R ○ S
is the property where x
is linked to z
if:
1. x
is linked to something y
by R
, and
2. y
is linked to z
by S
Boolean operations on Roles
If R
and S
are roles then we can construct these roles:
-
R ⨆ S
(union) -
R ⨅ S
(intersection) -
¬ R
(complement)
Boolean operations on Roles
R ⨆ S
(union)
Two things are related by this role if they are related by R
or by S
or by both.
Boolean operations on Roles
R ⨅ S
(intersection)
Two things are related by this role if they are related by both R
and S
.
Boolean operations on Roles
¬ R
(complement)
Two things are rleated by this role if they are not related R
.
Transitive closure
R ᐩ
Two things x
and y
are related by this role if there is a sequence of n+1
things x₀, x₁, ..., xₙ
where x = x₀
, xₙ = y
, n ≥ 1
and R( xᵢ , xᵢ₊₁ )
for all 0 ≤ i < n
.
Reflexive Transitive closure
R*
Two things x
and y
are related by this role if there is a sequence of n+1
things x₀, x₁, ..., xₙ
where x = x₀
, xₙ = y
, n ≥ 0
and R( xᵢ , xᵢ₊₁ )
for all 0 ≤ i < n
.
Difference between R*
and Rᐩ
R*(x, x)
always holdsRᐩ(x, x)
only holds in the case that R(x, x)
.
Inverse
R ⁻ ¹
or R ⁻
(inverse / converse)
This is the role where R⁻ (x, y)
iff R (y, x)
.
Identity
id(C)
(identity role on concept C
)
This is the role where the domain and range are C
and x
is related to y
iff x = y
.
Interpretation
This is a set (domain) Δᴵ
and for each concept C
,
a set Cᴵ ⊆ Δᴵ
,
and for each role
a binary relation on Δᴵ
,
and elements of Δᴵ
for each individual,
subject to the TBox and ABox assertions.
It is possible that Cᴵ
is empty for some concepts.
Subsumption
For concepts A
and B
(with T-Box axioms T
) we say that
A
is subsumed by B
, or that B
subsumes A
, and write A ⊑ B
if
for every model I
of T
we have Aᴵ ⊆ Bᴵ
.
If A ⊑ B
then B
is a more general concept than A
.
E.g. Mother
subsumes Grandmother
because every grandmother is a mother.
Satisfiability
A concept A
is said to be satisfiable if there is a model I
in which Aᴵ
is non-empty.
The concept is unsatisfiable when Aᴵ
is empty in every model.
A ⊑ B
if and only if A ⨅ ¬B
is unsatisfiable.
3 Steps to get concept descriptions into Negation normal form (NNF)
- Replace
¬ ( ⍺ ⨆ β )
by¬⍺ ⨅ ¬β
, and replace¬ ( ⍺ ⨅ β )
by¬⍺ ⨆ ¬β
. - Replace
¬ ∃ r. ɑ
by∀ r. ¬ɑ
and replace¬∀ r. ɑ
by∃ r. ¬ɑ
- Replace
¬¬⍺
by⍺
The ⍺
and β
can be any concept descriptions, not just concept names.
Tableu method in description logic:
General idea
Construct a tree in stages and continue until no further development is possible.
Paths may become closed and if all paths close then the concept you started with is unsatisfiable.
Each path constructed by building the tree is a part of a possible model.
A path becomes closed when it contains both A(x)
and ¬A(x)
for some concept name A
. This means that particular attempt to build a model has to be abandoned.
To show that a concept description ⍺
is satisfiable, we start with a note ⍺(x)
and develop a tree using the rules.
x
in ⍺(x)
is not a variable. It is a name for an individual.
Tableu method in description logic:
2 forms of nodes in the tree
-
⍺(x)
where⍺
is a concept description andx
is an individual name. -
r(x, y)
wherer
is a role name andx
andy
are individual names.
The assertion ⍺(x)
means that x
satisfies ⍺
and r(x, y)
means that x
stands in relation r
to y
Tableu method in description logic:
Rule for ⨆
Tableu method in description logic:
Rule for ⨅
Rule for ∃
Rule for ∀