Frames and OWL protege 2007 rector

Uploaded from authorPOINT
Views:
 
     
 

Presentation Description

No description available.

Comments

Presentation Transcript

Frames and OWLA principled analysis: 

Frames and OWL A principled analysis Alan Rector School of Computer Science / Northwest Institute of Bio-Health Informatics rector@cs.man.ac.uk with special acknowledgment to the CO-ODE andamp; Protege Teams andamp; Natasha www.co-ode.org www.clinical-escience.org www.opengalen.org Copyright University of Manchester 2007 Released under Creative Commons Attribution Non-Commercial License v3.0

Protege-OWL: 

Protege-OWL Original goal A synthesis of frames and OWL Seemed plausible, but has so far produced two parallel approaches Not easy to move between frames and OWL Why? Is a synthesis possible? Analysis A modest proposal

Frames & OWL: Look roughly similar: 

Frames andamp; OWL: Look roughly similar

Slide4: 


...but, more different than they look: 

...but, more different than they look An ontology in Frames is... A set of 'templates A meta-model for the ontology Statements are functions on the information objects - the frames Disguised meta-statements Classes (and meta-classes) are first class entities Everything asserted An Ontology in OWL is... A set of definition and constraint ('restriction') axioms A model of the domain Statements about the domain entities - the things in the world Disguised first order axioms All members of this class ... Anything that satisfies these conditions... is a member if this class Classes cannot be referred to directly without going into OWL-full Require a reasoner to interpret their consequences Asserted and inferred models annotation provides a weak mechanism for meta-data

Consequences...: 

Consequences... Many differences follow Differences in structure Differences in what can be asked and answered Consider our simple ontology Frames Animal Mammal Lion African_lion African_animal African_lion Individuals Elsie the lioness

Permission vs Prohibition: 

Permission vs Prohibition Frames Everything is forbidden until it is permitted by an entry in a template OWL Everything is permitted until it is forbidden by a constraint (restriction) axiom (or the implications of several axioms)

Enumeration vs Composition: 

Enumeration vs Composition Frames All classes and individuals must be enumerated manually in advance Must make 'African animal', 'Indian animal', 'Sumatran animal', 'North American animal', etc. all explicitly Can lead to combinatorial explosions The 'exploding bicycle' Leads to maintenance issues Lion hierarchy and geographic region hierarchy must both be maintained in step Duplication of effort Errors - poor software engineering OWL Definitions allow new classes to be composed from old Create animal with whatever ranges are needed The animal hierarchy will change automatically with the geography hierarchy Supports notion of a 'normalised ontology' See http://www.cs.man.ac.uk/~rector/papers/rector-modularisation-kcap-2003-distrib.pdf

Meta-Model vs Annotations: 

Meta-Model vs Annotations Frames Metadata is first class data No difference in principle between classes and individuals Everything is an instance of some class Uniform mechanism for information about classes and members of classes dc:author can be just an ordinary slot OWL Metadata is annotation or ( 'puns') Annotation properties dc:author must be an annotation property but requires special care Not recognised by the reasoner Many seemingly arbitrary restrictions Puns a new OWL 1.1 construct No experience yet - Much controversy

Closed vs Open Worlds / Unique name assumption vs differentiating axioms: 

Closed vs Open Worlds / Unique name assumption vs differentiating axioms Frames Assume that all that is relevant is represented Failure to find something is taken as negation No explicit negation 'Negation as failure' If two entities have different names they are different All individual are distinct Classes are assumed disjoint unless they have a common subclass OWL Assume that anything consistent with the axioms may be true Failure to find something just means we don’t know Explicit negation 'Negation as impossibility' Any two individuals may be the same; Any two classes may overlap Unless there are explicit differentFrom() or disjoint() axioms

Explicit individuals vs Under-specification: 

Explicit individuals vs Under-specification Frames To say that 'Elsie has a cub' we must create an individual 'Lion cub' and make it Elsie’s child (multivalued-slot has_child (value instance_of_lion_1234567)) Only what is explicitly represented exists) 'Skolem Constants' OWL To say that 'Elsie has a cub' we say that 'There is something that is Elsie’s cub' Elsie has_child SOME Lion We don’t have to represent the cub explicitly Can also further describe it 'Elsie has a cub that has a cub' Elsie has_child SOME (Lion THAT has_child SOME Lion)

Local vs global inference: 

Local vs global inference Frames All inference is local To the class, its superclasses, subclasses, and instances effects easy to predict 'Meaning' of the ontology can be read off the class hierarchy without inference. OWL All axioms are global A class can be affected by axioms from the whole ontology Large animals with claws are dangerous. Lions are large and animals and have claws. Elsie is a Lion Therefore Elsie is a dangerous animal Meaning of the ontology can only be determined after using a 'reasoner' The meaning can (almost) be read off the inferred hierarchy Can export the inferred hierarchy

Acquisition vs Inference: 

Acquisition vs Inference Protege Optimised for knowledge acquisition Evolved from knowledge acquisition systems Everything you need to know to avoid errors is transparently visible For individuals, what is needed is usually in a form OWL Optimised for inference Evolved from logic representations and theorem provers What you need to know must be is opaqe and must be inferred Protege-frames-like forms are not currently available ( but we are working on it)

What questions can be asked?How can they be or answered?: 

What questions can be asked? How can they be or answered?

What are the kinds of Lion? What are lions a kind of?: 

What are the kinds of Lion? What are lions a kind of? Frames Look up and down the (asserted) hierarchy (there is no inferred hierarchy) OWL Look up and down the inferred hierarchy The asserted hierarchy is not enough African lions will be found to be African Animals

What can be said about Lions? a lion? “Sanctioning” : 

What can be said about Lions? a lion? 'Sanctioning' Frames 'Slot attachment' is a formal operation Can ask what can be said What can’t be said is implied by what isn’t in the template Look at the template - including ancestor classes’ templates Usually presented as a 'form' OWL 'Slot attachment' is not in the language Can ask what cannot be said but not what can be said Except as the difference Not built into reasoners 'Non-standard reasoning'

What’s true of all lions?: 

What’s true of all lions? Frames Value of a slot (multi-slot has_mother (allowed-classes Lion)) The slot has_mother must be filled by something from the class Lion OWL A restriction has_mother SOME Lion All lions have a lion and only a lion as a mother

What is false of all lions? A lion? : 

What is false of all lions? A lion? Frames No way to express negation explicitly Only ask what is not stated to be true Or sometimes use max cardinality 0 OWL What can be proved false of all lions NOT (has_diet SOME Herbivorous) All lions have non-herbivorous diets ... or it might might have been proved through nonlocal axioms Or prove it PROPERTY has_diet FUNCTIONAL Diet ←[Herbivorous Carnivorous] allDisjoint Lion → has_diet SOME Carnivorous

What’s false of all lions?Prior constraints vs post hoc restrictions: 

What’s false of all lions? Prior constraints vs post hoc restrictions Frames Constraints limit what can be entered Errors flagged at data entry (multi-slot has_mother (allowed-classes Lion)) The slot has_mother must be filled by something from the class Lion OWL Restrictions constraint what is consisten Anything can be entered but violations will be flagged as inconsistent when the reasoner is run Lion has_mother ONLY Lion

What is unknown about about all lions? a lion? What is missing?: 

What is unknown about about all lions? a lion? What is missing? Frames Missing: A mandatory slot without a value Will cause an error On an individual the form will be bordered in red Unknown: ??ill defined An optional slot without a value? No - most queries will return 'no' or equivalent closed world - what is represented is all there is OWL Unknown: More than one option is satisfiable Cannot be proved either true or false Missing: ??Usually ill defined? A 'SOME' restriction without a value? No, a value will be inferred to exist Only if a required value could not exist An organism has exactly 2 parents; one mother and one father. Smith has two female parents. Smith’s father is 'missing'

What kinds of animals live in Africa?: 

What kinds of animals live in Africa? Frames Look down the subclass hierarchy from African_animal And perhaps check by running a query defined outside the ontology OWL Run the reasoner - then look down the inferred subclass hierarchy from African_animal Any animal that has_range in Africa will be classified under African_animal Whether or not it is asserted explicitly.

What is not a lion?: 

What is not a lion? Frames Anything that is not an instance of Lion or a subclass of Lion If we haven’t said it, it isn’t true We can answer for every Individual: is this a lion? Class: is this a subclass of lion or not OWL Only things we can prove not to be lions Instances of classes that are disjoint from Lion We may not be able to prove Individual: if an individual is an instance of Lion or NOT Lion It must be one or the other, but we can’t always prove which It may be that either Lion or NOT Lion would be consistent Class: If a class is a subclass of Lion or NOT Lion It may be neither It could contain some Lions and some Non-lions Or it may be one or the other, but we can’t prove which

Is there such a thing as a lion with no geographic range? Is geograhic feature mandatory?: 

Is there such a thing as a lion with no geographic range? Is geograhic feature mandatory? Frames Meta-observation: Any lion frame with an empty geographic range slot is in error But no way to answer the question directly Min cardinality ≥ 1 means mandatory - it is about the template OWL Is it satisfiable? If we have the axiom Lion --andgt; has_range SOME Geo_entity Then LION andamp; NOT (has_range SOME Thing) Is inconsistent But the notion of 'missing data is meaningless' there is no such thing as a lion without a range Min cardinality ≥ 1 means it can be inferred to exist - it is about lions

What is typically true of lions?“Lions are typically tawny”: 

What is typically true of lions? 'Lions are typically tawny' Frames Traditionally - what frames were about - Defaults with over-riding 'Tweety the ostrich' In Protege-frames Can set a default value Can over-ride it for any one individual Cannot easily over-ride it for some subclass and its subclasses OWL All statements are universal Can only weaken the premise 'All birds except members of the ostrich and penguin families fly' Soon becomes difficult to maintain

How do I refer to lions in descriptions like “Books about lions”?: 

How do I refer to lions in descriptions like 'Books about lions'? Frames By using the class Lion as a value e.g. (...skos:subject (value Lion)) In OWL Can refer to 'books about some lion(s)' Cannot refer to 'books about Lion' in OWL-DL Nothing can be both a class and an individual in OWL-DL (Although the same name can be used for a class and an individual in OWL 1.1 - a 'pun') NB usually the librarian’s intended meaning of 'books about lions' is 'Books about lions OR books about some Lion(s)'

Who is the author of the class Lion?Editorial meta-statements about the ontology : 

Who is the author of the class Lion? Editorial meta-statements about the ontology Frames A statement about the frame for the class Lion An 'own slot' Not inherited because it is about the frame itself A statement like any other in the ontology Classes are just instances of the class Class OWL An annotation on the class for Lion Only loosely linked to the ontology and severely restructed Cannot be a normal statement in the ontology Puns may be a work around in OWL 1.1 but very weak

Meta-data and Annotations: 

Meta-data and Annotations Simple cases Good enough Language, provenance, versioning, ... Need richer model than OWL allows Not viable for higher order information

Are lions an endangered species?Higher order statements about the domain: 

Are lions an endangered species? Higher order statements about the domain Frames A statement about the frame for the class Lion No way to distinguish from editorial domain knowledge No way to tell if a statement about a class is about the representation or the thing represented A 'use-mention' error OWL No real equivalent - nasty hack: All lions have the property of being members of an endagered species Higher order reasoning requires OWL-Full But still does not distinguish between editorial metadata and higher order information

Summary : 

Summary Natural in frames - rich meta modelling andamp; knowledge acquisition What is it sensible to say - 'sanctioning' explicit slot attachment Metaclasses, reference to subjects, etc. What’s missing, incomplete Natural in OWL - rich first order inference Composition and definition Global inference Existential quantification andamp; underspecification Natural in both Subclass/superclasses, Inheritance (without exceptions) Natural in Neither Typical information / 'Defaults with exceptions' Distinguishing statements about the ontology from higher order statements about the domain

Effect on the experience: 

Effect on the experience Frames Immediate feedback Everything you need to know is transparently visible Analogous to scripting / interpreted environments OWL Delayed feedback What you need to know can only be determined by classification Analogous to a compiled language / batch environment

A possible synthesis: 

A possible synthesis Requirements Composition and rich first order inference from OWL Metamodelling and transparency from frames Clear simple query for 'what can I say about ...' Separation of editorial metadata and higher order information Method Multiple layered models Domain Ontology Meta-ontology - representation of the ontology artefact Higher order domain ontology - the categories represented by the ontology

PossibleSynthesis : 

Possible Synthesis Annotation: rep:Lion ➔ author VALUE rector subj:Lion has_CITES_status SOME Endangered subj:Endangered_species ⇔ subj:Species AND has_CITES_status SOME Endangered ext:myBook skos:subject VALUE subj:Lion

A possible synthesis: 

A possible synthesis Approach to synthesis Composition and first order modelling in OWL Overload OWL MIN Cardinality / Some with a meta modelling meaning equivalent to slot attachment Including Min Cardinality 0 Generate a two meta model of individuals One of representation - rep:C Answer the question 'what can be said' based on the meta model Support rich annotation One of second order entities - subj:C Allow inheritance with defaults via this meta-model until a better solution is available Support higher order statements Always present users with the inferred classification Very fast classification for small ontologies Incremental classification for large ontologies The logicians are promising it to us 'Real Soon Now'

Summary: 

Summary Frames are Templates OWL is a set of axioms Frames provide rich meta representation OWL provides rich first order representation plus composition, inference, and normalisation Frames are closed world andamp; Uniquely Named OWL is open world and must have differentiating axioms Metadata is about representations Higher order information is about the domain and probably the right thing to use for 'subjects' (SKOS) A synthesis ought to be possible Now: messy but relatively quick with current technology Future: significant problems to be solved for fully logically sound solution