Aplicações de Ontologiastacla/Ontologias/2012/a13-400... · 2012. 11. 6. · CONJUNÇÃO DE...

Post on 01-Dec-2020

0 views 0 download

Transcript of Aplicações de Ontologiastacla/Ontologias/2012/a13-400... · 2012. 11. 6. · CONJUNÇÃO DE...

OWL-DL

Classes, Axiomas de

Fechamento e Cobertura

Tópicos Especiais em Ontologias

UTFPR/CPGEI/Prof. Tacla

2

SUMÁRIO

Conjunção (Intersecção) de classes

União de classes

Complementares

Disjuntas

Axioma de Fechamento

Axioma de Cobertura

Partição de valores

3

CONJUNÇÃO DE CLASSES

Exemplo: Pizza vegetariana e Pizza apimentada (spicy)

Condição necessária:

PizzaVegetariana

Pizza

PizzaApimentada

PizzaVegSpicy Pizza П (VegetarianPizza П SpicyPizza)

4

CONJUNÇÃO DE CLASSES

Esta Pizza ao ser classificada será inferida como subclasse

de SpicyPizza e de VegetarianPizza

5

CONJUNÇÃO DE CLASSES – OWL-DL

<owl:Class rdf:ID="SpicyAndVegetarianPizza">

<rdfs:subClassOf>

<owl:Class>

<owl:intersectionOf rdf:parseType="Collection">

<owl:Class rdf:ID="VegetarianPizza"/>

<owl:Class rdf:ID="SpicyPizza"/>

</owl:intersectionOf>

</owl:Class>

</rdfs:subClassOf>

<rdfs:subClassOf>

<owl:Class rdf:about="#Pizza"/>

</rdfs:subClassOf>

</owl:Class>

6

UNIÃO DE CLASSES

Exemplo: Pizza vegetariana OU Pizza apimentada (spicy)

Condição necessária:

PizzaVegetariana

Pizza

PizzaApimentada

PizzaVegOrSpicy Pizza П (VegetarianPizza υ SpicyPizza)

7

UNIÃO DE CLASSES

8

UNIÃO DE CLASSES

<owl:Class rdf:ID="SpicyOrVegetarianPizza">

<rdfs:subClassOf>

<owl:Class>

<owl:unionOf rdf:parseType="Collection">

<owl:Class rdf:about="#VegetarianPizza"/>

<owl:Class rdf:about="#SpicyPizza"/>

</owl:unionOf>

</owl:Class>

</rdfs:subClassOf>

<rdfs:subClassOf>

<owl:Class rdf:about="#Pizza"/>

</rdfs:subClassOf>

</owl:Class>

9

CLASSES COMPLEMENTARES

Uma classe complementar equivale à negação de outra

classe.

Exemplo: Pizza vegetariana e Pizza não vegetariana

PizzaVegetariana

Pizza

PizzaNãoVegetariana

10

CLASSES COMPLEMENTARES

Pizza vegetariana

Em DL:

vegetariana Pizza П (hasTopping.FishTopping) П (hasTopping.MeatTopping)

11

CLASSES COMPLEMENTARES

Pizza não vegetariana

Em DL:

Pizza Pizza П VegetarianPizza

12

CLASSES COMPLEMENTARES – OWL-DL

<owl:Class rdf:about="#NonVegetarianPizza">

<owl:equivalentClass>

<owl:Class>

<owl:intersectionOf rdf:parseType="Collection">

<owl:Class>

<owl:complementOf rdf:resource="#VegetarianPizza"/>

</owl:Class>

<owl:Class rdf:about="#Pizza"/>

</owl:intersectionOf>

</owl:Class>

</owl:equivalentClass>

<owl:disjointWith rdf:resource="#VegetarianPizza"/>

</owl:Class>

13

EXERCÍCIO

Adicionar à ontologia Aluno e Professor as seguintes

definições:

Classe Disciplina

Propriedades

Professor leciona Disciplina

Aluno assiste Disciplina

Professor são aqueles que lecionam ao menos uma disciplina

Alunos são aqueles que não são professores

Assumir que algo ou é aluno ou é disciplina ou é professor (não

pode ser mais de um ao mesmo tempo)

(ontologia ProfAlunoDisc.owl)

14

Classes disjuntas

Se afirmarmos que Econômico e Normal são subclasses

de Carro, não afirmamos que um carro econômico não

pode ser normal. O carro123 pode ser econômico e

normal.

Carro

Econômico Normal

É um tipo de

carro123

É instância de

Para impedir isto, econômico e normal

devem ser categorias disjuntas.

15

Classes Disjuntas

Normal

Carro

Econômico

Há carros econômicos, normais e outros carros não

categorizados. Porém um carro normal não pode ser econômico.

O inverso também é verdadeiro.

16

CLASSES DISJUNTAS

Dadas três classes disjuntas A, B e C, se a é instância de

A, então a não pode ser instância de B nem de C

(similarmente para as outras)

A intersecção entre A, B e C é vazia

Se nada for declarado, uma indivíduo pode ser instância

de mais de uma classe

17

CLASSES DISJUNTAS

Pizza

PizzaTopping

PizzaBase

Três classes disjuntas Pizza, PizzaBase e PizzaTopping são classes

mutuamente disjuntas e todas primitivas.

Thing

Em DL: Pizza PizzaBase П PizzaTopping

18

CLASSES DISJUNTAS EM OWL

<owl:Class rdf:about="#Pizza">

<rdfs:label xml:lang="en">Pizza</rdfs:label>

<owl:disjointWith>

<owl:Class rdf:about="#PizzaBase"/>

</owl:disjointWith>

<owl:disjointWith>

<owl:Class rdf:about="#PizzaTopping"/>

</owl:disjointWith>

...

as outras classes também possuem definições semelhantes quanto à

disjunção

19

SUMÁRIO

Conjunção (Intersecção) de classes

União de classes

Complementares

Disjuntas

Axioma de Fechamento

Axioma de Cobertura

Partição de valores

20

AXIOMAS DE FECHAMENTO

CLOSURE AXIOMS ou

RESTRICTION CLOSURE

AXIOMA DE FECHAMENTO

AXIOMA DE CLAUSURA

Um axioma de fechamento atua sobre uma propriedade

restringindo o conjunto imagem

21

AXIOMAS DE FECHAMENTO

MargheritaPizza:

Condições necessárias e suficientes

subclasse de NamedPizza and

hasTopping MozzarelaTopping and

hasTopping TomatoTopping and

Condições necessárias

hasBase PizzaBase (herdado de Pizza)

hasTopping deve ser restringido à Mozzarela e Tomate

22

AXIOMAS DE FECHAMENTO

MargheritaPizza:

Condições necessárias e suficientes

subclasse de NamedPizza and

hasTopping (MozzarelaTopping ⊔ TomatoTopping)

hasTopping MozzarelaTopping and

hasTopping TomatoTopping and

Condições necessárias

hasBase PizzaBase (herdado de Pizza)

A restrição com o quantificador universal

implementa o axioma de fechamento.

23

EXERCÍCIO

Suponha a classe PizzaQueijoSimples sabendo que NamedPizza é subclasse de Pizza.

MozzarelaTopping não é subclasse de FishTopping nem de MeatTopping

O que deve ser modificado para transformá-la em subclasse de vegetariana?

Condições necessárias

vegetariana PizzaQueijoSimples

24

AXIOMA DE COBERTURA

COVERING AXIOM

Define uma partição sobre uma classe

É uma decomposição exaustiva com classes disjuntas

Para obrigar que indivíduos de uma classe sejam

obrigatoriamente indivíduos de uma suas subclasses

25

Axioma de Cobertura: Decomposição Exaustiva

Normal

Carro

Econômico

Há somente carros econômicos e normais. Porém há carros que

podem pertencer as duas categorais ao mesmo tempo. Ou seja,

não foi eliminada uma possível interseção entre as classes.

26

Partição

Normal

Carro

Econômico

Há somente carros econômicos e normais. Nenhum carro pode ser

econômico e normal ao mesmo tempo.

27

AXIOMA DE COBERTURA - exemplo

28

AXIOMA DE COBERTURA - exemplo

1. Define-se uma superclasse que conterá os valores possíveis

Class: Tempero

EquivalentTo:

Picante

or Media

or NaoPicante

SubClassOf:

ValorDaParticao

Tempero ≡ ValorDaParticao ⊓ (Picante ⊔ Media ⊔ NaoPicante)

29

AXIOMA DE COBERTURA - exemplo

2. As subclasses de Tempero devem ser disjuntas entre si.

Class: Media

SubClassOf:

Tempero

DisjointWith:

Picante, NaoPicante

Media ⊑ Tempero ⊓ Dis(Picante) ⊓ Dis(NaoPicante)

30

FECHAMENTO X COBERTURA

axioma de fechamento restringe os

valores possíveis de uma propriedade,

axioma de cobertura restringe a relação

classe-subclasse implicitamente definida

quando montamos uma hierarquia num

mundo aberto (OWR).

31

EXERCÍCIO

Definir as classes torcedor e times de Curitiba

Definir uma propriedade torcerPara tal que um torcedor

ou é Paraná, Coritiba ou Atlético (que são mutuamente

exclusivos)

32

CLASSES ANÔNIMAS

SpicyPizza:

Condições necessárias e suficientes

Pizza

hasTopping (PizzaTopping ( hasSpiciness Hot))

Condições necessárias

hasBase PizzaBase (herdado de Pizza)

Pizzas que tem ao menos um topping que é ao mesmo tempo

PizzaTopping e Hot

33

CLASSES ANÔNIMAS

Pizza

PizzaToppings

SpicinessValuePartition

Hot

Medium

Mild

hasTopping

hasSpiciness