ontology-driven conceptual modeling with applications

88
Ontology-Driven Conceptual Modeling with Applications Giancarlo Guizzardi ([email protected] ) http://nemo.inf.ufes.br Computer Science Department Federal University of Espírito Santo (UFES), Brazil i* Internal Workshop Barcelona, Spain July, 2010

Upload: nansen

Post on 07-Jan-2016

28 views

Category:

Documents


0 download

DESCRIPTION

Ontology-Driven Conceptual Modeling with Applications. Giancarlo Guizzardi ( [email protected] ) http://nemo.inf.ufes.br Computer Science Department Federal University of Espírito Santo (UFES), Brazil. i * Internal Workshop Barcelona, Spain July, 2010. Prologue. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Ontology-Driven Conceptual Modeling with Applications

Ontology-Driven Conceptual Modeling

with Applications

Giancarlo Guizzardi([email protected] )http://nemo.inf.ufes.br

Computer Science DepartmentFederal University of Espírito Santo (UFES),

Brazil

i* Internal WorkshopBarcelona, Spain

July, 2010

Page 2: Ontology-Driven Conceptual Modeling with Applications

PROLOGUE

Page 3: Ontology-Driven Conceptual Modeling with Applications

What is Conceptual Modeling?

• “the activity of formally describing some aspects of the physical and social world around us for purposes of understanding and communication…Conceptual modelling supports structuring and inferential facilities that are psychologically grounded. After all, the descriptions that arise from conceptual modelling activities are intended to be used by humans, not machines... The adequacy of a conceptual modelling notation rests on its contribution to the construction of models of reality that promote a common understanding of that reality among their human users.”

John Mylopoulos

Page 4: Ontology-Driven Conceptual Modeling with Applications

Conceptual Modeling Language

Formal Ontologyinterpreted as

represented by

Page 5: Ontology-Driven Conceptual Modeling with Applications

Formal Ontology

• To uncover and analyze the general categories and principles that describe reality is the very business of philosophical Formal Ontology

• Formal Ontology (Husserl): a discipline that deals with formal ontological structures (e.g. theory of parts, theory of wholes, types and instantiation, identity, dependence, unity) which apply to all material domains in reality.

Page 6: Ontology-Driven Conceptual Modeling with Applications

What is Conceptual Modeling?

• “the activity of formally describing some aspects of the physical and social world around us for purposes of understanding and communication…Conceptual modelling supports structuring and inferential facilities that are psychologically grounded. After all, the descriptions that arise from conceptual modelling activities are intended to be used by humans, not machines... The adequacy of a conceptual modelling notation rests on its contribution to the construction of models of reality that promote a common understanding of that reality among their human users.”

John Mylopoulos

Page 7: Ontology-Driven Conceptual Modeling with Applications

The Chomskian Hypothesis• I-Language vs. E-language

– There is a universal common language competence (Universal Grammar/Mentalese) which is innate

– There is a logical reason behind the fact that we are able to learn our first language, i.e., abstract a formal system capable of generating an infinite number of valid expressions: (i) only by being exposed to samples of this system; (ii) without meta-linguistic support which is available to second-language learners

Page 8: Ontology-Driven Conceptual Modeling with Applications

OntoUML

Cognitive Formal

Ontology (Descriptive

Metaphysics) interpreted as

represented by

Page 9: Ontology-Driven Conceptual Modeling with Applications

OBJECT TYPES AND TAXONOMIC STRUCTURES

Page 10: Ontology-Driven Conceptual Modeling with Applications

General Terms and Common Nouns

• (i) exaclty five mice were in the kitchen last night• (ii) the mouse which has eaten the cheese, has been

in turn eaten by the cat

Page 11: Ontology-Driven Conceptual Modeling with Applications

General Terms and Common Nouns

• (i) exactly five X ...• (ii) the Y which is Z...

Page 12: Ontology-Driven Conceptual Modeling with Applications

General Terms and Common Nouns

• (i) exaclty five reds were in the kitchen last night• (ii) the red which has ..., has been in turn ...

Page 13: Ontology-Driven Conceptual Modeling with Applications

General Terms and Common Nouns

• Both reference and quantification require that the thing (or things) which are refered to or which form the domain of quantification are determinate individuals, i.e. their conditions for individuation and numerical identity must be determinate

Page 14: Ontology-Driven Conceptual Modeling with Applications

Sortal and Characterizing Universals

• Whilst the characterizing universals supply only a principle of application for the individuals they collect, sortal universals supply both a principle of application and a principle of identity

Page 15: Ontology-Driven Conceptual Modeling with Applications

Foundations • (1) We can only make identity and identification

statements with the support of a Sortal, i.e., the identity of an individual can only be traced in connection with a Sortal type, which provides a principle of individuation and identity to the particulars it collects (Gupta, Macnamara, Wiggins, Hirsch, Strawson)

• Every Object in a conceptual model (CM) of the domain must be an instance of a CM-type representing a sortal.

Page 16: Ontology-Driven Conceptual Modeling with Applications

Unique principle of Identity

X Y

Page 17: Ontology-Driven Conceptual Modeling with Applications

X Y

Unique principle of Identity

Page 18: Ontology-Driven Conceptual Modeling with Applications

Foundations • (2) An individual cannot obey incompatible principles of

identity (Gupta, Macnamara, Wiggins, Hirsch, Strawson)

Page 19: Ontology-Driven Conceptual Modeling with Applications

Distinctions Among Object Types

Object Type

Sortal Type Mixin Type

Type

{Person, Apple} {Insurable Item, Red}

Page 20: Ontology-Driven Conceptual Modeling with Applications
Page 21: Ontology-Driven Conceptual Modeling with Applications

Rigidity

• A type T is rigid if for every instance x of T, x is necessarily (in the modal sense) an instance of T. In other words, if x instantiates T in a given world w, then x must instantiate T in every possible world w’:

R(T) =def □(x T(x) □(T(x)))

Page 22: Ontology-Driven Conceptual Modeling with Applications

Anti-Rigidity

• A types T is anti-rigid if for every instance x of T, x is possibly (in the modal sense) not an instance of T. In other words, if x instantiates T in a given world w, then there is a possible world w’ in which x does not instantiate T:

AR(T) =def □(x T(x) (T(x)))

Page 23: Ontology-Driven Conceptual Modeling with Applications

ObjectType

Sortal Type

Kind

Mixin Type

Rigid Sortal Type Anti-Rigid Sortal Type

Type

Distinctions Among Object Types

{Person}

{Insurable Item}

{Student, Teenager}

Page 24: Ontology-Driven Conceptual Modeling with Applications

Foundations

• (3) If an individual falls under two sortals in the course of its history there must be exactly one ultimate rigid sortal of which both sortals are specializations and from which they will inherit a principle of identity (Wiggins)

P P’

S

Page 25: Ontology-Driven Conceptual Modeling with Applications

Restriction Principle

P P’

S

(4) Instances of P and P’ must have obey a principle of identity (by 1)

(5) The principles obeyed by the instances of P and P’ must be the same (by 2)

(6) The common principle of identity cannot be supplied by P neither by P’

Page 26: Ontology-Driven Conceptual Modeling with Applications

Uniqueness Principle

(7) G and S cannot have incompatible principles of identity (by 2). Therefore, either:- G supplies the same principle as S and therefore G is the ultimate Sortal- G is does not supply any principle of identity (non-sortal)

P P’

S

G

Page 27: Ontology-Driven Conceptual Modeling with Applications

Foundations • A Non-sortal type cannot have direct instances.• A Non-sortal type cannot appear in a conceptual model as a

subtype of a sortal• An Object in a conceptual model of the domain cannot

instantiate more than one ultimate Kind (substance sortal).

Page 28: Ontology-Driven Conceptual Modeling with Applications

Distinctions Among Object Types

{Person}

{Insurable Item}

{Student, Teenager}

{Man, Woman}

Page 29: Ontology-Driven Conceptual Modeling with Applications

«kind»SocialBeing

«kind»Group

Organization

TheBeatles

instance of

Page 30: Ontology-Driven Conceptual Modeling with Applications

«kind»SocialBeing

StaffOrganization

{John,Paul,George,Ringo}TheBeatles

instance of instance of

«constitution»

«kind»Group

Page 31: Ontology-Driven Conceptual Modeling with Applications

Relational Dependence

• A type T is relationally dependent on another type P via relation R iff for every instance x of T there is an instance y of P such that x and y are related via R:

R(T,P,R) =def □(x T(x) y P(y) R(x,y))

Page 32: Ontology-Driven Conceptual Modeling with Applications

ObjectType

Sortal Type

RoleKind

Mixin Type

Rigid Sortal Type Anti-Rigid Sortal Type

Phase

Type

Distinctions Among Object Types

{Person}

{Insurable Item}

{Student, Employee}

{Teenager, Living Person}

Page 33: Ontology-Driven Conceptual Modeling with Applications

EducationalInstitution«role»

Student*

EducationalInstitution«role»

Student1..*

Page 34: Ontology-Driven Conceptual Modeling with Applications

Person

{disjoint,complete}

«phase»LivingPerson

«phase»DeceasedPerson

Page 35: Ontology-Driven Conceptual Modeling with Applications

«kind»Person

«phase»Child

«phase»Adolescent

«phase»Adult

Man

Woman

{disjoint, complete}

{disjoint, complete}

Page 36: Ontology-Driven Conceptual Modeling with Applications

«kind»Person

«role»Customer

A rigid type cannot be a subtype of a an anti-rigid type.

Page 37: Ontology-Driven Conceptual Modeling with Applications

Subtyping with Rigid and Anti-Rigid Types

1. x Person(x) □Person(x)

2. x Student(x) Student(x)

3. □(Person(x) Student(x))

4. Person(John)

5. Student(John)

6. □Person(John)

7. □Student(John)

8. □Student(John) Student(John)

Person

Student

Page 38: Ontology-Driven Conceptual Modeling with Applications

Different Categories of Types

Category of Type Supply Identity

Carry Identity

Rigidity Dependence

SORTAL - + +/- +/-

« kind » + + + -

« subkind » - + + -

« role » - + - +

« phase » - + - -

NON-SORTAL - - +/- +/-

Page 39: Ontology-Driven Conceptual Modeling with Applications

Different Categories of Types

Category of Type Supply Identity

Identity Rigidity Dependence

SORTAL - + +/- +/-

« kind » + + + -

« subkind » - + + -

« role » - + - +

« phase » - + - -

NON-SORTAL - - +/~ +/-

« category » - - + -

« roleMixin » - - - +

« mixin » - - ~ -

Page 40: Ontology-Driven Conceptual Modeling with Applications

ObjectType

Sortal Type

RoleKind

Mixin Type

Rigid Sortal Type Anti-Rigid Sortal Type

Phase RoleMixin

Anti-Rigid MixinType

Type

Distinctions Among Object Types

{Person} {Customer}{Student, Employee}

{Teenager, Living Person}

Page 41: Ontology-Driven Conceptual Modeling with Applications

Roles with Disjoint Allowed Types

«role»Customer

Person Organization

Page 42: Ontology-Driven Conceptual Modeling with Applications

Roles with Disjoint Allowed Types

«role»Customer

Person Organization

Page 43: Ontology-Driven Conceptual Modeling with Applications

Participant

Person SIG

Forum

1..* *

participation

Page 44: Ontology-Driven Conceptual Modeling with Applications

Roles with Disjoint Admissible Types

«roleMixin»Customer

Page 45: Ontology-Driven Conceptual Modeling with Applications

Roles with Disjoint Allowed Types

«roleMixin»Customer

«role»PersonalCustomer

«role»CorporateCustomer

Page 46: Ontology-Driven Conceptual Modeling with Applications

Roles with Disjoint Allowed Types

«roleMixin»Customer

«role»PersonalCustomer

Person Organization

«role»CorporateCustomer

Page 47: Ontology-Driven Conceptual Modeling with Applications

«roleMixin»Customer

«role»PrivateCustomer

«role»CorporateCustomer

«kind»Person

Organization

«kind»Social Being

«roleMixin»Participant

«role»IndividualParticipant

«role»CollectiveParticipant

«kind»Person

SIG

«kind»Social Being

Page 48: Ontology-Driven Conceptual Modeling with Applications

Roles with Disjoint Admissible Types

«roleMixin»A

«role»B

F

D E

«role»C

1..*

1..*

Page 49: Ontology-Driven Conceptual Modeling with Applications

The Pattern in ORM

by Terry Halpin

Page 50: Ontology-Driven Conceptual Modeling with Applications

Different Categories of Types

Category of Type Supply Identity

Identity Rigidity Dependence

SORTAL - + +/- +/-

« kind » + + + -

« subkind » - + + -

« role » - + - +

« phase » - + - -

NON-SORTAL - - +/~ +/-

« category » - - + -

« roleMixin » - - - +

« mixin » - - ~ -

Page 51: Ontology-Driven Conceptual Modeling with Applications

Category

«kind»Person

«kind»Artificial Agent

«category»Rational Entity

Page 52: Ontology-Driven Conceptual Modeling with Applications

Mixin

«kind»Chair

«phase»Solid Crate

«mixin»Seatable

«phase»Broken Crate

«kind»Crate

Page 53: Ontology-Driven Conceptual Modeling with Applications

PART-WHOLE RELATIONS

Page 54: Ontology-Driven Conceptual Modeling with Applications

John

part-of

John’s Heart

Person

Page 55: Ontology-Driven Conceptual Modeling with Applications

John

John’s Brain

part-of

Page 56: Ontology-Driven Conceptual Modeling with Applications

John

part-of

John’s Heart

□((Person,x) □((x) (!Heart,y)(y < x)))

Page 57: Ontology-Driven Conceptual Modeling with Applications

John

John’s Brain

part-of

□((Person,x)(!Brain,y) □((x) (y < x)))

Page 58: Ontology-Driven Conceptual Modeling with Applications

John

part-of

John’s Heart

□((Person,x) □((x) (!Heart,y)(y < x)))

Page 59: Ontology-Driven Conceptual Modeling with Applications

part-of

part-of

Page 60: Ontology-Driven Conceptual Modeling with Applications

Parts of Anti-Rigid Object Types

• “every boxer must have a hand” • “every biker must have a leg”

Page 61: Ontology-Driven Conceptual Modeling with Applications
Page 62: Ontology-Driven Conceptual Modeling with Applications

De Re/De Dicto Modalities

• (i) The queen of the Netherlands is necessarily queen;

• (ii) The number of planets in the solar system is necessarily even.

Page 63: Ontology-Driven Conceptual Modeling with Applications

Sentence (i)

• The queen of the Netherlands is necessarily queen:

x QueenOfTheNetherlands(x) □(Queen(x))

□(x QueenOfTheNetherlands(x) Queen(x))

DE RE

DE DICTO

Page 64: Ontology-Driven Conceptual Modeling with Applications

Sentence (ii)

• The number of planets in the solar system is necessarily even:

x NumberOfPlanets(x) □(Even(x)))

□(x NumberOfPlanets(x) Even(x)))

DE RE

DE DICTO

Page 65: Ontology-Driven Conceptual Modeling with Applications

The Boxer Example

“every boxer must have a hand”

“If someone is a boxer than he has at least a hand in every possible circumstance”

DE RE

DE DICTO“In any circumstance, whoever is boxer has at least one hand”

□((Boxer,x)(Hand,y) □((x) (y < x)))

□((Boxer,x) □((x) Hand,y (y < x)))

□((Boxer,x)(Hand,y) □((x) Boxer(x) (y < x)))

Page 66: Ontology-Driven Conceptual Modeling with Applications

The Boxer Example

“every boxer must have a hand”

“If someone is a boxer than he has at least a hand in every possible circumstance”

DE RE

DE DICTO“In any circumstance, whoever is boxer has at least one hand”

□((Boxer,x)(Hand,y) □((x) (y < x)))

□((Boxer,x) □((x) Hand,y (y < x)))

□((Boxer,x)(Hand,y) □((x) Boxer(x) (y < x)))

Page 67: Ontology-Driven Conceptual Modeling with Applications

Further Distinctions among Part-Whole relations

– (i) specific dependence with de re modality (essential parts);

– (ii) generic dependence with de re modality (mandatory parts);

– (iii) specific dependence with de dicto modality (immutable parts).

– ONLY RIGID TYPES CAN HAVE TRULY ESSENTIAL PARTS!

Page 68: Ontology-Driven Conceptual Modeling with Applications

Anti-Rigid Types and Immutable Parts

Page 69: Ontology-Driven Conceptual Modeling with Applications

Lifetime Dependency (Essential Parts)

Page 70: Ontology-Driven Conceptual Modeling with Applications

The De Dicto equivalent of De Re formulae

□((Person,x)(!Brain,y) □((x) Person(x) (y < x)))

□((Person,x) □((x) Person(x) (!Heart,y)(y < x)))

Page 71: Ontology-Driven Conceptual Modeling with Applications

General Schemata for Immutable Parts

Page 72: Ontology-Driven Conceptual Modeling with Applications

Type

isAbstract:Boolean = false

Classifier

DirectedRelationship

Generalization

specific

1

generalization

*

general1

/general

*

isCovering:Boolean = falseisDisjoint:Boolean = true

GeneralizationSet **

Relationship

name:String[0..1]

NamedElement

Element

/relatedElement

1..*

/target1..*

/source

1..*

Class

Object Class

Anti Rigid Sortal Class

Mixin ClassSortal Class

{disjoint, complete}

Rigid Sortal Class

RolePhaseSubKindSubstance Sortal

{disjoint, complete} {disjoint, complete}

{disjoint, complete}

Non Rigid Mixin Class

{disjoint, complete}

Rigid Mixin Class

Category

{disjoint, complete}

Anti Rigid Mixin Class Semi Rigid Mixin

RoleMixin Mixin

QuantityisExtensional:Boolean

CollectiveKind

{disjoint, complete}

Page 73: Ontology-Driven Conceptual Modeling with Applications
Page 74: Ontology-Driven Conceptual Modeling with Applications
Page 75: Ontology-Driven Conceptual Modeling with Applications

John

part-of

part-of

part-of

Page 76: Ontology-Driven Conceptual Modeling with Applications

John

part-of

John’s Brain

part-of

part-of

Page 77: Ontology-Driven Conceptual Modeling with Applications
Page 78: Ontology-Driven Conceptual Modeling with Applications

Summary of Visual Patterns

Page 79: Ontology-Driven Conceptual Modeling with Applications
Page 80: Ontology-Driven Conceptual Modeling with Applications

Tool Support

The underlying algorithm merely has to check structural properties of the diagram and not the content of involved nodes

Page 81: Ontology-Driven Conceptual Modeling with Applications

• Colorless green ideas sleep furiously

Chomsky, 1957

Page 82: Ontology-Driven Conceptual Modeling with Applications

House (Episode 2-10)• House: Hi, I'm Gregory House; I'm your attending physician,

your wife's not there, start talking.• Fletcher: They took my stain! I couldn't tackle the bear, they

took my stain.

Page 83: Ontology-Driven Conceptual Modeling with Applications

ATL Transformation

Alloy Analyzer + OntoUML visual Plugin

Simulation and Visualization

Page 84: Ontology-Driven Conceptual Modeling with Applications
Page 85: Ontology-Driven Conceptual Modeling with Applications
Page 86: Ontology-Driven Conceptual Modeling with Applications

The alternative to philosophy is not “non-philosophy” but bad philosophy! A scientific field can either develop and make explicit its foundations or remain oblivious to its inevitable and often ad hoc ontological commitments.

Page 87: Ontology-Driven Conceptual Modeling with Applications

Acknowledgements

This research is funded by the Brazilian ResearchFunding Agencies FAPES (grant number 45444080/09) and

CNPq (grants number 481906/2009-6)

Page 88: Ontology-Driven Conceptual Modeling with Applications

THANK YOU FOR LISTENING!!!

http://[email protected]