composition, parts and wholes - university of...

48
1 Composition, Parts and Wholes COMP60421 Sean Bechhofer University of Manchester [email protected]

Upload: others

Post on 16-Feb-2021

7 views

Category:

Documents


0 download

TRANSCRIPT

  • 1

    Composition, Parts and Wholes

    COMP60421Sean Bechhofer

    University of [email protected]

  • Composition or Aggregation

    • Forming an object whole using other objects as parts• Treating complex things as a single object

    • What are the primary composition relationships?• What inferences can we make?• What might we have in our representation

    languages to support this?

    2

    http://www.flickr.com/photos/hartini/2429653007/

  • 3

    Parts & wholes: Some examples

    • Bristles are part of a toothbrush• Wheels are part of a shopping trolley• A car is partly iron• A cappuccino is partly milk• A meter is part of a kilometer• Manchester is part of England• A tree is part of a forest• A slice of pie is part of the pie• A book chapter is part of a book• Stan Laurel is part of Laurel and Hardy

    • These are different kinds of composition, with different characteristics and properties.

    • Confusing them may result in incorrect (or undesirable) inferences.

    http://www.flickr.com/photos/aramisfirefly/4585596077

  • Properties of Composition

    • Winston et. al. describe properties of composition

    • Configuration/Functionality– Do the parts bear a functional or structural relationship to one another

    or the object they constitute?– functional/non-functional

    • Homeomerous– Are the parts the same kind of thing as the whole?– homeomerous/non-homeomerous

    • Invariance– Can the parts be separated from the whole?– separable/inseparable

    • We can then discuss combinations of these properties.– We’ll consider Odell’s classification

    4

  • Component-Integral Object

    • A configuration of parts within a whole

    • Bristles - toothbrush• Scene - film

    • A particular arrangement (not just haphazard)

    • If components cease to support the overall pattern then different associations may arise– Handle ripped from a door of the car.

    • No longer a part but a piece

    5

    functional non-homeomericseparable

  • Material-Object

    • Parts can’t be removed

    • Capuccino is partly milk• Bread is partly flour

    • Define what objects are made of.• Component-Integral can be separated

    – Car without a door handle still a Car• Material-Object can’t

    – Bread without flour not bread

    6

    functionalnon-homeomericnon-separable

  • Portion-Object

    • Cf Material-Object, but parts are the same kinds of thing

    • Slice of bread is a portion of bread• meter is part of a kilometer

    • A slice of bread is bread. So slices in a loaf are similar• Portions divided by standard measures

    – meter/kilometer– hour/day

    • Selective inheritance of properties• Ingredients of bread are ingredients of slice of bread

    – But with different quantities

    • Slice, helping, segment, lump, drop etc.7

    functionalhomeomericseparable

  • Place-Area

    • Unlike Portion-Object, pieces cannot be removed

    • Manchester part of England• Peak part of a mountain

    • Often between places and locations.• Pieces similar in nature.

    8

    functionalhomeomericnon-seperable

  • Member-Bunch

    • No requirement for a particular structural or functional relationship

    • Tree part of a Forest• Employee part of the Union• Ship part of a Fleet

    • Member-Bunch is not subclass!!!

    9

    non-functionalnon-homeomericseparable

  • Member-Partnership

    • An invariant form of Member-Bunch

    • Stan Laurel is part of Laurel and Hardy• Fred and Ginger are a dancing couple

    • Removal of member destroys the partnership– a different partnership may result

    10

    non-functionalnon-homeomericnon-seperable

  • Summary of Odell’s Compositional Relationships

    11

    Functional Homeomeric Seperable

    Component-Integral ! " !

    Material-Object ! " "

    Portion-Object ! ! !

    Place-Area ! ! "

    Member-Bunch " " !

    Member-Partnership " " "

  • Non Compositional Relationships

    • Topological inclusion– I am in the lecture theatre

    • Classification inclusion– Catch 22 is a Book – It’s an instance of Book, not a part of it, so not Member-Bunch

    • Attribution– Properties of an object can be confused with composition– Height of a Lighthouse isn’t part of it

    • Attachment– Earrings aren’t part of Ears– Toes are part of Feet– Sometimes attachments are parts, but not always

    • Ownership– A bicycle has wheels– I have a bicycle

    12

  • 13

    So what?

  • Transitivity

    • We might expect part-whole or composition relationships to behave transitively. – But this is generally only true with the same kind of composition.

    • Engine part of the Car• Pistons part of the Engine• Pistons part of the Car

    • Sean’s arm part of Sean• Sean part of School of Computer Science• Sean’s arm part of School of Computer Science

    14

    X is part of Y, Y is part of Z, thus X is part of Z

    isPartOf isConstituentOf isPortionOf isMemberOf ...

  • 15

    Transitivity• In partonomies, we may want to identify direct parts

    – Piston directPartOf Engine; Engine directPartOf Car– Piston is not directPartOf Car, but is a partOf Car

    • I want to query for all the direct parts of the Car, but not the direct parts of its direct parts. – So directPartOf shouldn’t be transitive

    • Solution: provide a transitive superproperty

    • Queries can use the superproperty to query transitive closure• Assertions use the direct part of relationship• A standard ontology design pattern, sometimes referred to as transitive

    reduction.

    Property: isPartOf Characteristics: TransitiveProperty: isDirectPartOf SubPropertyOf: isPartOf

  • Aside: Transitivity and Subproperties

    • Transitive property R is one s.t.for any x,y,z, if x R y and y R z, then z R z

    • Transitivity is not “inherited” by subproperties.• Nor is a superproperty of a transitive

    property necessarily transitive

    16

    Property: knowsProperty: hasFriend SubPropertyOf: knows Characteristics: TransitiveProperty: hasBestFriend SubPropertyOf: hasFriend

    Arthur Beth Charlie Daphne

    knows:hasFriend:

    hasBestFriend:

  • A note on Inverses

    • OWL allows us to define inverse relationships• hasPet / isPetOf• hasParent / isChildOf• (x R y) iff (y inv-R x)

    • Be careful about what you can infer about inverse relationships

    • X SubClassOf (hasPart some Y)– All X’s have a part which is a Y– Are all Y’s a part of some X?

    17

  • Composition

    • Composition provides a mechanism for forming an object whole using its parts

    • By considering basis properties if this part-whole relationship, we can identify different kinds of relationship

    • The different relationships then help us in identifying when, for example, we can (or can’t) apply transitivity.

    • Explicitly separating these in our representation can avoid incorrect/invalid inferences.

    18

  • 1

    Partonomic Relationships and

    SEP Triples

    COMP60421Sean Bechhofer

    University of [email protected]

    Material kindly provided by Patrice Seyed, University of Buffalo

  • Partonomy

    • Representing and reasoning on relationships such subclass-of (for generalization) and part-of (for aggregation) is crucial for medical information systems.

    • Is part-of transitive?– usage must be consistent

    • Generally transitive for anatomy– The femur is part of the leg, leg is part of the body therefore femur is

    part of the body• Part-Whole specialization

    – inheritance of roles along a part-whole taxonomies• Fracture of the Femur is a fracture of the Leg• Representation and Reasoning must handle cases where this sort of

    inference does not hold– Transplantation of the Aorta is not a Transplantation of the Heart– Amputation of a Finger is not Amputation of the Hand.– Myocarditis is not an Inflammation of the entire Heart (Pancarditis).

    2

  • Part-Whole

    • Mechanisms to support this include

    • Right Identities– e.g. GRAIL– hasLocus inherited across isPartOf

    • Explicit use of Disjunction– Heart Disease is a Disease located in Heart or some part of Heart

    • Structure-Entire-Part Triples– Separate classes for the the whole of the parts (S), the whole (E) or

    parts (P).

    • Each approach places different requirements on the representation and potentially introduce different cognitive complexities.

    3

  • Partonomic Relationships

    • How can we capture this sort of reasoning while staying within a language with restricted expressiveness? – ALC does not offer transitive relationships

    • S-E-P Triples• Part-Whole reasoning is implicitly done via subsumption reasoning (when

    and where transitive roles/property chains deemed expensive)• SEP triples implicitly express part-whole relationships between anatomical

    entities

    • An(other) example of an Ontology Design Pattern

    4

  • SEP Triples

    • For each entity X, we introduce XS, XE and XP.• ’S’ stands for a Structure Class

    – Individuals that are a part of a “whole” entity– HeartS : a part of the heart or a whole heart

    • Two subclasses: ‘E’ and ‘P’ Class for Entire and Part Class– HeartE : an entire heart – HeartP : a part of a heart

    • Use appropriate subclass for definitions

    5

    HeartS

    HeartE HeartP

  • SEP Triples

    • SEP triples given for all anatomical entities• Body

    – (BodyS, BodyE, BodyP)• Heart

    – (HeartS, HeartE, HeartP)• Myocardium

    – (MyocardiumS, MyocardiumE, MyocardiumP )• Connecting axioms

    – HeartS SubClassOf: BodyP

    • Appropriate class then used for a definition.

    6

    HeartS

    HeartE HeartP

    MyocardiumS

    MyocardiumE MyocardiumP

    BodyS

    BodyE BodyP

  • Entailment

    7

    Entailment based on Partonomic Relationships

    Class: CarditisEquivalentTo: Inflammation and (hasLocus some HeartS)

    Class: MyocarditisEquivalentTo: Inflammation and (hasLocus some MyocardiumS)

    HeartS

    HeartE HeartP

    MyocardiumS

    MyocardiumE MyocardiumP

    Carditis hasLocus

    Myocarditis hasLocus

    Carditis is an inflammation of the Heart or one of its parts

    Myocarditis is an inflammation of the Myocardium or one of its parts

  • Non Entailment

    8

    No Entailment!

    Class: PancarditisEquivalentTo: Inflammation and (hasLocus some HeartE)

    Class: MyocarditisEquivalentTo: Inflammation and (hasLocus some MyocardiumS)

    HeartS

    HeartE HeartP

    MyocardiumS

    MyocardiumE MyocardiumP

    Pancarditis hasLocus

    Myocarditis hasLocus

    Pancarditis is an inflammation of the entire Heart

  • SEP Triples

    • All very nice, but the SEP approach doesn’t actually model the relational structure of parthood.– Rather partonomic “level” -- whether things are a whole or a part.

    • Alternatives introduce explicit relationships, but require additional expressivity in the representation.– Effect on computational resources needed.– Potential effect on the cognitive complexity

    9

  • Alternative 1

    • Introduce explicit definitions for the “structure” and “part” entities, using a new transitive, reflexive relationship partOf

    • But, needs transitive properties and disjunction. • Also, reflexive nature of partOf results in equivalences.

    10

    Class XEClass XS EquivalentTo: XE or (partOf some XE)Class XP EquivalentTo: (partOf some XE)

  • Alternative 2

    • Replace the use of XS with X or (partOf some X)• Replace the use of XE with X• Replace axioms of the form XS SubClassOf: YP with

    X SubClassOf (partOf some Y)

    • Removes the SEP triples altogether, but requires disjunction

    11

  • Alternative 3

    • Introduce a property properPartof, subproperty of partOf. – Encapsulates “proper” subparts (e.g. not the whole)

    • Replace the use of XS with X or (partOf some X)• Replace the use of XE with X• Replace axioms of the form XS SubClassOf: YP with

    X SubClassOf (properPartOf some Y)

    12

  • Querying Structure

    • Finding things that are located in the entire, part or structure

    13

    Entire Part Structure

    O hasLocus some HeartE hasLocus some HeartP hasLocus some HeartS

    A1 hasLocus some HeartE hasLocus some HeartP hasLocus some HeartS

    A2 hasLocus some Heart hasLocus some (partOf some Heart)

    hasLocus some (Heart or (partOf some Heart))

    A3 hasLocus some Heart hasLocus some (properPartOf Heart)

    hasLocus some (partOf some Heart)

  • Partonomic Relationships

    • SEP triples capture some aspects of part-whole. • Original SEP approach doesn’t actually model the relational structure of

    parthood.– Rather partonomic “level”

    • Alternatives do, but require additional expressivity in the representation.– Effect on computational resources needed.

    • Choice may not always be good!

    14

  • Modelling Family History

    COMP60421Sean Bechhofer

    [email protected] thanks to Robert Stevens

    1

  • Family History

    • In Week 1, we had an exercise involving Family History data, kindly donated by Robert Stevens.

    • The spreadsheet listed people, along with the occupations they held at particular times and where the information had been derived from.

    • How might we define an ontology to allow us to describe this data?• What are the classes we need to represent?• What are the properties or relationships that we need to describe?• How can we map from the spreadsheet data into some populated ontology?• What queries can we then ask?

    2

  • 3

    • Name of Person– Given Name– Surname– Possibly Married name

    • Date of Birth– If known

    • Occupation– Year– Source– (Additional Notes)

    • Sex?

  • 4

    Modelling in OWL

    • Recall that OWL allows us to describe – Individuals.– Classes (of Individuals).– Relationships between Individuals or Properties of Individuals.

    • What are our Individuals here? • What are the Classes• What are the Properties/Relations?

  • Basic Data

    • Each Person has– Given Name– Surname– Date of Birth

    • Some Persons (Women) may also have– Married Surname

    • OWL provides Datatype properties that allow us to associate data values with Individuals. – Strings, numbers etc.

    5

  • Occupations

    • We are assuming that we have a hierarchy of occupations or roles (not all of the things that people are listed as doing are necessarily occupations)

    • This is a simple taxonomy. • We might, at some point, be concerned about modelling this more completely, e.g.

    through descriptions of the roles, but for current purposes, an asserted hierarchy is fine.

    • However, a key question is how we associate people with the occupations/roles that they are playing.

    6

  • Modelling Occupations: Attempt #1

    7

    Class: PersonClass: RoleClass: ButcherSubClassOf: Role

    Individual: W.G.BrightTypes: Person, Butcher

  • Modelling Occupations: Attempt #2

    8

    Class: PersonClass: RoleClass: ButcherSubClassOf: Role

    ObjectProperty: hasRole

    Individual: Butcher-1Types: ButcherIndividual: W.G.BrightTypes: PersonFacts: hasRole Butcher-1

  • Named and Anonymous Individuals

    • OWL allows us to make statements about particular named individuals.• Fred has a cat called Tibbs.

    • We can also refer to anonymous individuals• Fred has a cat, but we don’t know anything

    about it• This representation of incomplete

    information can be useful when we don’tknow (or don’t care) about the particularindividual.

    9

    Individual: FredTypes: PersonFacts: hasPet Tibbs

    Individual: TibbsTypes: Cat

    Individual: FredTypes: Person that hasPet some Cat

  • Modelling Occupations: Attempt #3

    10

    Class: PersonClass: RoleClass: ButcherSubClassOf: Role

    ObjectProperty: hasRole

    Individual: W.G.BrightTypes: Person that hasRole some Butcher

  • Modelling Occupations: Attempt #4

    11

    Class: PersonClass: RoleClass: ButcherSubClassOf: RoleClass: RolePlayed

    ObjectProperty: playsRoleObjectProperty: hasRole

    Individual: W.G.BrightTypes: Person that playsRole some (RolePlayed that hasRole some Butcher)

  • Modelling Sex: Male and Female

    12

    • People are Male or Female – For the purposes of this model we will take a simplified view and not consider

    transgender/androgeny etc.– Thus every person is either Male or Female and not both

    A. Subclasses of Person Male, Female, with Individuals being asserted as instances of those classes• Disjointness and Covering Axioms

    B. Two distinct Individuals Male, Female with a functional ObjectProperty hasSex

    C.Classes Male, Female, a functional ObjectProperty hasSex with Individuals being asserted to be related to anonymous Individuals of those classes.• Disjointness and Covering Axioms

  • Modelling Male and Female

    13

    • Incomplete information?• Extensibility?• Shared “maleness”?• Definitions of Man and Woman?

    • How can we tell if people are Maleor Female in the data?

  • Modelling Dates

    14

    • The data states a date for the occupation– Start date?– End date?– Some kind of duration?

    • A simple approach here is to provide a DatatypeProperty that associates the year (as an integer) with the RolePlayed instance– An advantage of considering the RolePlayed as an object.– Other data types are available. e.g. for dates

    • Limitations?

  • Provenance

    15

    • It is often important to maintain the provenance of information.– Where does this fact come from?

    • The data includes this for most of the facts– Census Records– Birth Records– Death Records– Marriage Records

    • We can provide additional attributes on the RolePlayed Individuals stating where the information came from

    • As with Sex there are possible choices– Distinct Individuals: Census, BirthRecord, DeathRecord etc.– Classes for Source types – Classes for Source types with Anonymous Individuals.– Would we ever want to name these?

  • Named or Anonymous RolePlayed Object?

    16

    Individual: William_George_Bright_1901Types: playsRole some (RolePlayed and hasRole some Butcher and hasYear value "1929"^^integer and hasSource some MarriageRecord)

    Individual: James_Bright_1809Facts: playsRole rolePlayed_001

    Individual: rolePlayed_001Types: RolePlayed and (hasRole some Seaman)Facts: hasYear “1839”^^integer