Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
Ontology-Driven Conceptual Modeling
Giancarlo Guizzardi
Ontology and Conceptual Modeling Research Group (NEMO) Federal University of Espírito Santo, Brazil
The Taxonomy of Animals inThe Celestial Emporium of
Benevolent Knowledge (Borges)• Those that belong to the emperor
• Those that resemble flies from a distance
• Those that have just broken a flower vase
• Embalmed ones
• Fabulous ones
“Those that resemble flies from a distance” is a logically possible way to group objects, but
it’s not how we naturally make sense of the world. No real language would have a noun for
such a category…Real nouns capture something deep; they refer to kinds of things that are thought to share deep properties…”
(Paul Bloom, How Pleasure Works, 2010)
“…As the evolutionary theorist Stephen Jay Gould put it, our classifications don’t just exist to avoid chaos, they are “theories about the
basis of natural order.”
(Paul Bloom, How Pleasure Works, 2010)
How$many$kinds$of$rock?
5
The Ontological Level: Revisiting 30 Years of Knowledge Representation 53
Fig. 1. Kinds of rocks (From [5])
proliferate easily, as soon as new attributes are added to the vocabulary. Hence they proposed a functional approach to knowledge representation designed to only answer “safe” queries that are about analytical relationships between terms, and whose answers are independent of the actual structure of the knowledge base, like “a large grey igneous rock is a grey rock”.
It is clear that, in this example, Brachman and colleagues understood the term “rock kind” in a very simple, minimalist way (perhaps as synonymous with “rock class”), ignoring the fact that, for many people, there are just three kinds of rocks, as taught at high school: Igneous, Metamorphic, and Sedimentary. On the other hand, two of the same authors, in an earlier paper on terminological competence in knowledge representation [6] stressed the importance of distinguishing an “enhancement mode transistor” (which is “a kind of transistor”) from a “pass transistor” (which is “a role a transistor plays in a larger circuit”).
So why was this distinction ignored? My own conclusion is that important issues related to the different ontological assumptions underlying our use of terms have been simply given up while striving for logical simplification and computational tractability. As a consequence, most representation languages, including “ontology languages” like OWL, do not offer constructs able to distinguish among terms having similar logical structure but different ontological implications. In our example, clearly “large rock” and “sedimentary rock” have the same logical structure, being both interpreted as the conjunction of two (primitive) logical properties; yet we tend to believe that there is something radically different between the two: why? To answer this question we have to investigate:
• the nature of the primitive properties “being a rock”, “being large”, and “being sedimentary”;
• the way they combine together in a structured term, while modifying each other.
Unfortunately, while current representation languages offer us powerful tools to build structured descriptions whose formal semantics is carefully controlled to provide efficient reasoning services, still no agreement has been reached concerning the need to adopt proper mechanisms to control the ontological commitments of structured
rock
igneous rock sedimentary rockmetamorphic rock
large rock grey rock
large grey igneous rock
grey sedimentary
rock
pet metamorphic rock
Brachman,)Fikes)and)Levesque,)1985
CATEGORIES*OF*OBJECT*TYPES
General$Terms$and$Common$Nouns
(i)$exactly$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$Types
Whilst$the$characterizing$types$supply$only$a$principle$of$application$for$the$individuals$they$collect,$sortal$types$supply$both$a$principle$of$application$and$a$principle$of$identity$
The$Logical$Level∃x$Apple(x)$∧ Red(x)
The$Epistemological$Level
Apple
color = red
Red
sort = apple
The$Ontological$Level
Apple
color = red
Red
sort = apple
sortal universal characterizing Universal (mixin)
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$
* Every*Object*in*a*conceptual*model*(CM)*of*the*domain*
must*be*an*instance*of*a*class*representing*a*sortal*type*
*
Foundations $ Moreover,$since$NonTSortals$cannot$supply$a$principle$of$
identity$for$its$instances,$we$have$that,$all$NonTSortal$Types$in$the$model$must$be$represented$as$Abstract*Classes*
*
Unique$principle$of$Identity
X Y*Y$
18
PRINCIPLE OF IDENTITY
=
X Y*
Unique$principle$of$Identity
Y$
PRINCIPLE OF IDENTITY
Foundations (2)$An$individual$cannot$obey$incompatible$principles$of$
identity
Distinctions$Among$$Categories$of$Object$Types
Object Type
Sortal Type Non-Sortal Type
Type
{Person,$Apple,$Student} {Insurable$Item,$Red}
Rigidity$(R+)
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)))*
$
R+(Person)*=def$□(∀x*Person(x)*→*□(Person(x)))$
e.g.,
AntiTRigidity$(R~)
A$types$T$is$antiTrigid$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:$
R~(T)*=def$□(∀x*T(x)*→*◊(¬T(x)))$
R~(Student)*=def$□(∀x*Student)*→*◊(¬Student(x)))$
e.g.,
ObjectType
Sortal Type Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Type
Distinctions$Among$Categories$ of$Object$Types
{Person,$Organization}
{Insurable$Item}
{Student,$Teenager,$$FootballPlayer}
26
PRINCIPLE OF IDENTITY
A$principle$of$identity$cannot$be$supplied$by$$either$of$these$two$antiTrigid$types,$
since$it$should$be$used$to$identify$individuals$$in$every$possible$situations!
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$inherit$a$principle$of$identity
P P’
S
…
Restriction$Principle
P P’
…
(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’
S
Uniqueness$Principle
$ (7)$G$and$S$cannot$have$incompatible$principles$of$identity$(by$2).$Therefore,$either:$
$ T$$ G$supplies$the$same$principle$as$S$and$therefore$G$is$the$ultimate$Sortal$
$ T$$ G$is$does$not$supply$any$principle$of$identity$(nonTsortal)$
$
P P’
…
G
…
S
ObjectType
Sortal Type
Kind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Type
subKind
Distinctions$Among$Categories$ of$Object$Types
{Person,$Organization}
{Insurable$Item}
{Student,$Teenager,$$FootballPlayer}
{Man,$Woman}
Foundations$Since$the$unique$principle$of$identity$supplied$by$a$Kind$is$
inherited$by$its$subclasses,$we$have$that:$A$NonTsortal$type$cannot$appear$in$a$conceptual$model$as$a$
subtype$of$a$sortal
Person
InsuredItem HeavyEntity
Foundations$Since$the$unique$principle$of$identity$supplied$by$a$Kind$is$
inherited$by$its$subclasses,$we$have$that:$A$NonTsortal$type$cannot$appear$in$a$conceptual$model$as$a$
subtype$of$a$sortal
Person
InsuredItem HeavyEntity
Foundations$Since$the$unique$principle$of$identity$supplied$by$a$Kind$is$
inherited$by$its$subclasses,$we$have$that:$A$NonTsortal$type$cannot$appear$in$a$conceptual$model$as$a$
subtype$of$a$sortal
Person
InsuredPerson HeavyPerson
HeavyEntityInsuredItem
Foundations$Since$the$unique$principle$of$identity$supplied$by$a$Kind$is$
inherited$by$its$subclasses,$we$have$that:$A$NonTsortal$type$cannot$appear$in$a$conceptual$model$as$a$
subtype$of$a$sortal
Person
InsuredPerson HeavyPerson
HeavyEntityInsuredItem I1
I1 I1
Foundations$Since$the$unique$principle$of$identity$supplied$by$a$Kind$is$
inherited$by$its$subclasses,$we$have$that:$An$Object$in$a$conceptual$model$of$the$domain$cannot$
instantiate$more$than$one$ultimate$Kind
«kind»SocialBeing
«kind»Group
Organization
TheBeatles
instance of
«kind»SocialBeing
«kind»Group
Organization
TheBeatles
instance of
I1 I2
I1,$I2$
I1,$I2$
«kind»SocialBeing
«kind»Group
Organization
TheBeatles
instance of
«kind»SocialBeing
StaffOrganization
{John,Paul,George,Ringo}TheBeatles
instance of instance of
«constitution»
«kind»Group
Foundations$It$is$not$the$case$that$we$cannot$have$multiple$supertyping.$
Only$that$a$type$cannot$have$multiple$kinds$as$supertypes!
Foundations$It$is$important$to$emphasize$the$supertyping$is$a$modal$relation$
as$well,$i.e.,$if$A$is$supertype$of$B$then$A$is$necessarily$a$supertype$of$B
A
B
Ac
B
Fixed$ConfigurationSupertype(A,B)*=def$□(∀x*B(x)*→*A(x))$
ObjectType
Sortal Type
Kind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Type
subKind
A$Kind$cannot$be$a$supertype$of$another$Kind
ObjectType
Sortal Type
Kind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Type
subKind
A$subKind$cannot$be$a$supertype$of$a$kind
ObjectType
Sortal Type
Kind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Type
subKind
A$subKind$type$MUST$have$as$a$supertype$$a$(unique)$Kind
Subkind$PartitionsIt$is$typical$that$subkinds$are$defined$in$structures$called$
Subkind$Partitions$These$are$not$always$partitions$in$the$strong$sense,$i.e.,$they$
defined$as$disjoint$but$rarely$complete$generalization$sets
«kind»Person
«subkind»Man «subkind»Woman
{disjoint ,complete }
Subkind$Partitions
«kind»Person
«subkind»Man «subkind»Woman
{disjoint ,complete }
MalePerson
Female$Person
PERSON
These$partitions$are$the$same$In$every$possible$world!
SubkindsHowever,$subkinds$also$appear$outside$generalization$sets$as$
specializations$of$kinds
«kind»Organization
«subkind»EntertainmentOrganization
Subkinds
«kind»Organization
«subkind»EntertainmentOrganization
«subkind»NewsOrganization
«subkind»News&EntertainmentOrganization
This$only$makes$sense$if$there$are$genuine$(intrinsic$or$relational)$properties$to$be$defined$for$the$intersection$type
SubkindRemember$that$property$overriding$is$always$a$bad$idea$and$it$
is$always$caused$by$a$conceptual$modeling$mistake
declaredProfit:Currency
«subkind»NonProfitOrganization
declaredProfit:Currency
«kind»Organization
SubkindRemember$that$property$overriding$is$always$a$bad$idea$and$it$
is$always$caused$by$a$conceptual$modeling$mistake
declaredProfit:Currency
«subkind»ForProfitOrganization
«kind»Organization
«subkind»NonProfitOrganization
{disjoint,complete}
ObjectType
Sortal Type
Kind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Type
subKind
An$AntiTRigid$type$MUST$have$as$a$supertype$$a$(unique)$Kind
ObjectType
Sortal Type
Kind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Type
subKind
A$Kind$cannot$be$a$supertype$of$a$NonTSortal$Type
ObjectType
Sortal Type
Kind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Type
subKind
A$Kind$cannot$be$a$supertype$of$a$NonTSortal$Type$in$fact,$since$all$sortals$will$inherit$a$principle$of$
Identity$from$a$Kind
ObjectType
Sortal Type
Kind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Type
subKind
A$Sortal$Type$cannot$be$a$supertype$of$a$NonTSortal$Type
ObjectType
Sortal Type
Kind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Type
subKind
Distinctions$Among$Categories$ of$Object$Types
{Person}
{Insurable$Item}
{Student,$Teenager,$$FootballPlayer}
{Man,$Woman}
Relational$Dependence$(D+)
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:$
D+(T,P,R)*=def$□(∀x*T(x)*→*∃y$P(y)*∧*R(x,y))$
D+(Student,*School,*EnrolledOat)*=def$$
□(∀x*Student(x)*→*∃y$School*(y)*∧*EnrolledOat(x,y))$
e.g.,
ObjectType
Sortal Type
Kind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Type
subKind Phase Role
Distinctions$Among$Categories$ of$Object$Types
{Person}
{Insurable$Item}
{Student,$$Husband}
{Man,$Woman} {Teenager,$$LivingPerson}
Roles
School«role»Student
*
enrolledTat
Roles
School«role»Student
*
The$Relational$property$in$this$case$is$part$of$$the$very$definition$of$the$Role:$
Student(x)$=def$Person(x)$∧ ∃y$School(y)$∧ enrolledTat(x,y)
en
enrolledTat
RolesDefined$as$a$(antiTrigid)$specialization$of$a$kind$such$that$the$
specialization$condition$is$a$relational$one$(correlated$with$derivation$by$participation)
«kind»Person
«role»Student «kind»School
1..* 1..*
enrolled-at
PERSON
STUDENT
SCHOOL
«kind»Person
«role»Student «kind»School
1..* 1..*
enrolled-at
WORLD$W
PERSON
STUDENT
SCHOOL
«kind»Person
«role»Student «kind»School
1..* 1..*
enrolled-at
WORLD$W’
PERSON
STUDENT
SCHOOL
«kind»Person
«role»Student «kind»School
1..* 1..*
enrolled-at
WORLD$W’’
PhasesDefined$as$a$(antiTrigid)$specialization$of$a$kind$such$that$the$
specialization$condition$is$an$intrinsic$one$Phases$are$always$defined$in$a$soTcalled$Phase$Partition$Phase$Partitions$are$partitions$in$strong$sense,$i.e.,$they$are$
disjoint$and$complete$generalization$sets
Person
{disjoint,complete}
«phase»LivingPerson
«phase»DeceasedPerson
Person
{disjoint,complete}
«phase»LivingPerson
«phase»DeceasedPerson
LivingPerson
Deceased$Person
PERSON
WORLD$$W
Person
{disjoint,complete}
«phase»LivingPerson
«phase»DeceasedPerson
LivingPerson
Deceased$Person
PERSON
WORLD$W’
Person
{disjoint,complete}
«phase»LivingPerson
«phase»DeceasedPerson
LivingPerson
Deceased$Person
PERSON
WORLD$W’’
«kind»Person
«subkind»Man
«subkind»Woman
{disjoint ,complete }
«phase»LivingPerson
«phase»DeceasedPerson
{disjoint ,complete}
Deceased$Person
PERSON
WORLD$W
Living$Person
Man
Woman
«kind»Person
«subkind»Man
«subkind»Woman
{disjoint ,complete }
«phase»LivingPerson
«phase»DeceasedPerson
{disjoint ,complete}
Deceased$Person
PERSON
WORLD$W’
Living$Person
Man
Woman
«kind»Person
«subkind»Man
«subkind»Woman
{disjoint ,complete }
«phase»LivingPerson
«phase»DeceasedPerson
{disjoint ,complete}
«kind»Person
«subkind»Man
«subkind»Woman
{disjoint ,complete}
«phase»LivingPerson
«phase»DeceasedPerson
{disjoint ,complete }«phase»Child
«phase»Teenager
«phase»Adult
{disjoint ,complete}
73
«kind»Person
«role»Customer
«role»Customer
«kind»Person
«kind»Organization
«role»Customer
«kind»Person
«kind»Organization
An$antiTrigid$type$cannot$be$a$supertype$of$a$Rigid$Type
Student
Person
x
Instance$of
WORLD$W
Student
Person
x
Instance$of
WORLD$W
Instance$of
Student
Person
x
Instance$of
WORLD$W’
Instance$of
RT
Since$Student$is$antiTrigid,$there$must$be$a$world$W’$such$that$x$is$not$an$instance$of$Student$in$W’
Student
Person
x
Instance$of
WORLD$W’
Instance$of
RT
But$since$Person$is$rigid$then$x$must$be$an$instance$of$Person$in$all$worlds,$
including$in$W’
R+
Student
Person
x
Instance$of
WORLD$W’
Instance$of
RT
But,$given$the$semantics$of$supertying,$we$have$that$in$all$worlds$(including$W’),$$
whoever$is$a$Person$is$a$Student
R+Instance$of
Student
Person
x
Instance$of
WORLD$W’
Instance$of
RT
We$run$into$a$logical$contradiction!
R+Instance$of
ObjectType
Sortal Type
Kind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Type
subKind Phase Role
An$antiTrigid$type$cannot$be$a$supertype$of$a$Rigid$Type
Different$Categories$of$Object$Types
Category*of*Type* Supply*
Identity*
Inherits*
Identity*
Rigidity* Dependence*
SORTAL* O* +*
«*kind*»* +* +* +* O*
«*subkind*»* O* +* +* O*
«*role*»* O* +* O* +*
«*phase*»* O* +* O* O*
NONOSORTAL* O* O*
K1
K2
K3
K4
K5
Kinds
K1
K2
K3
K4
K5
Anti-Rigid Sortals (Roles and Phases)
K1
K2
K3
K4
K5
Anti-Rigid Sortals (Roles and Phases)
Distinctions$Among$Object$Types
{Person} {Customer}{Student,$$Employee}
{Teenager,$$Living$Person}
ObjectType
Sortal Type
RoleKind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Phase
Rigid Non-Sortal Type
Type
Anti-Rigid Non-Sortal Type
subkind
Distinctions$Among$Object$Types
ObjectType
Sortal Type
RoleKind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Phase
Rigid Non-Sortal Type
Type
Anti-Rigid Non-Sortal Type
subkind Category
{Person} {Physical$Object}{Student,$$Husband}
{Brazilian,$Man,$Woman}
{Teenager,$$LivingPerson}
Categories$are$rigid$nonTsortals$representing$necessary$(in$the$modal$sense)$features$of$entities$of$different$kinds$
Typically,$they$form$the$topTmost$layer$of$object$types$in$an$ontology$$
Categories$(IT,R+)
«kind»Person
«kind»Artificial Agent
«category»Rational Entity
{disjoint}
ARTIFICIAL$AGENT
PERSON
RATIONAL*ENTITY
Categories
Like$all$nonTsortals,$categories$are$always$defined$as$abstract$classes,$which$means$that$all$categories$must$have$at$least$a$kind$as$a$subtype
ObjectType
Sortal Type
RoleKind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Phase
Rigid Non-Sortal Type
Type
Anti-Rigid Non-Sortal Type
subkind Category
CategoriesA$kind$can$be$subtype$of$multiple$categories$and$a$category$can$
be$a$supertype$of$multiple$kinds$Since$all$kinds$are$disjoint$(otherwise$the$instances$in$their$
intersection$would$inherit$multiple$principles$of$identity),$all$subtypes$of$a$category$form$a$disjoint$generalization$set$
On$the$other$hand,$since$categories$represent$features$of$multiple$kinds,$they$are$very$seldom$complete$$
«category»PhysicalObject
«kind»Person «kind»Car «kind»Bridge
{disjoint}
Distinctions$Among$Object$Types
{Person} {Customer}{Student,$$Employee}
{Teenager,$$Living$Person}
ObjectType
Sortal Type
RoleKind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Phase
Rigid Non-Sortal Type
Type
Anti-Rigid Non-Sortal Type
subkind Category RoleMixin
{Person} {Physical$Object}{Student,$$Husband}
{Brazilian,$Man,$Woman}
{Teenager,$$LivingPerson}
{Crime$Weapon}
RoleMixin(IT,RT,D+)RoleMixen$are$antiTrigid$and$relational$dependent$nonTsortals$
representing$contigent$(in$the$modal$sense)$features$of$entities$of$different$kinds$
As$all$NonTSortals,$RoleMixins$classify$entities$belonging$to$different$kinds$$
Like$all$nonTsortals,$categories$are$always$defined$as$abstract$classes
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..*
Which$one$is$better?
Computer
hasTpart
MemoryDisk$Drive
Computer$Part
Memory$PartDisk$Part
Computer$Part
Disk$Drive Memory
Computer
hasTpart
by)Chris)Welty
The$Pattern$in$ORM
by)Terry)Halpin
Patterns$and$Metaphors
From$a$modeling$viewpoint,$patterns$can$be$seen$as$higherTgranularity$modeling$primitives$$$
Design$Patterns$are$the$modeling$counterpart$of$a$device$for$Structure$Transferability$capturing$a$domainTindependent$system$of$types$and$relations$that$offer$a$stardardized$solution$for$a$recurrent$problem$$$
RoleMixinsA$RoleMixin$cannot$be$a$superTtype$of$a$category,$in$fact,$
an$AntiTRigid$NonTSortal$type$cannot$be$a$supertype$of$a$rigid$one$
ObjectType
Sortal Type
RoleKind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Phase
Rigid Non-Sortal Type
Type
Anti-Rigid Non-Sortal Type
subkind Category RoleMixin
RoleMixin
PERSON
CUSTOMER
Personal$Customer
Corporate$Customer
WORLD$WORGANIZATION
Supplier
RoleMixin
PERSON
CUSTOMER
Personal$Customer
Corporate$Customer
WORLD$W’ORGANIZATION
Supplier
ObjectType
Sortal Type
RoleKind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Phase
Rigid Non-Sortal Type
Type
Non-Rigid Non-Sortal Type
subkind Category
RoleMixin
Anti-Rigid Non-Sortal Type Semi-Rigid Non-Sortal Type
Mixin
Distinctions$Among$Object$Types
{Person} {Physical$Object}{Student,$$Husband}
{Brazilian,$Man,$Woman}
{Teenager,$$LivingPerson}
{Insurable$Item}
Modal$MetaTPropertiesWe$will$discuss$here$four$types$of$Ontological$MetaTProperties$
which$are$of$a$modal$nature
RIGIDITY NONORIGIDITY
ANTIORIGIDITY SEMIORIGIDITY
NonTRigidityAntiTRigidity$is$not$the$logical$negation$of$rigidity,$nonTrigidity$
is!$AntiTRigidity$is$stronger$than$that$as$a$logical$constraint
R+(T)*=def$□(∀x*T(x)*→*□(T(x)))*
$
RO(T)*=def$◊(∃xT(x) ∧◊¬T(x))*
$
Logical$Negation
Rigidity
NonTRigidity
NonTRigidity
AntiTRigidity$is$not$the$logical$negation$of$rigidity,$nonTrigidity$is!$AntiTRigidity$is$stronger$than$that$as$a$logical$constraint
R+(T)*=def$□(∀x*T(x)*→*□(T(x)))*
$
RO(T)*=def$◊(∃xT(x) ∧◊¬T(x))*
$
Logical$Negation
R~(T)*=def$□(∀x*T(x)*→*◊(¬T(x)))$AntiTRigidity
Rigidity
NonTRigidity
NonTRigidity
AntiTRigidity$is$not$the$logical$negation$of$rigidity,$nonTrigidity$is!$AntiTRigidity$is$stronger$than$that$as$a$logical$constraint
R+(T)*=def$□(∀x*T(x)*→*□(T(x)))*
$
R ¬(T)*=def$◊(∃xT(x) ∧◊¬T(x))*
$
Logical$Negation
RO(T)*=def$□(∀x*T(x)*→*◊(¬T(x)))$AntiTRigidity
Rigidity
NonTRigidity
R~*(T)*=def$RO(T)*∧ ¬R~(T)SemiTRigidity
Mixin(IT,R~)Mixins$are$semiTrigid$nonTsortals,$i.e.,$they$represent$features$
which$are$necessary$(in$the$modal$sense)$for$some$of$its$instances$but$contingent$to$others$$
SR(T)*=def*NR(T)*∧ ¬RO(T)*
Every$Mixin$must$be$a$supertype$of$a$rigid$type$as$well$as$a$supertype$of$a$NonTRigid$type$(typically$a$phase)
«mixin»InsuredItem
«kind»Car «phase»InsuredHouse
{disjoint }
«phase»NonInsuredHouse
«kind»House
{disjoint,complete}
MixinsMixins$represent$semiTrigid$features$of$multiple$kinds$Since$all$kinds$are$disjoint,$all$subtypes$of$a$mixin$form$a$
disjoint$generalization$set.$On$the$other,$like$in$the$case$of$categories,$these$generalization$sets$are$very$seldom$complete$$
«mixin»InsuredItem
«kind»Car «phase»InsuredHouse
{disjoint }
«phase»NonInsuredHouse
«kind»House
{disjoint,complete}
Mixin
HOUSE
CAR
INSURABLE**ITEM Insured$$
house
Uninsured$$house
WORLD$W
Mixin
HOUSE
CAR
INSURABLE**ITEM Insured$$
house
Uninsured$$house
WORLD$W’
Different$Categories$of$Object$Types
Category*of*Type* Supply*
Identity*
Identity* Rigidity* Dependence*
SORTAL* O* +*
«*kind*»* +* +* +* O*
«*subkind*»* O* +* +* O*
«*role*»* O* +* O* +*
«*phase*»* O* +* O* O*
NONOSORTAL* O* O*
«*category*»* O* O* +* O*
«*roleMixin*»* O* O* O* +*
«*mixin*»* O* O* ¬ O*
K1
K2
K3
K4
K5
Rigid Non-Sortals
K1
K2
K3
K4
K5
Anti-Rigid Non-Sortals
K1
K2
K3
K4
K5
Anti-Rigid Non-Sortals
METHODOLOGICAL*GUIDELINES
Ontological$MetaTProperties$of$Object$Types
These$ontological$metaTproperties$define$a$typology$of$Object$Types$that:$Define$a$formal$semantics$for$these$modeling$primitives$(present$in$a$number$of$current$approaches$–$ORM,$OntoClean)$but$which$have$been$defined$in$a$ad$hoc$manner$in$the$past$
Support$a$number$of$operational$semantics$with$important$consequences$to$a$number$of$implementation$technologies$(e.g.,$OWL,$OOP,$RDB),$but$also$for$verification$and$validation$technologies$
Define$methodological$guidelines$for$guiding$users$in$the$modeling$activity
Rigid$Backbone:$Kinds$and$SubKindsStart$by$identifying$the$rigid$backbone$of$your$model$This$is$the$taxonomic$structure$containing$only$kinds$and$their$
specializing$subkinds$Notice$that,$since$all$kinds$are$disjoint,$you$will$end$up$with$a$
forest$of$modelTtrees$This$Rigid$Backbone$defines$the$stable$structure$of$your$model$
and,$this$should$have$a$significant$impact$on$all$possible$implementations$of$your$model$regardless$of$the$implementation$technology$adopted$(e.g.,$ObjectTOriented$Technology,$Database$Technology,$RuleTBased$Systems,$Description$Logics$Systems)$
Rigid$Backbone:$Kinds$and$SubKindsSubkinds$frequently$appear$in$a$subkind$partition$with$
specializations$of$a$common$Kind.$This$partition$will$typically$be$disjoint$but$rarely$complete$Nonetheless,$it$is$interesting$to$identify$the$properties$which$
differentiate$the$subkinds$of$a$common$kind$as$well$as$to$identify$the$complementary$subkinds$belonging$to$the$same$partition
«kind»Person
«subkind»Man
«subkind»Woman
{disjoint ,complete }
Methodological$Questions:$
Is$there$another$subkind$of$[Person]$which$is$complementary$to$Man?
Identify$AntiTRigid$Sortals
«kind»A
B
Candidate$AntiTRigid$Class
Methodological$Questions:$
•Can$a$[A]$which$is$not$a$[B]$become$one?$(e.g.,$can$a$PERSON$who$is$not$a$FATHER$become$one?)$
•Can$a$[A]$which$is$[B]$cease$to$be$a$[B]?$(e.g.,$can$a$PERSON$who$is$a$FATHER$cease$to$be$a$FATHER?)
RolesRoles$are$always$(ultimately)$defined$as$specializations$of$kind$
via$a$relational$specialization$condition
«kind»A
B
AntiTRigid$Class
Methodological$Questions:$
•Does$a$[A]$become$a$[B]$by$establishing$a$relation$to$another$type$of$entity?$(e.g.,$Does$a$PERSON$become$a$FATHER$by$establishing$a$relation$to$another$type$of$entity?)$
•What$would$be$name$of$that$defining$relation?$
•Find$out$the$cardinality$constraints$of$that$defining$relation
Roles
It$is$typical$that$this$type$will$also$be$a$role
«kind»Person
«role»Father «role»Offspring
1 1..*fatherhood
Minimum$cardinality$here$is$always$≥ 1
PhasesPhases$are$always$(ultimately)$defined$as$specializations$of$kind$
via$an$intrinsic$specialization$condition
«kind»A
B
AntiTRigid$Class
Methodological$Questions:$
•Does$a$[A]$become$a$[B]$due$to$a$change$on$one$or$more$of$its$attribute$values?$(e.g.,$Does$a$PERSON$become$a$TEENAGER$due$to$a$change$on$one$or$more$of$its$attribute$values?)$
•Find$out$about$the$defining$attributes$and$associated$defining$values
Phases$are$always$defined$in$a$disjoint$and$complete$phase$partition
«kind»Person
«phase»Child
«phase»Teenager
«phase»Adult
{disjoint ,complete}
Phases
Methodological$Questions:$
•What$are$the$other$phases$complementary$to$[B]$in$which$[A]$can$be?$(e.g.,$What$are$the$other$phases$complementary$to$TEENAGER$in$which$a$PERSON$can$be?)$
•Find$out$about$the$defining$attributes$and$associated$defining$values$for$the$complementary$phases
Identify$NonTSortalsThe$direct$rule$of$thumb$for$identifying$nonTsortals$is$to$look$
for$types$that$can$have$instances$that$belong$to$multiple$kinds$
NonTSortals,$thus,$represent$common$features$that$are$shared$by$entities$of$multiple$kinds$
Are$these$features$necessary$or$contingent$ones?$
Categories$are$represent$necessary$features$shared$by$entities$of$multiple$kinds$
They$are$always$defined$a$supertype$of$multiple$rigid$types$forming$a$disjoint$partition$
Categories$(nonTsortals$in$general)$play$an$important$role$as$a$structuring$mechanism$in$conceptual$models$(particularly$in$large$ontologies)
Categories
Typically,$categories$are$identified$a*posteriori,$i.e.,$as$an$abstraction$mechanism$for$a$number$of$rigid$sortal$types$that$have$already$been$modeled$
The$definition$of$a$Category$them$amounts$to$abstract$these$shared$features$in$a$common$type$which$will$be$the$common$supertype$in$a$disjoint$generalization$set$relating$all$these$rigid$sortal$types$
«kind»Person
«kind»Artificial Agent
«category»Rational Entity
Categories
{disjoint}
Mixins$represent$features$shared$by$entities$of$multiple$kinds$which$are$necessary$for$some$of$its$instances$and$contingent$to$others$
Typically,$these$shared$features$are$identified$a*posteriori,$i.e.,$as$an$abstraction$mechanism$for$a$number$of$sortal$types$that$have$already$been$modeled$such$that$some$of$these$sortal$types$are$rigid$while$others$are$not$
The$definition$of$a$Mixin$them$amounts$to$abstract$these$shared$features$in$a$common$type$which$will$be$the$common$supertype$in$a$disjoint$generalization$set$relating$all$these$sortal$types$
Mixins
Again,$some$of$the$types$in$this$generalization$set$will$be$rigid$types$while$others$will$be$nonTrigid$ones$(typically$phases)
Mixins
«mixin»InsuredItem
«kind»Car «phase»InsuredHouse
{disjoint }
«phase»NonInsuredHouse
«kind»House
{disjoint,complete}
Role$Mixins$represent$contingent$and$relational$features$shared$by$entities$of$multiple$kinds$
Role$Mixins$typically$manifest$themselves$when$one$has$to$face$the$problem$of$Role*Modeling*with*Players*of*Multiple*Kinds***
In$other$words,$one$is$typically$faced$with$the$problem$of$having$a$candidate$role$(antiTrigid$sortal$with$an$identified$defining$relation)$but$which$can$be$played$by$entities$of$multiple$kinds
Role$Mixins
Decompose$the$candidate$Role$(which$is$in$fact$a$Role$Mixin)$in$a$number$of$specializing$Roles$such$that$each$of$these$subTroles$classify$only$entities$that$belong$to$the$same$Kind$$$
Connect$these$subTroles$with$their$corresponding$Kinds$via$specialization$relationships$$
The$role$mixin,$thus,$serve$as$an$abstraction$mechanism$for$all$these$subTroles$representing$its$shared$relational$features$(including$the$defining$relations)*
Role$Mixins
«roleMixin»A
«role»B
F
D E
«role»C
1..*
1..*
OntologyTDerived$Patterns
«roleMixin»A
«role»B
Obj.Type F
Sortal D Sortal E
«role»C
1..*
1..*
min≥1
«roleMixin»Customer
«role»PrivateCustomer
«role»CorporateCustomer
«phase»Active Organization
«phase»Living Person
«role»Supplier
1..* 1..*
{disjoint , complete }
«roleMixin»Customer
«role»PrivateCustomer
«role»CorporateCustomer
«phase»Active Organization
«phase»Living Person
«role»Supplier
1..*
1..*
«phase»Deceased Person
«phase»Extinct Organization
«kind»Organization
{disjoint, complete}
«kind»Person
{disjoint, complete}
{disjoint, complete}
OntologyTDerived$Patterns
«roleMixin»A
«role»B
Obj.Type F
Sortal D Sortal E
«role»C
1..*
1..*
min≥1
«roleMixin»Customer
«role»PrivateCustomer
«role»CorporateCustomer
«phase»Active Organization
«phase»Living Person
«role»Supplier
1..* 1..*
{disjoint , complete }
«roleMixin»Customer
«role»PrivateCustomer
«role»CorporateCustomer
«phase»Active Organization
«phase»Living Person
«role»Supplier
1..*
1..*
«phase»Deceased Person
«phase»Extinct Organization
«kind»Organization
{disjoint, complete}
«kind»Person
{disjoint, complete}
{disjoint, complete}
http://nemo.inf.ufes.br/ [email protected]