Modelagem
Conceitual com
OntoUML – Tipos de
Objetos
Ricardo de Almeida Falbo
Engenharia de Ontologias Departamento de Informática
Agenda
• UFO – Unified Foundational Ontology
• Categorias de Tipos de Objetos
• A Linguagem OntoUML
Ontologia de Fundamentação Unificada
• Unified Foundational Ontology (UFO)
• Desenvolvida baseada em um número de teorias das áreas de Ontologia Formal, Lógica Filosófica, Filosofia da Linguagem, Linguística e Psicologia Cognitiva. • Três partes principais: – UFO-A: uma ontologia de objetos – UFO-B: uma ontologia de eventos – UFO-C: uma ontologia de entidades sociais
Fundamentação
• (1) Tipo Sortal (Sortal Type): provê um princípio de individualização e identidade para suas instâncias. • O princípio de identidade apoia o julgamento se dois
Princípio de Identidade Única
Y
Sortal x Mixin
Maçã
cor = vermelho
Vermelho tipo = maçã
Tipo Sortal Tipo de
Caracterização (Mixin)
Fundamentação
• Uma vez que não sortais (mixins) não proveem um princípio de identidade para suas instâncias, todos os tipos não sortais em um modelo devem ser representados como classes abstratas. • Todo objeto em um modelo conceitual estrutural deve ser instância de uma classe representando um tipo sortal.Distinções entre Categorias de
Tipos de Objetos
Object Type
Sortal Type Non-Sortal Type
Type
{Item Segurável, Vermelho}
Provê um princípio de individualização e identidade para suas instâncias?
{Pessoa, Maçã, Estudante}
DNA, Digital
Fundamentação
• (2) Um indivíduo (instância) não pode obedecer a
Um Tipo Sortal não pode ser um supertipo de um Tipo Não-Sortal.
Object Type
Sortal Type Non-Sortal Type
Rigidez (R+), Semi-Rigidez (R~) e Anti-Rigidez (R-)
• Um tipo T é rígido se para toda instância x de T, x é necessariamente uma instância de T (no senso modal). Em outras palavras, se x instancia T em um dado mundo w, então x deve instanciar T em todo mundo possível w´. Ex.: Pessoa. • Um tipo T é anti-rígido se para toda instância x de T, existe a possibilidade de x não ser uma instância de T. Em outras palavras, se x instancia T em um dado mundo w, então existe um mundo possível w´ em que x não instancia T. Ex.: Estudante. • Um tipo é semi-rígido quando ele não é nem rígido, nem anti-rígido, i.e. é rígido para algumas instâncias e não-rígido para outras. Ex.: Item Segurável.ObjectType
Sortal Type Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Type
Distinções entre Categorias de
Tipos de Objetos
{Pessoa, Organização} {Item Segurável} {Estudante, Adolescente, Jogador de Futebol, Professor} É rígido ou anti-rígido?Fundamentação
• (3) Se um indivíduo é classificado como instância de dois sortais ao longo de sua história (P e P’), deve haver exatamente um único sortal rígido definitivo (S) do qual ambos sortais P e P’ são especializações e do qual eles herdam seu pricípio de identidade. P P’S
… Estudante Professor Pessoa RicardoPrincípio da Restrição
P P’ … (4) Instâncias de P and P’ tem de obedecer a um princípio de identidade (por (1)). (5) Os princípios de identidade obedecidos pelas instâncias de P e P’ devem ser o mesmo (por (2)) (6) O princípio de identidade comum não pode ser provido nem por P nem por P’ (tem de ser por S).S
ObjectType
Sortal Type
Kind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Type subKind
Distinções entre Categorias de
Tipos de Objetos
{Pessoa, Organização} {Item Segurável} {Estudante, Adolescente, Professor} {Escola}Provê ou herda um princípio de
individualização e identidade para suas instâncias?
Fundamentação
• Uma vez que o princípio de identidade único provido por um Kind é herdado por todas as suas subclasses, então: Um tipo não sortal (Mixin) não pode aparecer em um modelo conceitual como um subtipo de um Sortal. Mixin Kind KindFundamentação
• Uma vez que o princípio de identidade único provido por um Kind é herdado por todas as suas subclasses, então: Um Objeto em um modelo conceitual de domínio não pode instanciar mais do que um único Kind. • Não se deve inferir que não é possível haver herança múltipla. Apenas que um tipo não pode ter múltiplos Kinds como supertipos!ObjectType
Sortal Type
Kind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type Type
subKind
ObjectType
Sortal Type
Kind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type Type
subKind
ObjectType
Sortal Type
Kind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type Type
subKind
Um subKind TEM de ter como supertipo um (único) Kind.
ObjectType
Sortal Type
Kind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type Type
subKind
Um tipo Anti-Rígido TEM de ter como um supertipo um (único) Kind.
ObjectType
Sortal Type
Kind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type Type
subKind
Dependência Relational (D+)
• Um tipo T é relacionalmente dependente de outro tipo
P via a relação R, se para toda instância x de T existe uma instância y de P tal que x e y são relacionadas através de R.
Papéis (Roles)
A propriedade relacional (matriculado em) é parte
da definição do papel Estudante.
e n
Papel (Role)
• Especialização anti-rígida de um Sortal, na qual a condição de especialização é de natureza relacional (derivada da participação em uma relação). Kind Kind RolePESSOA ESTUDANTE INSTITUIÇÃO DE ENSINO MUNDO M Kind Kind Role
PESSOA ESTUDANTE INSTITUIÇÃO DE ENSINO MUNDO M1 Kind Kind Role
PESSOA ESTUDANTE INSTITUIÇÃO DE ENSINO MUNDO M2 Kind Kind Role
Fase (Phase)
• Especialização (anti-rígida) de um Sortal, na qual a condição de especialização é intrínseca ao objeto.
• Fases são sempre definidas em Partições de Fases: conjuntos de generalização (generalization set) disjuntos e completos.
Kind
Idoso PESSOA MUNDO M1 Adulto Adolescente Criança
Idoso PESSOA MUNDO M2 Adulto Adolescente Criança
Idoso PESSOA MUNDO M3 Adulto Adolescente Criança
ObjectType
Sortal Type
Kind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type
Type
subKind Phase Role
Distinções entre Categorias de
Tipos de Objetos
{Pessoa, Organização} {Insurable Item} {Estudante} {Escola} {Adolescente} Relacionalmente dependente ou independente?Estudante
Pessoa
x
Instância de
Estudante Pessoa x Instância de
MUNDO M1
Instância deEstudante Pessoa x Instância de
MUNDO M2
Instância deR-Uma vez que Estudante é anti-rígido, deve existir um mundo M2 em que x não é uma instância de
Estudante Pessoa x Instância de
MUNDO M2
Instância deR-Mas, uma vez que Pessoa é rígido então x deve ser uma instância de Pessoa em todos os
mundos, incluindo M2.
Estudante Pessoa x Instância de
MUNDO M2
Instância deR-Entretanto, dada a semântica de supertipos, temos que em todos os mundos (incluindo M2) quem quer que seja
uma Pessoa é um Estudante, o que é uma contradição.
R+
Instância deObjectType
Sortal Type
Kind
Non-Sortal Type
Rigid Sortal Type Anti-Rigid Sortal Type Type
subKind Phase Role
Diferentes Categorias de Tipos de
Objetos
Categoria do Tipo Provê Identidade Herda Identidade Rigidez Dependência SORTAL « kind » + - + -« subkind » - + + -« role » - + - + « phase » - + - -NON-SORTAL -
-Diferentes Categorias de Tipos de
Objetos
Categoria do Tipo Provê Identidade
Herda
Identidade Rigidez Dependência
SORTAL « kind » + - + -« subkind » - + + -« role » - + - + « phase » - + - -NON-SORTAL « category » - - + -« roleMixin » - - - + « mixin » - - ~
-Diferentes Categorias de Tipos de Objetos
• Substance Sortal: objetos rígidos, relacionalmente independentes e que proveem um princípio de identidade para suas instâncias. • Kind: substance sortals cujas instâncias são complexos funcionais (functional complexes). Ex.: Pessoa, Carro etc. • Quantity: substance sortals cujas instâncias são quantidades. Ex.: Ouro, Areia, Água etc. • Collective: substance sortals cujas instâncias são coletivos, i.e. coleções de complexos que têm estrutura uniforme. Ex.: Grupo de pessoas, Baralho de cartas, etc.OntoUML
• Extensão da UML que incorpora ao metamodelo da UML 2.0 algumas das distinções ontológicas capturas pela Ontologia de Fundamentação Unificada (UFO-A). • Além de incorporar primitivas de modelagem que representam essas distinções ontológicas, o metamodelo estendido de OntoUML inclui um número de restrições lógicas que governam como essas primitivas podem ser combinadas para formar modelos conceituais consistentes.Metamodelo da UML 2.0 Extensões de OntoUML Type isAbstract:Boolean = false Classifier DirectedRelationship Generalization specific 1 generalization * general 1 /general * isCovering:Boolean = false isDisjoint:Boolean = true GeneralizationSet * * Relationship name:String[0..1] NamedElement Element /relatedElement 1..* /target 1..* /source 1..* Class Object Class
Anti Rigid Sortal Class
Mixin Class Sortal Class
{disjoint, complete}
Rigid Sortal Class
Role Phase
SubKind Substance 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 Quantity isExtensional:Boolean Collective Kind {disjoint, complete}
Estereótipos de OntoUML
Categoria do Tipo Estereótipo
Kind <<kind>> Quantity <<quantity>> Collective <<collective>> Subkind <<subkind>> Phase <<phase>> Role <<role>> Category <<category>> RoleMixin <<roleMixin>> Mixin <<mixin>>
Foundational OPs e OntoUML
• OntoUML incorpora Foundational Ontology Patterns, baseados em UFO, dentre eles: – Padrão Subkind – Padrão Phase – Padrão Role – Padrão RoleMixinPadrão Subkind
• Subkinds podem se manifestar de duas maneiras: – (i) como uma especialização de um tipo S (kind ou subkind) ou – (ii) como parte de um conjunto de generalizações (GS) que têm como superclasse comum tipo S (kind ou subkind). Kind ou Subkind Kind ou SubkindPadrão Phase
• Fases sempre se manifestam como parte de uma Partição de Fases, na qual há sempre um único supertipo comum que é necessariamente um Sortal (S). Kind, Subkind, Phase ou Role ...Padrão Role
• Papéis representam especializações de Sortais que têm como condição de especialização uma relação. Kind, Subkind, Phase ou Role Kind, Subkind, Phase ou RolePadrão RoleMixin
• Problema: Papéis com tipos disjuntos admissíveis.
Padrão RoleMixin
«roleMixin» A «role» B F D E «role» C 1..* 1..*Referências
• Guizzardi, G., Ontological Foundations for Structural Conceptual Models, Universal Press, 2005. 410 p.