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
PROLOGUE
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
Conceptual Modeling Language
Formal Ontologyinterpreted as
represented by
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.
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
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
OntoUML
Cognitive Formal
Ontology (Descriptive
Metaphysics) interpreted as
represented by
OBJECT TYPES AND TAXONOMIC STRUCTURES
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
General Terms and Common Nouns
• (i) exactly five X ...• (ii) the Y which is Z...
General Terms and Common Nouns
• (i) exaclty five reds were in the kitchen last night• (ii) the red which has ..., has been in turn ...
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
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
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.
Unique principle of Identity
X Y
X Y
Unique principle of Identity
Foundations • (2) An individual cannot obey incompatible principles of
identity (Gupta, Macnamara, Wiggins, Hirsch, Strawson)
Distinctions Among Object Types
Object Type
Sortal Type Mixin Type
Type
{Person, Apple} {Insurable Item, Red}
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)))
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)))
ObjectType
Sortal Type
Kind
Mixin Type
Rigid Sortal Type Anti-Rigid Sortal Type
Type
Distinctions Among Object Types
{Person}
{Insurable Item}
{Student, Teenager}
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
…
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’
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
…
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).
Distinctions Among Object Types
{Person}
{Insurable Item}
{Student, Teenager}
{Man, Woman}
«kind»SocialBeing
«kind»Group
Organization
TheBeatles
instance of
«kind»SocialBeing
StaffOrganization
{John,Paul,George,Ringo}TheBeatles
instance of instance of
«constitution»
«kind»Group
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))
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}
EducationalInstitution«role»
Student*
EducationalInstitution«role»
Student1..*
Person
{disjoint,complete}
«phase»LivingPerson
«phase»DeceasedPerson
«kind»Person
«phase»Child
«phase»Adolescent
«phase»Adult
Man
Woman
{disjoint, complete}
{disjoint, complete}
«kind»Person
«role»Customer
A rigid type cannot be a subtype of a an anti-rigid type.
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
Different Categories of Types
Category of Type Supply Identity
Carry Identity
Rigidity Dependence
SORTAL - + +/- +/-
« kind » + + + -
« subkind » - + + -
« role » - + - +
« phase » - + - -
NON-SORTAL - - +/- +/-
Different Categories of Types
Category of Type Supply Identity
Identity Rigidity Dependence
SORTAL - + +/- +/-
« kind » + + + -
« subkind » - + + -
« role » - + - +
« phase » - + - -
NON-SORTAL - - +/~ +/-
« category » - - + -
« roleMixin » - - - +
« mixin » - - ~ -
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}
Roles with Disjoint Allowed Types
«role»Customer
Person Organization
Roles with Disjoint Allowed Types
«role»Customer
Person Organization
Participant
Person SIG
Forum
1..* *
participation
Roles with Disjoint Admissible Types
«roleMixin»Customer
Roles with Disjoint Allowed Types
«roleMixin»Customer
«role»PersonalCustomer
«role»CorporateCustomer
Roles with Disjoint Allowed Types
«roleMixin»Customer
«role»PersonalCustomer
Person Organization
«role»CorporateCustomer
«roleMixin»Customer
«role»PrivateCustomer
«role»CorporateCustomer
«kind»Person
Organization
«kind»Social Being
«roleMixin»Participant
«role»IndividualParticipant
«role»CollectiveParticipant
«kind»Person
SIG
«kind»Social Being
Roles with Disjoint Admissible Types
«roleMixin»A
«role»B
F
D E
«role»C
1..*
1..*
The Pattern in ORM
by Terry Halpin
Different Categories of Types
Category of Type Supply Identity
Identity Rigidity Dependence
SORTAL - + +/- +/-
« kind » + + + -
« subkind » - + + -
« role » - + - +
« phase » - + - -
NON-SORTAL - - +/~ +/-
« category » - - + -
« roleMixin » - - - +
« mixin » - - ~ -
Category
«kind»Person
«kind»Artificial Agent
«category»Rational Entity
Mixin
«kind»Chair
«phase»Solid Crate
«mixin»Seatable
«phase»Broken Crate
«kind»Crate
PART-WHOLE RELATIONS
John
part-of
John’s Heart
Person
John
John’s Brain
part-of
John
part-of
John’s Heart
□((Person,x) □((x) (!Heart,y)(y < x)))
John
John’s Brain
part-of
□((Person,x)(!Brain,y) □((x) (y < x)))
John
part-of
John’s Heart
□((Person,x) □((x) (!Heart,y)(y < x)))
part-of
part-of
Parts of Anti-Rigid Object Types
• “every boxer must have a hand” • “every biker must have a leg”
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.
Sentence (i)
• The queen of the Netherlands is necessarily queen:
x QueenOfTheNetherlands(x) □(Queen(x))
□(x QueenOfTheNetherlands(x) Queen(x))
DE RE
DE DICTO
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
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)))
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)))
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!
Anti-Rigid Types and Immutable Parts
Lifetime Dependency (Essential Parts)
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)))
General Schemata for Immutable Parts
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}
John
part-of
part-of
part-of
John
part-of
John’s Brain
part-of
part-of
Summary of Visual Patterns
Tool Support
The underlying algorithm merely has to check structural properties of the diagram and not the content of involved nodes
• Colorless green ideas sleep furiously
Chomsky, 1957
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.
ATL Transformation
Alloy Analyzer + OntoUML visual Plugin
Simulation and Visualization
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.
Acknowledgements
This research is funded by the Brazilian ResearchFunding Agencies FAPES (grant number 45444080/09) and
CNPq (grants number 481906/2009-6)
THANK YOU FOR LISTENING!!!
http://[email protected]
Top Related