Title: Foundations of the Semantic Web: Ontology Engineering
1Foundations of the Semantic WebOntology
Engineering
- Building Ontologies 1cDefinitions, Descriptions,
Restrictions Axioms - The mechanics of untangling
- Alan Rector colleagues
2The mechanics for adding necessary restrictions
depends on whether a concept is defined or
primitive
- Primitives may have necessary restrictions on the
main frame in OilEd - Definitions must have necessary restrictions
expressed as separate axioms - The transition from one to the other is a common
operation - New tools will make it easier, but for now it is
a bit painful
3Describing defined concepts
- Suppose we want to say
- All professors have salary some kind of
acceptable - All lecturers have salary some kind of derisory
- The salary is not part of the definition of being
a professor or lecturer - The sufficient conditions are Person and
academic_rank - You dont recognise somebody as being a lecturer
because they have a derisory salary you
conclude that they have a derisory salary because
they are a lecturer. - Lecturer ? Person hasAcademicRank
someValuesFrom Lecturer_rankLecturer ? hasSalary
someValuesFrom Derisory - Note the double arrow vs single arrow!
- The single arrow is expressed as an axiom
- subclass-of(Lecturer (restriction hasSalary
someValuesFrom Derisory)) - subclass-of means implies
- Otherwise we would have to know that somebody had
a derisory salary to recognise them as a lecturer
4To do it
- Create a functional property hasSalaryRange
- Create a ValueType SalaryRangeValueType with
values acceptable_salary and derisory_salary - Create a subclass axiomsubclass-of(Lecturer,
(restriction hasSalaryRange someValuesFrom
derisory_salary)) - Test it by creating a class probe_poor_paid?
(restriction hasSalaryRange not acceptable_salary)
5AxiomLecturer ? hasSalaryRange someValuesFrom
derisory
Note that the axiom appears upside downin
OilEd Lecturer ? hasSalarRange
(Class hierarchy inset from viewer)
6What happens if we just add it on the main pane?
This is wrong why?
7How will Black_lecturer be classified? Why?
If you are not sure, try it, find out, and fix
itTo be correct, this probe should be
classified under lecturer. Ontology
Teaching-5b-axioms-wrong.daml
8Suppose we want to change ACS_module to a defined
class
- ACS_Module ? Module and (restriction
ratedAs someValuesFrom ACS_rating) - What do we have to do?
9Move current restrictions to an axiom
These move to axioms(see next slide)
10Equivalent Subclass Axiom
11Then redefine ACS_module
complete button pressed
Definition in terms of rating
12This is a common pattern as ontologies evolve
- In fact it is what we would like to encourage you
to do - First sketch things in as primitives
- Then define them as appropriate
- A better User Interface coming Real Soon Now.