Modelagem Conceitual com OntoUML Ricardo de Almeida Falbo Engenharia de Ontologias Departamento de Informática Universidade Federal do Espírito Santo
Agenda UFO Unified Foundational Ontology Categorias de Tipos de Objetos A Linguagem OntoUML e seus Tipos de Objetos Propriedades e Relações em UFO-A Relações Parte - Todo Tipos de Propriedades e Relações em OntoUML Foundational Ontology Patterns e 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
Distinções Básicas de UFO Universals x Individuals Universals (Types) são entidades descrevendo padrões de características comuns a vários indivíduos (tipos, classes). Assim, Universals podem ser instanciados. Ex.: Pessoa Individuals são entidades que existem na realidade, possuindo identidade única (instâncias). Não podem ser instanciados. Ex.: João A versão de UFO apresentada aqui não incorpora uma teoria de tipos de múltiplos níveis (tipos de mais alta ordem).
Distinções Básicas de UFO Endurants x Perdurants (Events) Endurants são entidades que existem no tempo, i.e., podem ser identificadas ao longo do tempo. Ex.: Pessoa, Disciplina Perdurants (Events) são entidades compostas de partes temporais. Elas acontecem no tempo. Ex.: Reunião, Corrida
Versão mais atual de UFO-A Endurant Universals são classificados segundo duas taxonomias ortogonais: Natureza ontológica dos objetos Meta-propriedades dos objetos
Meta-propriedades consideradas Identidade (Sortalidade) O tipo possui um princípio de identidade? (1) SIM: Sortal Provê ou herda o princípio de identidade? (3) NÃO: Não Sortal Rigidez: É rígido, anti-rígido ou semi-rígido? (2) Rígido Não Rígido Anti-rígido Semi-rígido Dependência Relacional É relacionalmente dependente de outros objetos? (4)
Tipos Sortais e Identidade Tipo Sortal (Sortal Type): possui um princípio de individualização e identidade para suas instâncias. O princípio de identidade apoia o julgamento se dois indivíduos são o mesmo.
Tipos Não Sortais Uma vez que tipos não sortais não possuem 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 indivíduo (instância) de um modelo conceitual estrutural deve ser instância de um tipo sortal.
Distinções entre Categorias de Tipos de Objetos Sim Não {Pessoa, Maçã, Estudante} {Item Assegurável} DNA, Digital 1. O tipo possui um princípio de identidade?
Identidade Um indivíduo (instância) não pode obedecer a princípios de identidade incompatíveis.
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. 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. Um tipo é semi-rígido quando ele não é nem rígido, nem anti-rígido.
Distinções entre Categorias de Tipos de Objetos 2. É rígido ou anti-rígido? 2. É rígido, anti-rígido ou semi-rígido? {Pessoa, Organização} {Estudante, Adolescente} {Agente Legal} {Item Assegurável} {Cliente} Um tipo rígido não pode ser um subtipo de um tipo não rígido (anti-rígido ou semi-rígido).
Fundamentação 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 princípio de identidade. S Pessoa P P Ricardo Estudante Professor
Distinções entre Categorias de Tipos de Objetos Provê {Pessoa, Organização} Herda {Escola} 3. O tipo provê ou herda o princípio de identidade?
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 não ser subtipo de um tipo Sortal. Kind Kind Mixin
Fundamentaçã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 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!
Fundamentação Um Kind não pode ser subtipo de outro Kind. Um Kind não pode ser subtipo de um Subkind. Um Subkind tem de ter como supertipo um (único) Kind. Um Tipo Sortal Anti-rígido tem de ter como supertipo um (único) Kind.
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.
Distinções entre Categorias de Tipos de Objetos Dependente Independente {Escola} {Pessoa, Organização} {Estudante} {Adolescente} 4. Relacionalmente dependente ou independente?
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 Role Kind
Phase Especialização anti-rígida de um Sortal, na qual a condição de especialização é intrínseca ao objeto. Fases são definidas em Partições de Fases: conjuntos de generalização (generalization set) disjuntos e completos. Kind Phases
Distinções entre Categorias de Tipos de Objetos {Agente} {Item Assegurável} Dependente Independente {Cliente} {Agente Inativo} 4. Relacionalmente dependente ou independente?
Rolemixin Tipo não sortal, anti-rígido e relacionalmente dependente.
Phasemixin Captura fases de um não sortal (Category, Rolemixin, Mixin ou mesmo de um outro Phasemixin). Fases de Cliente: Cliente Ativo / Cliente Inativo
Diferentes Categorias de Tipos de Objetos de OntoUML: Metapropriedades Categoria de Tipo de Objeto Identidade Rigidez Dependência Relacional SORTAL Kind (<<kind>>) Provê +R - Subkind (<<subkind>>) Herda +R - Phase (<<phase>>) Herda -R - Role (<<role>>) Herda -R NON SORTAL Category (<<category>>) - +R - Phasemixin (<<phasemixin>>) - -R - Rolemixin (<<rolemixin>>) - -R Mixin (<<mixin>>) - ~R -
Versão mais atual de UFO-A Endurant Universals são classificados segundo duas taxonomias ortogonais: Natureza ontológica dos objetos Meta-propriedades dos objetos
Tipos de Objetos de UFO-A: Taxonomia quanto sua Natureza Ontológica Quanto à natureza ontológica, Endurant Universals são categorizados em: Substantial Universals: tipos existencialmente independentes Moment Universals: tipos existencialmente dependentes (propriedades).
Categorias de Tipos de Objetos Functional Complex: tipos que representam complexos funcionais. São compostos de partes que desempenham diferentes funções no contexto de um todo. Ex.: Pessoa, Carro etc. component-of: tipo da relação que se dá entre um complexo funcional e suas partes. Ex.: Pessoa e Coração.
Categorias de Tipos de Objetos Quantity: tipos que representam quantidades. Ex.: Ouro, Areia, Água etc. São compostos de partes que são outras quantidades. sub-quantity-of: tipo de relação que se dá entre uma quantity e suas partes. Ex.: Vinho e Álcool.
Categorias de Tipos de Objetos Collective: tipos que representam coletivos, i.e. coleções de outros tipos com estrutura uniforme. Ex.: Grupo de Pessoas, Baralho de Cartas etc. As partes de um coletivo são seus membros. member-of: tipo de relação que se dá entre os membros (parte) e o coletivo (todo). Ex.: Jurado (papel de Pessoa) e Juri.
Categorias de Tipos de Propriedades Moments: são entidades que existem em outras entidades e, portanto, são existencialmente dependentes delas. Intrinsec Moments: são dependentes de uma única entidade. Ex.: Cor do Carro. Relators: são dependentes de várias entidades (no mínimo duas). Ex.: Casamento, Matrícula etc.
Categorias de Tipos de Propriedades Quality Universals: Intrinsec Moment Universals perceptíveis para os quais há uma quality structure associada na cognição humana. Em outras palavras, propriedades intrínsecas que têm uma estrutura de qualidade (espaço de valores) associada. Ex.: Cor, Peso.
Quality Structure
Qualia and Quality Structures c::color c v2 a a::apple w w::weight Color Quality Space 0 v1 Weight Quality Space
Quality Structures HSBColorDomain a::apple i c::color <h1,s1,b1> equivalence RGBColorDomain <r1,g1,b1>
Categorias de Tipos de Propriedades Mode Universals: Intrinsec Moment Universals para os quais não há uma quality structure associada na cognição humana. São propriedades intrínsecas que não têm uma estrutura de qualidade associada. Ex.: Crença, Desejo, Intenção. A relação formal entre um Quality / Mode Universal e o Endurant Universal que ele caracteriza é dita uma relação de caracterização (characterization).
Relações em UFO-A Toda relação tem um conjunto de objetos que são relacionados pela relação (ditos relata), os quais são os argumentos da relação. O número de argumentos de uma relação é dito sua aridade. As relações podem ser classificadas de acordo com o tipo de seus relata. Há relações entre conjuntos, entre indivíduos e entre tipos. Mas há também relações entre entidades de categorias diferentes, como relações entre indivíduos e tipos. UFO divide as relações em duas grandes categorias: relações formais e materiais.
Relações Formais Acontecem diretamente entre duas ou mais entidades, sem haver nenhum indivíduo intervindo entre eles. Ex.: instantiation, inherence, characterization, dentre outras.
Relações Materiais Têm estrutura material própria. Ex.: Funcionário é contratado por Empresa. Os relata de uma relação material são mediados por indivíduos ditos Relators. Ex.: Contratação
Relator Relators são indivíduos com o poder de conectar entidades. Ex.: Casamento, Contratação, Matrícula A relação formal que se dá entre um Relator Universal e o Endurant Universal a ele conectado é uma relação de mediação (mediation). A relação formal que se dá entre um Relator Universal e a relação material dele derivado é uma relação de derivação (derivation).
Externally Dependent Moment Propriedades externamente dependentes são propriedades individuais que são inerentes a um indivíduo, mas são existencialmente dependentes de outros indivíduos. i: inherence ed: existential dependence
Externally Dependent Moment Material Relation der: derivation Relator m: mediation
Alguns Tipos de Relações Formais em UFO-A Mediation: relação formal entre um Relator Universal e um Endurant Universal (em especial, Role e Rolemixin). Characterization: relação formal entre um Quality / Mode Universal e o Endurant Universal que ela caracteriza. Derivation: relação formal entre uma Material Relation e o Relator Universal da qual ela deriva.
Relações Parte-Todo: Ground Mereology Relação parte-todo é irreflexiva, i.e., nada é parte de si mesmo. Relação parte-todo é anti-simétrica, i.e., se X é parte de Y, então Y não pode ser parte de X. Relação parte-todo é transitiva, i.e., se X is parte de Y e Y é parte de Z, então X é parte de Z.
Ground Mereology A semântica formal apresentada anteriormente define o que é chamado de relação de ordem parcial estrita (strict partial order relation) Esses axiomas não são suficientes para diferenciar relações parte-todo de outras relações de ordem parcial, tais como maior-que, menor-que, causalidade, precedência temporal estrita. Uma teoria mais forte, chamada de Mereologia Mínima (Minimum Mereology), define algumas noções adicionais.
Suplementação Fraca A Mereologia Mínima aproveita os axiomas de ordem parcial da Ground Mereology e inclui o chamado Princípio da Suplementação Fraca (Weak Supplementation Principle). X Y?
Suplementação Fraca X Y? X Y Z Princípio da Suplementação Fraca Se Y é parte de X and se a relação parte-todo é irreflexiva, então tem de haver uma outra parte de X que é complementar a Y.
Suplementação Fraca
Pattern de Suplementação Fraca Entity 2..* {disjoint,complete} AtomicEntity ComplexEntity * AtomicEntity(x) = def y partof(y,x)
Relações Parte-Todo Há outras meta-propriedades que podem ser usadas para qualificar as relações parte-todo. Person 1 1 Heart Dependência Genérica: precisa existir uma parte Relação parte-todo mandatória Person {essential} 1 1 Brain Dependência Existencial: precisa existir uma parte específica Relação partetodo essencial Parte inseparável: a parte é existencialmente dependente do todo. Car {essential} Chassis 0..1 0..1 1 Engine 1
Habilidade de Compartilhar (Shareability) José instance of part of part of LOA NEMO instance of Rede
Relações Parte-Todo John Ricardo part of part of NEMO Busca & Semântica part of UFES Globo.com
Zed s Cérebro do Ricardo Brain part of part of Ricardo Zed part of UFES Globo.com
Tipos de Relações Parte-Todo SubQuantity-Quantity (subquantityof) Acontece entre Quantities Ex.: Álcool é parte de Vinho Sempre Transitiva SubCollective-Collective (subcollectiveof) Acontece entre Collectives Ex.: A parte brasileira da Floresta Amazônica é parte da Floresta Amazônica Sempre Transitiva
Tipos de Relações Parte - Todo Member-Collective (MemberOf) Acontece entre Substantials e Collectives Ex.: Uma pessoa é parte de (membro de) uma organização. Essa organização, por sua vez, é parte de (membro de) um comitê de padronização. Intransitivo.
Tipos de Relações Parte - Todo Component-Functional Complex (ComponentOf) Acontece entre Functional Complexes E.g.: Um Motor é componente funcional de um Carro. Um Coração é componente funcional de um Sistema Circulatório. Transitivo em alguns casos, mas não em outros.
A Linguagem OntoUML
OntoUML Extensão da UML que incorpora ao metamodelo da UML 2.0 algumas das distinções ontológicas capturas por 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.
Estereótipos de OntoUML Tipo de Objeto Functional Complex Kind Quantity Kind Collective Kind Quality Kind Mode Kind Subkind Phase Role Category Mixin Rolemixin Phasemixin Estereótipo <<kind>> <<quantity>> <<collective>> <<quality>> <<mode>> <<subkind>> <<phase>> <<role>> <<category>> <<mixin>> <<rolemixin>> <<phasemixin>>
Estereótipos de OntoUML Tipo de Relação Component-of Member-of Sub-quantity-of Sub-collection-of Characterization Mediation Material Derivation Estereótipo <<componentof>> <<memberof>> <<subquantityof>> <<subcollectionof>> <<characterization>> <<mediation>> <<material>> - (há notação específica)
Representação de Relações Todo-Parte Agregação ou Composição? Component-of, Member-of e Sub-Colection-of Partes podem ser compartilhadas: Agregação Partes não podem ser compartilhada: Composição Sub-Quantity-of Partes nunca podem ser compartilhadas. Assim, deve ser usada sempre a Composição
Referências Guizzardi, G., Ontological Foundations for Structural Conceptual Models, Universal Press, 2005. 410 p. Guizzardi, G., Fonseca, C.M., Benevides, A.B., Almeida, J.P.A., Porello, D., Sales, T.P., Endurant Types in Ontology- Driven Conceptual Modeling: Towards OntoUML 2.0, 37nd International Conference on Conceptual Modeling (ER 18), Xi an, China, 2018. Falbo, R.A., OntoUML 2.0 Quick Guide, 2018.