oiled an introduction to oiled sean bechhofer. topics we will discuss basic oiled use –defining...

20
OilEd An Introduction to OilEd Sean Bechhofer

Upload: lambert-gordon

Post on 13-Dec-2015

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This

OilEd

An Introduction to OilEd

Sean Bechhofer

Page 2: OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This

Topics we will discuss• Basic OilEd use

– Defining Classes, Properties and Individuals in an Ontology– This is not intended as a tutorial on building ontologies, simply to provide

enough information about the basic mechanics of using the tool. Other editors are available!

• Reasoning with Classes– Subsumption Reasoning

• All car drivers are adults– Consistency Checking

• A vegetarian eating beef doesn’t make sense.

• Reasoning with Individuals– Instance retrieval

• What are all the known instances of Professor?

Page 3: OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This

Topics we will try and avoid• Reasoning with concrete datatypes

– People aged between 14 and 22.

• Reasoning about individual value fillers– Who is John’s friend?– How old is Fred?

• Reasoning with enumerations– colours == one-of{red, green, blue}

Page 4: OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This

What is OilEd?• Not a fully-fledged ontology editor.• Not a knowledge base construction tool. • Low cost, easy editor.• Originally to increase awareness of

OIL & DAML+OIL and to demonstrate the full expressive power of OIL and DAML+OIL. At the time no other editors did this.

• Provides a platform to explore how to use the reasoner.

• Some OWL support is now provided

– But this is still somewhat experimental

Page 5: OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This

Interesting Features• Arbitrary class expressions can be used as slot fillers.

– Extending the frame-based paradigm.

– Boolean connectives.

• Primitive & defined classes.• A number of slot constraint types.

– Explicit quantification.

• Slot hierarchies.• Axioms

– Disjointness, subclass and equality.

• Possibility of using a reasoner.

Page 6: OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This

A Whistle-Stop Tour• Main Panels:

– Classes– Properties– Individuals– Axioms– Namespaces– Query

• Basic Expression manipulation

• Connecting to and running the Reasoner

Page 7: OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This

Classes• Classes panel shows a

list of classes and their definitions

• Right click menu on the list provides access to relevant functions

– add– remove– rename – usage

Page 8: OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This

Adding, Removing, Renaming• Objects (classes, properties, individuals) cannot be added using a

name already in use

• Similarly for renaming.

• Renaming renames all the uses of an object.

• Objects cannot be removed if they are in use.

Page 9: OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This

Class Hierarchy• Class hierarchy panel shows

(unsurprisingly) the class hierarchy

• Displayed as a tree

• Multiple inheritance represented by multiple occurrence in the tree

• Lower pane shows multiple parents where appropriate

Page 10: OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This

A Frame• The Frame panel is the basic

building block of the OilEdinterface

• The upper panel shows superclasses of the frame

• The lower panel shows anyrestrictions that apply

• Interpreted as a conjunction of all the superclasses and restrictions.

• Buttons and right menu actions allow editing of the description.– Adding superclasses– Adding restrictions

Page 11: OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This

Properties• Properties panel

shows a list of properties and their characteristics

– domain– range– transitivity etc.

Page 12: OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This

Individuals• Individuals panel

shows a list of individuals and their characteristics

– types– relations

Page 13: OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This

Axioms• Axioms panel shows a

list of axioms

Page 14: OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This

Namespaces• OilEd allows multiple

namespaces to be used within an ontology.

• Names are shortened when rendering

• Namespace panel allows editing of namespaces and selection of a default

• Editing a namespace affects all the objects that use that namespace.

Page 15: OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This

Using a Reasoner• OilEd uses a DL reasoner to calculate class subsumption hierarchies,

class consistency and query individuals.

• This is done via a protocol known as DIG. There are two currently available DIG reasoners:

– FaCT– RACER

• For our examples we will use RACER as it offers extra A-Box (instance reasoning) functionality.

Page 16: OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This

Caveat• Current state of the art DL reasoners (FaCT and RACER) are built to

slightly different specifications– They make the Unique Name Assumption (UNA)– Only very simple data types are supported (if at all)– Enumerated classes (one-of) is supported through a “fudging” translation

• This means that reasoning in the presence of one-of is incomplete

• As a result, we will try and avoid these areas in the examples– Where appropriate we will indicate this.

Page 17: OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This

Reasoning• KB translated to equivalent DL model, and passed to a reasoner.• Spots inconsistent definitions

– e.g. contradictions in cardinality constraints or value restrictions.

• mad cows!

• Organises the classification hierarchy– Discovering new superclasses.

– Particularly useful when using defined classes.

• Subtle side-effects– Superclasses inferred due to domain/range restrictions.

• One shot connection to the reasoner. – Allows temporary inconsistency

Page 18: OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This

Connecting to the Reasoner• The Preferences Panel controls the location of the Reasoner

• Options are:– Local (FaCT) reasoner– HTTP (remote) reasoner

• In order to use RACER, we use the HTTP setting, and provide the URL of the RACER server

• Ensure the reasoner is running, then hit the <Connect> button.

• We can now use the reasoner

Page 19: OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This

Invoking the reasoner• To invoke reasoning, hit the <Classify Ontology> button

• This translates the ontology to the appropriate DL format and sends it to the reasoner.

• OilEd then makes requests to the reasoner that allow it to determine the concept hierarchy.

• Inconsistent/Unsatisfiable definitions are shown in red.

Page 20: OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This

The Query Panel• The Query panel is a

allows us to query the reasoner for information about individuals.

• Note that the query panel assumes that the ontology has been transmitted to the reasoner. Any updates or changes require an explicit reclassification