properties and individuals in owl: reasoning about family history

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

Upload: robertstevens65

Post on 21-May-2015

244 views

Category:

Science


1 download

DESCRIPTION

Slides used in an advanced OWL tutorial in 2012. The tutorial is based on family history and uses OWL individuals as a first class citizen in the learning.

TRANSCRIPT

Page 1: Properties and Individuals in OWL: Reasoning About Family History

Properties and Individuals in OWL: Reasoning About Family History

Robert Stevens and Simon JuppBioHealth Informatics Group

University of [email protected]

Page 2: Properties and Individuals in OWL: Reasoning About Family History

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

Page 3: Properties and Individuals in OWL: Reasoning About Family History

Learning Objectives

• The separation in to TBox and ABox• The separation of classes and individuals and

how to make the decision • 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

Page 4: Properties and Individuals in OWL: Reasoning About Family History

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

Page 5: Properties and Individuals in OWL: Reasoning About Family History

Families are People

Person Sex

Male

Female

Page 6: Properties and Individuals in OWL: Reasoning About Family History

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

Page 7: Properties and Individuals in OWL: Reasoning About Family History

A Simple View on Sex

• This is a simple view on sex that will suffice

Person Sex

MaleFemaleMan Woman

hasSex

isA isA

Page 8: Properties and Individuals in OWL: Reasoning About Family History

Definitions of Man and Woman

Class: Man

EquivalentTo: Person

that hasSex some Male

• hasSex is Functional

Page 9: Properties and Individuals in OWL: Reasoning About Family History

Instances of Man and Woman

Individual: robert_david_stevens_1965Types:Man

Individual: david_stevens_1934Types:Person that hasSex some Male

• Class assertion on an individual• Indicates to which class an individual belongs

Page 10: Properties and Individuals in OWL: Reasoning About Family History

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

Page 11: Properties and Individuals in OWL: Reasoning About Family History

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 some richard

Individual Property Qualifier Successor

Page 12: Properties and Individuals in OWL: Reasoning About Family History

Demo 1

• Open Family-tree-0.owl• Individuals: plain-individuals.owl

Page 13: Properties and Individuals in OWL: Reasoning About Family History

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_stevens_1965 is a Person we know he has two parents, one mother and one father

Page 14: Properties and Individuals in OWL: Reasoning About Family History

Functional Characteristic

ObjectProperty: hasMotherDomain: PersonRange: WomanCharacteristics: FunctionalInverses: 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

Page 15: Properties and Individuals in OWL: Reasoning About Family History

Description of Person

Class: Person

SubClassOf: DomainEntity

that hasMother some Woman

and hasFather some Man

Page 16: Properties and Individuals in OWL: Reasoning About Family History

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)

Page 17: Properties and Individuals in OWL: Reasoning About Family History

Inverse Functional Characteristic

• motherOf is not functional as one Woman can hold this property more than once

• The inverse hasMother is function• The inverse of motherOf is functional: It is

inverse functionalmotherOf (invFunc)

margaret

richard

robert

motherOf (invFunc)

hasMother (func)

Page 18: Properties and Individuals in OWL: Reasoning About Family History

Demo 2

• Family-tree-1.owl

Page 19: Properties and Individuals in OWL: Reasoning About Family History

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

brotherOfRobert_david_stevens_1965 Richard_stevens_1941

brotherOf

Page 20: Properties and Individuals in OWL: Reasoning About Family History

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_stevens_1965 Richard_stevens_1941

siblingOf

Page 21: Properties and Individuals in OWL: Reasoning About Family History

Asymmetric Characteristic

• If x holds a property r with y• Then y cannot hold that property with x

hasFather

Robert_david_stevens_1965 David_stevens_1941

HasFather

Page 22: Properties and Individuals in OWL: Reasoning About Family History

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_stevens_1965 David_stevens_1941

hasAncestor

William_george_stevens

hasAncestor

hasAncestor

Page 23: Properties and Individuals in OWL: Reasoning About Family History

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

Page 24: Properties and Individuals in OWL: Reasoning About Family History

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 holds parentOf

• And so on until the root property

Page 25: Properties and Individuals in OWL: Reasoning About Family History

Inferences about Properties

• Run reasoner and see what we know about motherOf and hasMother

• Show domains and ranges inferred• See property hierarchy filled in

Page 26: Properties and Individuals in OWL: Reasoning About Family History

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 yearEven if we don’t know their valuesThe restrictions say what must be true of an individual

of that typeBy asserting the individual’s type to be Man, we know

these thing to be trueThese facts are implied or entailedThere are many things that could be true of this

individual, but these things must be true

Page 27: Properties and Individuals in OWL: Reasoning About Family History

Demo 3

• Family-tree-2.owl

Page 28: Properties and Individuals in OWL: Reasoning About Family History

Some datatype properties

hasBirthYear

hasDeathYear• Domain of Person• Range of integer• Characteristic functional

Page 29: Properties and Individuals in OWL: Reasoning About Family History

Demo 4

• Infer which family members were Victorians• Born between 1837-1901

Page 30: Properties and Individuals in OWL: Reasoning About Family History

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_stevens_1965 David_stevens_1941

hasAncestor

William_george_stevens

hasAncestor

hasAncestor

Page 31: Properties and Individuals in OWL: Reasoning About Family History

Demo 5

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

Page 32: Properties and Individuals in OWL: Reasoning About Family History

David is Father of Robert

Individual: david_stevens_1934

Facts:

hasFather william_george_stevens_1901

hasMother iris_ellen_bowmaker_1907,

fatherOf robert_david_stevens_1965,

fatherOf richard_john_stevens_1962

• What type does david_stevens_1934 have?• How many children does he have?• Where in the hierarchy would be put

hasForeFather?

Page 33: Properties and Individuals in OWL: Reasoning About Family History

Demo 6

• Family-tree-4.owl• Assert robert parents

Page 34: Properties and Individuals in OWL: Reasoning About Family History

What is a Grandparent?

• We have parentage asserted• Can we infer grandparents?• A grandparent is a parent of my parent.• Don’t want transitivityon hasParent…• Otherwise my grandfather becomes my father

etc…• Want local transitivity

Page 35: Properties and Individuals in OWL: Reasoning About Family History

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_stevens_1965 David_stevens_1941

hasParent

William_george_stevens

hasParent

hasGrandParent

Page 36: Properties and Individuals in OWL: Reasoning About Family History

Grandfathers

ObjectProperty: hasGrandfather

Domain: Person

Range: Man

SubPropertyChain: hasParent o hasFather

• hasParent followed by hasFather implies hasGrandfather

Robert_david_stevens_1965 David_stevens_1941

hasParent

William_george_stevens

hasFather

hasGrandFather

Page 37: Properties and Individuals in OWL: Reasoning About Family History

Demo 7

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

Page 38: Properties and Individuals in OWL: Reasoning About Family History

Great Grandparents etc.

ObjectProperty: hasGreatGrandParent

SubPropertyChain: hasGrandParent o hasParent

• My grandparents parents are my great grandparents

Robert_david_stevens_1965 William_geogre_stevens_1941

hasGrandParent

Henry_edmond_stevens

hasParent

hasGreatGrandParent

Page 39: Properties and Individuals in OWL: Reasoning About Family History

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?

Page 40: Properties and Individuals in OWL: Reasoning About Family History

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?

Page 41: Properties and Individuals in OWL: Reasoning About Family History

Demo 8

• Great grand parents

Page 42: Properties and Individuals in OWL: Reasoning About Family History

Using Individuals in Class Expressions

• The class of all Ancestor is easyHow about AncestorOfRobertStevens?

Class: AncestorOfRobertEquivalentTo: Personthat ancestorOf value robert_david_stevens_1965

• robert_david_stevens_1965 is a nominal• Instead of simply saying an individual from this class, we

specify the individual{robert_david_stevens} is the class containing Robert David Stevens

• {robert, richard} is the class with richard and robert in it

Page 43: Properties and Individuals in OWL: Reasoning About Family History

Demo 9

• Family-tree-6.owl

Page 44: Properties and Individuals in OWL: Reasoning About Family History

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

Page 45: Properties and Individuals in OWL: Reasoning About Family History

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_stevens_1965?• Just because we haven’t said he has children,

doesn’t mean he doesn’t have any?

Page 46: Properties and Individuals in OWL: Reasoning About Family History

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

Page 47: Properties and Individuals in OWL: Reasoning About Family History

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

Page 48: Properties and Individuals in OWL: Reasoning About Family History

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

Page 49: Properties and Individuals in OWL: Reasoning About Family History

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

Page 50: Properties and Individuals in OWL: Reasoning About Family History

Brothers and Siblings

• All inferred to be siblings of each other

david

peter

john

brotherOf

brotherOf

siblingOf

hasBrother

hasBrother

Page 51: Properties and Individuals in OWL: Reasoning About Family History

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

Page 52: Properties and Individuals in OWL: Reasoning About Family History

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

Page 53: Properties and Individuals in OWL: Reasoning About Family History

Demo 11

• Family-tree-7.owl• Uncles and aunts

Page 54: Properties and Individuals in OWL: Reasoning About Family History

A Lesson on Cousins

• First cousins share a grandparent, but not a parentSecond 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

Page 55: Properties and Individuals in OWL: Reasoning About Family History

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…)

Page 56: Properties and Individuals in OWL: Reasoning About Family History

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

Page 57: Properties and Individuals in OWL: Reasoning About Family History

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

Page 58: Properties and Individuals in OWL: Reasoning About Family History

Demo 13

• Define cousin and view entailments

Page 59: Properties and Individuals in OWL: Reasoning About Family History

Simple and Complex Properties

• Properties can be either simple or complex• Some of our properties are complex• ancestorOf, uncleOf, parentOf…• Can’t do some thing with complex properties

Page 60: Properties and Individuals in OWL: Reasoning About Family History

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

Robert David

hasAncestor

William

hasAncestor

hasAncestor

Path

Page 61: Properties and Individuals in OWL: Reasoning About Family History

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

Page 62: Properties and Individuals in OWL: Reasoning About Family History

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

Page 63: Properties and Individuals in OWL: Reasoning About Family History

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

Page 64: Properties and Individuals in OWL: Reasoning About Family History

Demo 14

• Family-tree-8.owl

Page 65: Properties and Individuals in OWL: Reasoning About Family History

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

Page 66: Properties and Individuals in OWL: Reasoning About Family History

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

Page 67: Properties and Individuals in OWL: Reasoning About Family History

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 good for this domain• Good for teaching about inviduals and

properties• More irregular and implete things can be hung

off family history• Roles, processes…

Page 68: Properties and Individuals in OWL: Reasoning About Family History

Acknowledgements

• Margaret Stevens• Uli Sattler• Dmitry Tsarkov• Matthew Horridge

• Facilitated by the Ontogenesis network.

Page 69: Properties and Individuals in OWL: Reasoning About Family History

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• Proper part of is not reflexive

hasRelationRobert_david_stevens_1965 Margaret_stevens_1941

hasRelation