Properties and Individuals in OWL: Reasoning About Family History Robert Stevens and Simon Jupp BioHealth Informatics Group University of Manchester

Slides:



Advertisements
Similar presentations
Knowledge Representation using First-Order Logic
Advertisements

SOTIRIS BATSAKIS EURIPIDES G.M. PETRAKIS TECHNICAL UNIVERSITY OF CRETE INTELLIGENT SYSTEMS LABORATORY Imposing Restrictions Over Temporal Properties in.
Ontologies and Databases Ian Horrocks Information Systems Group Oxford University Computing Laboratory.
An Introduction to Description Logics
Situation Calculus for Action Descriptions We talked about STRIPS representations for actions. Another common representation is called the Situation Calculus.
An Introduction to RDF(S) and a Quick Tour of OWL
So What Does it All Mean? Geospatial Semantics and Ontologies Dr Kristin Stock.
Based on “A Practical Introduction to Ontologies & OWL” © 2005, The University of Manchester A Practical Introduction to Ontologies & OWL Session 3: Additional.
USCISIUSCISI Tuning for Performance Outline of talk: Classifier Performance Recognizer Performance Performance Tips CLOS Instances and the Backchainer.
Ontology development in Protégé. Lecture 2 Introduction to Protégé 2 Pablo Romero, Department of Informatics Overview Components of an ontology The ontology.
1 Section 14 - Subtypes/Supertypes u Subtyping –allows our diagram to show several different options at the same time –is useful for concisely representing.
Protégé Classes, Properties and Instances Susana R. de Novoa UNIK4710.
CSE 428 Semantic Web Topics OWL Jeff Heflin Lehigh University.
Chapter 8: Web Ontology Language (OWL) Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley, 2005.
The Semantic Web Week 14 Module Website: Lecture (SHORT): OWL PIZZAS Practical (LONGER): Getting to know Protégé-2000.
USCISIUSCISI Loom: Basic Concepts Thomas A. Russ USC Information Sciences Institute.
From SHIQ and RDF to OWL: The Making of a Web Ontology Language
ANHAI DOAN ALON HALEVY ZACHARY IVES Chapter 12: Ontologies and Knowledge Representation PRINCIPLES OF DATA INTEGRATION.
DAML+OIL Ontology Tutorial Chris Wroe, Robert Stevens (Sean Bechhofer, Carole Goble, Alan Rector, Ian Horrocks….) University of Manchester.
An Introduction to Description Logics. What Are Description Logics? A family of logic based Knowledge Representation formalisms –Descendants of semantic.
1 MASWS Multi-Agent Semantic Web Systems: OWL Stephen Potter, CISA, School of Informatics, University of Edinburgh, Edinburgh, UK.
Protege OWL Plugin Short Tutorial. OWL Usage The world wide web is a natural application area of ontologies, because ontologies could be used to describe.
8/11/2011 Web Ontology Language (OWL) Máster Universitario en Inteligencia Artificial Mikel Egaña Aranguren 3205 Facultad de Informática Universidad Politécnica.
OWL and SDD Dave Thau University of Kansas
OWL 2 Web Ontology Language. Topics Introduction to OWL Usage of OWL Problems with OWL 1 Solutions from OWL 2.
Python November 28, Unit 9+. Local and Global Variables There are two main types of variables in Python: local and global –The explanation of local and.
Building an Ontology of Semantic Web Techniques Utilizing RDF Schema and OWL 2.0 in Protégé 4.0 Presented by: Naveed Javed Nimat Umar Syed.
OWL 2 in use. OWL 2 OWL 2 is a knowledge representation language, designed to formulate, exchange and reason with knowledge about a domain of interest.
Collecting Things Together - Lists 1. We’ve seen that Python can store things in memory and retrieve, using names. Sometime we want to store a bunch of.
The Family.
The Family Chapter 12.
LDK R Logics for Data and Knowledge Representation ClassL (part 3): Reasoning with an ABox 1.
Expressing Knowledge CSC 244/444: Logical Foundations of Artificial Intelligence Henry Kautz.
BioHealth Informatics Group A Practical Introduction to Ontologies & OWL Session 2: Defined Classes and Additional Modelling Constructs in OWL Nick Drummond.
An Introduction to Description Logics (chapter 2 of DLHB)
Ontology Building in Action Hasan TÜRKSOY Compiled, partly based on various online tutorials and presentations, with respect to their authors.
Family Systems. Family A group of people who are related by marriage, blood, or adoption, and who often live together and share economic resources.
12.1.  Most universal institution is the family  Make up of the family varies from culture to culture  All families follow similar organizational patterns.
Based on “A Practical Introduction to Ontologies & OWL” © 2005, The University of Manchester A Practical Introduction to Ontologies & OWL Session 2: Defined.
© O. Corcho, MC Suárez de Figueroa Baonza 1 OWL and SWRL Protégé 4: Building an OWL Ontology Mari Carmen Suárez-Figueroa, Oscar Corcho {mcsuarez,
OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This.
© University of Manchester Simplifying OWL Learning lessons from Anaesthesia Nick Drummond BioHealth Informatics Group.
Logics for Data and Knowledge Representation Web Ontology Language (OWL) -- Exercises Feroz Farazi.
ONTOLOGY ENGINEERING Lab #3 – September 15,
CC L A W EB DE D ATOS P RIMAVERA 2015 Lecture 4: Web Ontology Language (I) Aidan Hogan
My Family Tree.
ece 627 intelligent web: ontology and beyond
MB: 26 Feb 2001CS Lecture 11 Introduction Reading: Read Chapter 1 of Bratko Programming in Logic: Prolog.
Human Genetic Pedigrees. What is a Genetic Pedigree? l A genetic pedigree is an easy way to track your family traits. It looks like a family tree, but.
ONTOLOGY ENGINEERING Lab #4 - September 22, 2014.
Ontology Engineering Lab #4 - September 23, 2013.
Web Ontology Language (OWL). OWL The W3C Web Ontology Language (OWL) is a Semantic Web language designed to represent rich and complex knowledge about.
BioHealth Informatics Group Copyright © 2005, The University of Manchester1 A Practical Introduction to Ontologies & OWL Additional Exercises: Common Errors.
Of 29 lecture 15: description logic - introduction.
#8 l The parents of 3 boys are having another baby. What is the probability this baby will be a girl? 50% XX = GIRL 50% XY = BOY X X XY XX XY.
Ontology Technology applied to Catalogues Paul Kopp.
Ccs.  Ontologies are used to capture knowledge about some domain of interest. ◦ An ontology describes the concepts in the domain and also the relationships.
OWL (Ontology Web Language and Applications) Maw-Sheng Horng Department of Mathematics and Information Education National Taipei University of Education.
grandparents grandmother mother grandmother
Blood Relationship.
ece 720 intelligent web: ontology and beyond
Aidan Hogan CC La Web de Datos Primavera 2017 Lecture 4: Web Ontology Language (OWL) [I] Aidan Hogan
Logics for Data and Knowledge Representation
Ontologies and Databases
Description Logics.
Complete the following sentences with the name of the relative.
Knowledge Representation Part VII Protégé / RDFS / OWL / ++
The kinship domain example from cs. manchester. ac
CIS Monthly Seminar – Software Engineering and Knowledge Management IS Enterprise Modeling Ontologies Presenter : Dr. S. Vasanthapriyan Senior Lecturer.
Presentation transcript:

Properties and Individuals in OWL: Reasoning About Family History Robert Stevens and Simon Jupp BioHealth Informatics Group University of Manchester

Resources Protégé 4 build 113 Ontologies:

Introduction Pizza tutorial teaches the basics of OWL Using automated reasoning to build a sophisticated T Box. Not much use of property hierarchies, domain and range constraints, property characteristics etc. Especially not much use of individuals This tutorial does all this along with some OWL2 features An illustrated tutorial that you can follow

Learning Objectives The separation in to TBox and ABox The separation of classes and individuals Asserting facts about individuals The effects of property hierarchies, property characteristics, domain/range constraints and role chains on inferences about individuals The consequences of the open world assumption The use of nominals Some limits of OWL2

Why Family History? Family history rich with relationships Easy to have both a class and instance level Everyone has a family, even if it is unknown Assumption of a conventional western family structure

Families are People PersonSex Male Female

What is a Person? A Person must have two parents A person necessarily has one mother and one father A person necessarily has one birth year A person necessarily has ancestors A person can have other relations All these relationships are deterministic

A Simple View on Sex This is a simple view on sex that will suffice PersonSex Male Female Man Woman hasSex isA

Definitions of Man and Woman Class: Man EquivalentTo: Person that hasSex some Male hasSex is Functional

Instances of Man and Woman Individual: robert_David_bright_1965 Types: Man Individual: David_bright_1934 Types: Person that hasSex some Male Class assertion on an individual Indicates to which class an individual belongs

TBox and ABox TBox – terminology box ABox – assertion box Historic terms TBox – classes (“schema”) ABox – individuals (“data”) Can have many, changing, ABoxes with one TBox

A Bit more Terminology Individual, instance, object Property, role Successor or filler of a property Qualifiers: SOME, ONLY, Cardinality Class assertion and individual assertion robert hasBrother value richard Individual PropertyQualifierSuccessor

Demo 1 Open Family-tree-0.owl Individuals: plain-individuals.owl

Asserting Parentage What do we know about each and every Person? Each and every Person has exactly two Parents Again, we take a simple, biological view, of parentage for the moment Simply by asserting that robert_David_bright_1965 is a Person we know he has two parents, one mother and one father

Functional Characteristic ObjectProperty: hasMother Domain: Person Range: Woman Characteristics: Functional Inverses: motherOf What do we know about the inverse? motherOf has domain Woman A Woman can be motherOf more than one Person So inverse is not necessarily functional The super-property, hasParent, is also not functional A Person has more than one parent Always think about individuals

Description of Person Class: Person SubClassOf: DomainEntity that hasMother some Woman and hasFather some Man

Domain and Range Any individual holding the motherOf property can be inferred to be of type Woman The domain constraint is a strong statement The range constraint means only individuals of that type can be successors to the property; act as fillers Both can drive inference Domain and range can be inferred for the inverse (and are swapped)

Inverse Functional Characteristic motherOf is not functional as one Woman can hold this property more than once The inverse hasMother is functional The inverse of motherOf is functional: It is inverse functional motherOf (invFunc) margaret richard robert motherOf (invFunc) hasMother (func)

Demo 2 Family-tree-1.owl

Reflexive Characteristic The reflexive property means an individual holding this property always holds it with itself One is always one of one’s own relations By implication the inverse of hasRelation is also reflexive Reflexive is very dangerous An implication is that all individuals have a self loop via hasRelation hasRelation Robert_David_bright_1965Margaret_bright_1941 hasRelation

Irreflexive Characteristic An individual holding this property never holds it with itself One is never ones own father, but can be the father of others By implication the inverse is also irreflexive brotherOf Robert_David_bright_1965Richard_bright_1941 brotherOf

Symmetric Characteristic The inverse of the property is the same If x is the sibling of y, then y is the sibling of x The property is its own inverse siblingOf Robert_David_bright_1965Richard_bright_1962 siblingOf

Asymmetric Characteristic If x holds a property r with y Then y cannot hold that property with x hasFather robert_David_bright_1965David_bright_1934 HasFather

Transitive Characteristic If x holds property r with y and y holds property r with z then x holds property r with z The relationship is propagated along the chain The inverse is also implied Robert_David_bright_1965David_bright_1941 hasAncestor William_george_bright hasAncestor

Disjoint Properties Just as we can say the individuals of two classes are disjoint, we can also say two properties are disjoint An individual holding one property cannot hold the other property An individual holding motherOf cannot hold fatherOf Domians of Woman and Man are disjoint, so disjoint propertyh redundant

Should I Say it Just Because it is True Not necessarily Ask what implications it drives Also ask if the characteristic is always the case Sometimes it scuppers the reasoners

Property Hierarchies We can say that one property is the sub-property of another property motherOf SubPropertyOf parentOf A property can be the sub-property of more than one property Can drive many inferences An individual holding motherOf also implies parentOf Don’t think about inheritance; think about implications and think of individuals

Inferences about Properties Run reasoner and see what we know about motherOf and hasMother Show domains and ranges inferred See property hierarchy filled in

What do we Know of an Instance of Man? By giving an individual the type Man we know: –He hasSex Male –He has only one mother, who is a Woman –Has only one father, who is a Man –He has a birth year Even if we don’t know their values The restrictions say what must be true of an individual of that type By asserting the individual’s type to be Man, we know these things to be true These facts are implied or entailed There are many things that could be true of this individual, but these things must be true

Demo 3 Family-tree-2.owl

Some datatype properties hasBirthYear hasDeathYear Domain of Person Range of integer Characteristic functional

Demo 4 Infer which family members were Victorians Born between

Inferring One’s Ancestors My parents parents are my ancestors etc.. Create a new super-property of hasParent, make it transitive Now, hasAncestor is implied by hasParent; it is entailed hasAncestor forms a path Robert_David_bright_1965David_bright_1934 hasAncestor William_george_bright hasAncestor

Demo 5 Family-tree-3.owl Add hasAncestor, look at property hierarchy What do we know about Robert?

David is Father of Robert Individual: David_bright_1934 Facts: hasFather william_george_bright_1901 hasMother iris_ellen_archer_1907, fatherOf robert_David_bright_1965, fatherOf Richard_john_bright_1962 What type does David_bright_1934 have? How many children does he have? Where in the hierarchy would be put hasForeFather?

Demo 6 Family-tree-4.owl Assert robert’s parents

What is a Grandparent? We have parentage asserted Can we infer grandparents? A grandparent is a parent of my parent. Don’t want transitivity on hasParent… Otherwise my grandfather becomes my father etc… Want local transitivity

SubProperty Chains ObjectPropety: hasGrandparent Domain: Person Range: Person SubPropertyChain: hasParent o hasParent The chain hasParent followed by hasParent implies hasGrandparent This forms a path As usual, think of the individuals Robert_David_bright_1965David_bright_1934 hasParent William_george_bright hasParent hasGrandParent

Grandfathers ObjectProperty: hasGrandfather Domain: Person Range: Man SubPropertyChain: hasParent o hasFather hasParent followed by hasFather implies hasGrandfather Robert_David_bright_1965David_bright_1934 hasParent William_george_bright hasFather hasGrandFather

Demo 7 Family-tree-5.owl Create grandparent property chains What do we learn about Robert?

Great Grandparents etc. ObjectProperty: hasGreatGrandParent SubPropertyChain: hasGrandParent o hasParent My grandparents parents are my great grandparents Robert_David_bright_1965William_george_bright_1901 hasGrandParent Henry_edmond_bright hasParent hasGreatGrandParent

Superproperties of grandparent Properties Are hasGrandparent and hasGreatGrandparent etc. subproperties of hasParent? Think about the implications at the level of individuals Robert hasGrandParent william George Robert hasGrandParent Iris Ellen Does the fact that robert hasGrandfather William George imply he hasGrandparent William George? Does this imply Robert hasParent William George? All great grandparents are also grandparents Is greatGrandParentOf a sub-property of grandParentOf?

Hierarchies of Parentage Relationships Where do these parentage relationships go? All grandparents and great-grandparents are also parents All grandfathers are fathers All great grandparents are grandparents Should these parentage relationships like hasGrandparent be in a hierarchy underneath hasParent?

Demo 8 Great grand parents

Using Individuals in Class Expressions The class of all Ancestor is easy How about AncestorOfRobertStevens? Class: AncestorOfRobert EquivalentTo: Person that ancestorOf value robert_David_bright_1965 robert_David_bright_1965 is a nominal Instead of simply saying an individual from this class, we specify the individual {robert_David_bright} is the class containing Robert David Stevens {robert, richard} is the class with richard and robert in it

Demo 9 Family-tree-6.owl

OWL uses an open world assumption Just because something hasn’t been said doesn’t mean it isn’t true hasMother is functional, so we know that property can only be held once Do we know robert’s only brother is Richard? We’ve said robert has a brother richard We simply don’t know unless we limit the number of brothers brotherOf only {richard} as a class assertion

The Open World and Individuals Ask for Woman that is motherOf min 3 Person What do we expect to happen? What does the KB tell us about the children of robert_David_bright_1965? Just because we haven’t said he has children, doesn’t mean he doesn’t have any?

What about my Uncle John? My Uncle John has four children Asking: Man that fatherOf min 4 Person doesn’t find my uncle Why not? We haven’t told the KB that the four individuals asserted are actually different In a Web environment, the same individual may be described at many locations with more than one URI owl:differentFrom and owl:sameAs Make all individuals different

Can infer that Individuals are Different If we have three individuals with different birth years And hasBirthYear is functional Then we can infer those individuals are different without stating it directly

Brothers Only done parentage so far David is brother of John John is brother of Peter Is brotherOf transitive? Domain of brotherOf is Man What is the range? William George is brotherOf Charlotte So range must be person William George brotherOf Charlotte Charlote hasBrother William George

Siblings brotherOf and sisterOf both sub-properties of siblingOf siblingOf is symmetric and transitive Unlike brother and sister, the inverse holds William George is sibling of Charlotte Charlotte is sibling of William George

Brothers and Siblings All inferred to be siblings of each other david peter john brotherOf siblingOf hasBrother

Demo 10 Familt-tree-6.owl Individuals-sibling.owl Siblings We can only infer that Peter and John are siblings brotherOf has domain Man and range Person Even if we know Peter is a Man (he is fatherOf james) Man & siblingOf doesn’t imply brotherOf

Aunts and Uncles ObjectProperty: uncleOf SubPropertyChain: brotherOf o fatherOf My parents siblings are my aunts and uncles Cannot count with hasUncle David brotherOf Robert fatherOf uncleOf John

Demo 11 Family-tree-7.owl Uncles and aunts

A Lesson on Cousins First cousins share a grandparent, but not a parent Second cousins share a great grandparent, but not a grandparent Third cousins share a great great grandparent, but not a great grandparent Degree gives closest common ancestor Remove gives generation My first cousins children are my first cousin once removed Our common ancestor are my grandparents, but there is an added generation

Characteristics of Cousin Symmetric: robert firstCousinOf James James firstCousinOf Robert Not transitive James’s cousins are not my cousins (at least, not all of them…)

Sub-Property Chain for firstCousinOf ObjectProperty: firstCousinOf SubPropertyChain: hasParent o siblingOf o parentOf My parents sibs are my aunts and uncles Their children are my first cousins Our common ancestor are my grandparents David hasParent Peter siblingOf firstCousinOf Robert James parentOf

Demo 13 Define cousin and view entailments

Who are Robert’s First Cousins? Mart, Ian, Janet, william, Robert, richard, James, Clare, Julie, Mark, Nicholas Robert and Richard! I’m my own cousin and so is my brother My father is his own brother! siblingOf is symmetric and transitive David siblingOf John John siblingOf David There is path from David to David via John So David is David’s brother Making siblingOf irreflexive is a contradiction! Inferences about cousins doesn’t work

Simple and Complex Properties Properties can be either simple or complex Some of our properties are complex ancestorOf, uncleOf, parentOf… Can’t do some things with complex properties

Complex roles A property is complex when it forms a path Transitivity or sub-property chains form a path David brotherOf Robert fatherOf uncleOf John RobertDavid hasAncestor William hasAncestor Path

Complex roles and Counting Counting i.e. cardinality; max 3, min 2, etc One cannot count with complex properties ancestorOf min 3 people doesn’t work hasAncestor is complex; it forms a path parentOf min 3 Person does work as parentOf is simple

What one can do with SubProperty chains The pattern: sub-property chain o property works  chain hasGrandParent o hasParent  hasGreatGrandparent will work hasParent o hasGrandParent  hasGreatGrandpaernt will not

Marriage ObjectProperty: hasWife SubPropertyChain: malePartnerIn o hasFemalePartner Want only one wife at a time Needs some more sophisticated modelling of time – functionality will not do Marriage_m_and_d David Margaret hasMalePartnerIn hasFemalePartnerIn hasWife malePartnerIn femalePartnerIn

Demo 14 Family-tree-8.owl

Extending aunt and uncle Now we have spouses we can do aunts and uncles by marriage UncleOf implied by husbandOf o sisterOf o parentOf We can have more than one sub-property chain per property

Demo 15 Add an extra sub-property chain to auntOf and uncleOf

Extending the Tbox Lots of entailments on individuals driven by the properties Can now make a whole lot of defined classes Ancestor Mother Father Parent Foremother Forefather MaleAncestor FemaleAncestor Wife Husband Spouse Etc. etc.

Classes of Grandparents etc. Class: Grandparent EquivalentTo: Person That grandparentOf some Person Class: Grandfather EquivlaentTo: Man That grandfatherOf some Person Class: Parent EquivalentTo: Person That parentOf some Person

Unexpected Class Hierarchy All individuals that are grandfathers are also grandparents Works fine All those individuals that are grandparents are also parents Doesn’t work in the TBox Remember that grandfatherOf doesn’t imply parentOf remember to think of the individuals robert hasFather David hasFather william George Robert hasGrandfather William George The implications aren’t there!

The Grandparent Class

Demo 16 Show defined grand-classes based on properties grandfatherOf don’t work re-do grand-classes and show expected TBox

Saving the Reasoned Knowledge Base It can take some time to reason over the knowledge base Need to load and reason before querying Can save the inferred hierarchy, load and query Add a new assertion will mean a new classification

Demo Load previously reasoned and saved ontology Ask a load of questions

What Works Most things except cousins Full and half sibs don’t work Need some rules Also, using properties such as grandparentOf and greatGrantParentOf in class expressions doesn’t always give the desired TBox OWL2 features very powerful, but there are limitations

Should we Use OWL for this? Relational databases and/or Prolog do family history much better than OWL Very regular and complete knowledge In some ways OWL not appropriate for this domain Good for teaching about individuals and properties More irregular and imcomplete things can be hung off family history Roles, processes…

Acknowledgements Margaret Stevens Uli Sattler Dmitry Tsarkov Matthew Horridge Facilitated by the Ontogenesis network.