SlideShare uma empresa Scribd logo
1 de 26
Ontologias
José Carlos Ramalho
jcr@di.uminho.pt
Agenda
1. O que são?
2. No nosso contexto...
3. Como se definem, como se estruturam
4. Exemplos tradicionais
5. Quando a coisa se complica: especialização de relações, reificação
6. Exemplos do CLAV
O que são?
Aristóteles:
“A Ontologia é para Aristóteles a filosofia primeira e tem como seu principal objeto de pesquisa o ser enquanto tal,
ele propõe a ontologia como um projeto de ciência com pretensões de universalidade. O ser é tudo aquilo que
permanece com substância imutável, é tudo aquilo que fica indiferente às mudanças que ocorrem aos entes. Ente é tudo o
que é, é tudo o que existe e esse existir pode ser de diversos modos como são diversas as coisas que existem. Existem
10 categorias que classificam os entes através de suas diferenças: Substância, qualidade, quantidade, relação, ação,
tempo, lugar, posição, posse e paixão. Essas 10 categorias segundo Aristóteles permitem a completa classificação dos
entes e nenhuma delas está em todos eles.”
O que são?
No nosso contexto:
“Em Ciência da Computação, Sistemas de Informação e Ciência da Informação, uma ontologia é um modelo
de dados que representa um conjunto de conceitos dentro de um domínio e os relacionamentos entre estes.
Ontologias são utilizadas em inteligência artificial, web semântica, engenharia de software e arquitetura da
informação, como uma forma de representação de conhecimento sobre o mundo ou alguma parte deste.
Ontologias geralmente descrevem:
● Indivíduos: os objetos básicos;
● Classes: conjuntos, coleções ou tipos de objetos;
● Atributos: propriedades, características ou parâmetros que os objetos podem ter e compartilhar;
● Relacionamentos: as formas como os objetos podem se relacionar com outros objetos.”
A nossa definição
“Especificação formal de conhecimento de um determinado domínio.”
Especificação Formal
“As máquinas só
entendem modelos
matemáticos muito
simples...”
Voltando ao nosso Contexto...
Ontologia = lista de triplos
Triplo = (sujeito, predicado, objeto)
Exemplo:
O meu carro é verde. --> :meuCarro :temCor “verde”
Tudo é especificado em triplos simples...
:eu :temNome “José Carlos Ramalho” .
:eu :trabalha :um .
:um a :Universidade .
:um :temDesignacao “Universidade do Minho” .
:um :temEscola :eeng .
:eeng a :Escola .
:eeng :temDesignacao “Escola de Engenharia” .
Sujeitos: :eu, :um, :eeng;
Predicados: :temNome,
:trabalha, a, :temDesignacao,
temEscola;
Objetos: “José...”, :um,
:Universidade, “Universidade
do Minho”, :eeng, :Escola,
“Escola ...”
O que podemos modelar numa Ontologia?
Praticamente tudo!...
Qual a sua importância?
● Permitem-nos partilhar conhecimento duma forma clara e sem
ambiguidades entre pessoas e/ou máquinas;
● Permitem-nos reutilizar conhecimento de um determinado domínio;
● Permitem-nos tornar explícito o conhecimento de um determinado domínio;
● Permitem-nos separar o conhecimento do domínio do conhecimento
operacional;
● Ao especificá-las estamos a analisar o seu domínio.
Metodologia para especificação de Ontologias
1. Especificar o domínio:
a. Para que é que vamos usá-la?
b. A que perguntas deve dar resposta?
c. Quem vai usá-la e mantê-la?
2. Considerar a utilização de ontologias já existentes;
3. Enumerar os termos mais importantes do domínio;
4. Definir as classes e a sua hierarquia;
5. Definir os atributos de cada classe;
6. Definir restrições sobre os atributos: vocabulários controlados;
7. Definir as relações que se podem estabelecer entre indivíduos;
8. Definir os Indivíduos.
Exemplo: CLAV- Classificação e Avaliação
da Informação Pública
1. Especificar o domínio da CLAV
● Processos da Administração Pública Portuguesa;
● Entidades da Administração Pública Portuguesa;
● Diplomas legislativos;
● Tipologias de Entidades;
● Termos de Índice;
● Prazos de Conservação Administrativa;
● Destinos Finais;
● Critérios...
● Relações entre processos, entidades, diplomas, prazos e destinos;
● Restrições/invariantes;
● etc.
2. Considerar Ontologias existentes
Especificação de Vocabulários
Controlados: Forma de Contagem do
PCA, Tipo de Participação, etc...
Necessário para criar pontes com a
Linked Open Data (LOD).
4. Definir as Classes
5. Definir os atributos de cada classe
8. Definir os Indivíduos: c300.10.005
8. Definir os Indivíduos: c300.10.005
8. Definir os Indivíduos: c300.10.005
Quando as coisas se complicam...
Exemplo:
1. Na Lista Consolidada os processos da AP estão relacionados com entidades.
2. A relação pode ser “dono” ou “participante”.
3. No caso de ser “participante” há um tipo de participação associado.
:c400.10.025 :temParticipante :ent_SEF
:c400.10.025 :título “Aquisição de nacionalidade”
Como associar ao triplo o tipo de participação?
Solução 1: especialização da relação
:c400.10.025 :temParticipanteApreciador :ent_SEF
Pode ser usada quando:
● Temos apenas um atributo adicional para a relação;
● Quando o domínio deste atributo é pequeno.
Neste caso:
TipoParticipação = [“Apreciar”, “Assessorar”, “Comunicar”, “Decidir”, “Executar”, “Iniciar”]
c400.10.025
ent_SEF
temParticipanteApreciador
Solução 2: Reificação, abstraindo a relação
:Participação a owl:Class .
:part_sef_c400.10.025 a :Participação .
:part_sef_c400.10.025 :entidade :ent_SEF .
:part_sef_c400.10.025 :processo :c400.10.025 .
:part_sef_c400.10.025 :tipo “Apreciar” .
:part_sef_c400.10.025 :posso_acrescentar_mais_props ...
Solução 2: Reificação, abstraindo a relação
:Participação a owl:Class .
:part_sef_c400.10.025 a :Participação .
:part_sef_c400.10.025 :entidade :ent_SEF .
:part_sef_c400.10.025 :processo :c400.10.025 .
:part_sef_c400.10.025 :tipo “Apreciar” .
part_sef_c400.10.025
Participação
ent_SEF c400.10.025
Apreciar
entidade
processo
tipo
Com triplos construimos teias para modelar tudo...
Classes
Relações
Propriedades
(centenas)
Indivíduos
(centenas de milhar…)
Estrutura
População
Questões?
Demonstração mais tarde...
Offline: jcr@di.uminho.pt

Mais conteúdo relacionado

Semelhante a Ontologias

Introdução à Análise de Sistemas
Introdução à Análise de SistemasIntrodução à Análise de Sistemas
Introdução à Análise de Sistemas
Nécio de Lima Veras
 
Revista de-filosofia
Revista de-filosofiaRevista de-filosofia
Revista de-filosofia
andre barbosa
 
O FAZER CIÊNCIA EM UM AMBIENTE VIRTUAL DE APRENDIZAGEM: A EMERGÊNCIA DE UM OL...
O FAZER CIÊNCIA EM UM AMBIENTE VIRTUAL DE APRENDIZAGEM: A EMERGÊNCIA DE UM OL...O FAZER CIÊNCIA EM UM AMBIENTE VIRTUAL DE APRENDIZAGEM: A EMERGÊNCIA DE UM OL...
O FAZER CIÊNCIA EM UM AMBIENTE VIRTUAL DE APRENDIZAGEM: A EMERGÊNCIA DE UM OL...
Cristiane Marcelino
 
APOO.INT- S01 Paradigma de Orientação a Objetos (2).pdf
APOO.INT- S01 Paradigma de Orientação a Objetos (2).pdfAPOO.INT- S01 Paradigma de Orientação a Objetos (2).pdf
APOO.INT- S01 Paradigma de Orientação a Objetos (2).pdf
pedrina4
 

Semelhante a Ontologias (20)

Apostila fundamentos de sistemas
Apostila  fundamentos de sistemasApostila  fundamentos de sistemas
Apostila fundamentos de sistemas
 
Lógica clássica e suas aplicações em sistema de recomendação
Lógica clássica e suas aplicações em sistema de recomendaçãoLógica clássica e suas aplicações em sistema de recomendação
Lógica clássica e suas aplicações em sistema de recomendação
 
Binder1 (9)
Binder1 (9)Binder1 (9)
Binder1 (9)
 
2013 2 direito_4_direito_civil_iii
2013 2 direito_4_direito_civil_iii2013 2 direito_4_direito_civil_iii
2013 2 direito_4_direito_civil_iii
 
Fichamento Olga Pombo
Fichamento Olga PomboFichamento Olga Pombo
Fichamento Olga Pombo
 
Paradigmas de programação
Paradigmas de programaçãoParadigmas de programação
Paradigmas de programação
 
Introdução à Análise de Sistemas
Introdução à Análise de SistemasIntrodução à Análise de Sistemas
Introdução à Análise de Sistemas
 
IES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a ObjetosIES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a Objetos
 
Plano Filosofia 10.º - 2017-2018
Plano Filosofia 10.º -  2017-2018Plano Filosofia 10.º -  2017-2018
Plano Filosofia 10.º - 2017-2018
 
unatec_oficina_elab_itens_prova_13_11_13.ppt
unatec_oficina_elab_itens_prova_13_11_13.pptunatec_oficina_elab_itens_prova_13_11_13.ppt
unatec_oficina_elab_itens_prova_13_11_13.ppt
 
Ontologias
OntologiasOntologias
Ontologias
 
1 - Introduação - Classes - Objetos.pdf
1 - Introduação - Classes - Objetos.pdf1 - Introduação - Classes - Objetos.pdf
1 - Introduação - Classes - Objetos.pdf
 
Revista de-filosofia
Revista de-filosofiaRevista de-filosofia
Revista de-filosofia
 
POO - aula 2.pptx
POO - aula 2.pptxPOO - aula 2.pptx
POO - aula 2.pptx
 
Introdução às ontologias por Gisele Dziekaniak EDUTEC FURG 2009
Introdução às ontologias por Gisele Dziekaniak EDUTEC FURG 2009Introdução às ontologias por Gisele Dziekaniak EDUTEC FURG 2009
Introdução às ontologias por Gisele Dziekaniak EDUTEC FURG 2009
 
O desafio de abrir a caixa preta nem sempre acontece abcj07
O desafio de abrir a caixa preta nem sempre acontece abcj07O desafio de abrir a caixa preta nem sempre acontece abcj07
O desafio de abrir a caixa preta nem sempre acontece abcj07
 
O FAZER CIÊNCIA EM UM AMBIENTE VIRTUAL DE APRENDIZAGEM: A EMERGÊNCIA DE UM OL...
O FAZER CIÊNCIA EM UM AMBIENTE VIRTUAL DE APRENDIZAGEM: A EMERGÊNCIA DE UM OL...O FAZER CIÊNCIA EM UM AMBIENTE VIRTUAL DE APRENDIZAGEM: A EMERGÊNCIA DE UM OL...
O FAZER CIÊNCIA EM UM AMBIENTE VIRTUAL DE APRENDIZAGEM: A EMERGÊNCIA DE UM OL...
 
APOO.INT- S01 Paradigma de Orientação a Objetos (2).pdf
APOO.INT- S01 Paradigma de Orientação a Objetos (2).pdfAPOO.INT- S01 Paradigma de Orientação a Objetos (2).pdf
APOO.INT- S01 Paradigma de Orientação a Objetos (2).pdf
 
Aula 01 introdução aoo
Aula 01   introdução aooAula 01   introdução aoo
Aula 01 introdução aoo
 
Paul churchland atitudes proposicionais
Paul churchland   atitudes proposicionaisPaul churchland   atitudes proposicionais
Paul churchland atitudes proposicionais
 

Ontologias

  • 2. Agenda 1. O que são? 2. No nosso contexto... 3. Como se definem, como se estruturam 4. Exemplos tradicionais 5. Quando a coisa se complica: especialização de relações, reificação 6. Exemplos do CLAV
  • 3. O que são? Aristóteles: “A Ontologia é para Aristóteles a filosofia primeira e tem como seu principal objeto de pesquisa o ser enquanto tal, ele propõe a ontologia como um projeto de ciência com pretensões de universalidade. O ser é tudo aquilo que permanece com substância imutável, é tudo aquilo que fica indiferente às mudanças que ocorrem aos entes. Ente é tudo o que é, é tudo o que existe e esse existir pode ser de diversos modos como são diversas as coisas que existem. Existem 10 categorias que classificam os entes através de suas diferenças: Substância, qualidade, quantidade, relação, ação, tempo, lugar, posição, posse e paixão. Essas 10 categorias segundo Aristóteles permitem a completa classificação dos entes e nenhuma delas está em todos eles.”
  • 4. O que são? No nosso contexto: “Em Ciência da Computação, Sistemas de Informação e Ciência da Informação, uma ontologia é um modelo de dados que representa um conjunto de conceitos dentro de um domínio e os relacionamentos entre estes. Ontologias são utilizadas em inteligência artificial, web semântica, engenharia de software e arquitetura da informação, como uma forma de representação de conhecimento sobre o mundo ou alguma parte deste. Ontologias geralmente descrevem: ● Indivíduos: os objetos básicos; ● Classes: conjuntos, coleções ou tipos de objetos; ● Atributos: propriedades, características ou parâmetros que os objetos podem ter e compartilhar; ● Relacionamentos: as formas como os objetos podem se relacionar com outros objetos.”
  • 5. A nossa definição “Especificação formal de conhecimento de um determinado domínio.”
  • 6. Especificação Formal “As máquinas só entendem modelos matemáticos muito simples...”
  • 7. Voltando ao nosso Contexto... Ontologia = lista de triplos Triplo = (sujeito, predicado, objeto) Exemplo: O meu carro é verde. --> :meuCarro :temCor “verde”
  • 8. Tudo é especificado em triplos simples... :eu :temNome “José Carlos Ramalho” . :eu :trabalha :um . :um a :Universidade . :um :temDesignacao “Universidade do Minho” . :um :temEscola :eeng . :eeng a :Escola . :eeng :temDesignacao “Escola de Engenharia” . Sujeitos: :eu, :um, :eeng; Predicados: :temNome, :trabalha, a, :temDesignacao, temEscola; Objetos: “José...”, :um, :Universidade, “Universidade do Minho”, :eeng, :Escola, “Escola ...”
  • 9. O que podemos modelar numa Ontologia? Praticamente tudo!...
  • 10. Qual a sua importância? ● Permitem-nos partilhar conhecimento duma forma clara e sem ambiguidades entre pessoas e/ou máquinas; ● Permitem-nos reutilizar conhecimento de um determinado domínio; ● Permitem-nos tornar explícito o conhecimento de um determinado domínio; ● Permitem-nos separar o conhecimento do domínio do conhecimento operacional; ● Ao especificá-las estamos a analisar o seu domínio.
  • 11. Metodologia para especificação de Ontologias 1. Especificar o domínio: a. Para que é que vamos usá-la? b. A que perguntas deve dar resposta? c. Quem vai usá-la e mantê-la? 2. Considerar a utilização de ontologias já existentes; 3. Enumerar os termos mais importantes do domínio; 4. Definir as classes e a sua hierarquia; 5. Definir os atributos de cada classe; 6. Definir restrições sobre os atributos: vocabulários controlados; 7. Definir as relações que se podem estabelecer entre indivíduos; 8. Definir os Indivíduos.
  • 12. Exemplo: CLAV- Classificação e Avaliação da Informação Pública
  • 13. 1. Especificar o domínio da CLAV ● Processos da Administração Pública Portuguesa; ● Entidades da Administração Pública Portuguesa; ● Diplomas legislativos; ● Tipologias de Entidades; ● Termos de Índice; ● Prazos de Conservação Administrativa; ● Destinos Finais; ● Critérios... ● Relações entre processos, entidades, diplomas, prazos e destinos; ● Restrições/invariantes; ● etc.
  • 14. 2. Considerar Ontologias existentes Especificação de Vocabulários Controlados: Forma de Contagem do PCA, Tipo de Participação, etc... Necessário para criar pontes com a Linked Open Data (LOD).
  • 15. 4. Definir as Classes
  • 16. 5. Definir os atributos de cada classe
  • 17. 8. Definir os Indivíduos: c300.10.005
  • 18. 8. Definir os Indivíduos: c300.10.005
  • 19. 8. Definir os Indivíduos: c300.10.005
  • 20. Quando as coisas se complicam... Exemplo: 1. Na Lista Consolidada os processos da AP estão relacionados com entidades. 2. A relação pode ser “dono” ou “participante”. 3. No caso de ser “participante” há um tipo de participação associado. :c400.10.025 :temParticipante :ent_SEF :c400.10.025 :título “Aquisição de nacionalidade” Como associar ao triplo o tipo de participação?
  • 21. Solução 1: especialização da relação :c400.10.025 :temParticipanteApreciador :ent_SEF Pode ser usada quando: ● Temos apenas um atributo adicional para a relação; ● Quando o domínio deste atributo é pequeno. Neste caso: TipoParticipação = [“Apreciar”, “Assessorar”, “Comunicar”, “Decidir”, “Executar”, “Iniciar”] c400.10.025 ent_SEF temParticipanteApreciador
  • 22. Solução 2: Reificação, abstraindo a relação :Participação a owl:Class . :part_sef_c400.10.025 a :Participação . :part_sef_c400.10.025 :entidade :ent_SEF . :part_sef_c400.10.025 :processo :c400.10.025 . :part_sef_c400.10.025 :tipo “Apreciar” . :part_sef_c400.10.025 :posso_acrescentar_mais_props ...
  • 23. Solução 2: Reificação, abstraindo a relação :Participação a owl:Class . :part_sef_c400.10.025 a :Participação . :part_sef_c400.10.025 :entidade :ent_SEF . :part_sef_c400.10.025 :processo :c400.10.025 . :part_sef_c400.10.025 :tipo “Apreciar” . part_sef_c400.10.025 Participação ent_SEF c400.10.025 Apreciar entidade processo tipo
  • 24. Com triplos construimos teias para modelar tudo...