Ontologias
2
Noção de Ontologia• Ramo da filosofia que lida com a
natureza e organização da realidade.
• Ciência do ser (Aristóteles).
• Tenta responder as questões: • O que é ser ?
• Quais as características comuns a todos os seres?
• Em computação: Uma especificação formal compartilhada de uma conceituação (Gruber, 1993).
Ontologias
3
Afinal, ontologias pra quê?• Para compartilhar conhecimento
comum sobre a estrutura da informação:
• Entre pessoas
• Entre agentes de software
• Para permitir a reutilização do conhecimento sobre um domínio:
• Para evitar a “reinvenção da roda”
• Para introduzir padrões que permitam a interoperabilidade entre aplicações
Ontologias
4
Onde Aplicar Ontologias?
• Recuperação de informações,
• Bibliotecas digitais,
• Web semântica,
• Gestão de conhecimento,
• Processamento da linguagem natural,
• Comércio eletrônico,
• Sistemas multiagentes...
Ontologias
5
Exemplos de Aplicações
• (KA)2: Anotação de documentos Web
• CIA World Factbook
• OntoShare
• Semantic Web Research Community
• SWAP: Ontologias + P2P
• Gene: Bioinformática
• CVA-ON: Comunidades Virtuais
Ontologias
6
Bibliotecas Virtuais
• Ontologias para a indexação de grandes repositórios de recursos digitais.
• The WWW Virtual Library - http://vlib.org/
• Wikipedia em português -http://pt.wikipedia.org/wiki/
• Outras bibliotecas virtuais brasileiras -http://www.cg.org.br/gt/gtbv/alfabetica.htm
• Ontologias... -http://www.cs.utexas.edu/users/mfkb/related.html
Ontologias
7
Web Semântica
• Iniciativa do W3C com o objetivo de adicionar significado à Web.
• Baseada na tecnologia xml/rdf, fazendo evoluir o html da Web Sintática.
• WWW Consortium - http://www.w3.org
• Linguagens para a Web Semântica:
• RDF – http://www.w3.org/RDF/
• DAML+OIL - http://www.daml.org/
• OWL - http://www.w3.org/TR/owl-features/
Ontologias
8
DAML+OIL/OWLWeb Languages
RDF/SXML
DAML-ONT
Formal FoundationsDescription Logics
FACT, CLASSIC, DLP, …
Frame Systems
DAML+OILOWL
OIL
1. Estendem o vocabulário XML e RDF/S
2. São linguagensricas para a representação de ontologias
3. Orientadas a umaimplementaçãoeficiente
Ontologias
9
Camadas da Web Semântica• Camada de Estrutura
– Responsável por estruturar os dados e definir seu significado
• Camada de Esquema– Responsável por definir relações entre os dados– Uso de ontologias em páginas web torna mais
simples a resolução de indefinição ou conflito de terminologia
• Camada Lógica– Responsável por definir mecanismos para fazer
inferência sobre os dados– Composta por um conjunto de regras de inferência– Regras de inferência fornecem aos agentes
computacionais o poder de raciocinar sobre as estruturas de dados
Ontologias
10
Camadas da Web Semântica
Dados
Web Semântica
Engenhode Busca
Ontologia Ontologia Ontologia
Camada deEstrutura
Camada deEsquema
Regras de InferênciaCamadaLógica
… E-commerce
Ontologias
12
Desafios da Web Semânttica
• Carência de profissionais especializados,
• Evolução de culturas (html – xml/rdf),
• Padrões digitais de mídia instáveis,
• Crescimento simultâneo e continuado da Web Sintática,
• Falta de investimento adequado,
• Falta de visibilidade da área.
Ontologias
13
Perspectivas• Base para a computação móvel e
pervasiva,
• Grande disseminação prevista a médio prazo,
• Novo patamar para as interações homem-computador,
• Novos produtos e oportunidades de pesquisa,
• Aplicação em grande escala em educação e gestão de conhecimento.
Ontologias
14
Conceitos• Noção precisa de Ontologia• Elementos de uma Ontologia• Exemplos de Ontologia• Vocabulários• Glossários• Thesauri• Taxonomias• Redes Semânticas• Ontologias
Ontologias
15
Noção Precisa de Ontologia
• Especificação formal explícita formal explícita de uma conceituação compartilhada (Gruber, 1993).conceituação compartilhada (Gruber, 1993).
–– Conceituação: Conceituação: modelo das entidades, relações, axiomas e regras de algum domínio.
–– Formal:Formal:• Processável por máquina• Permitindo raciocínio automático• Com semântica lógica formal
–– Compartilhada:Compartilhada: por uma comunidade, permitindo entendimento.
• Conceitos de computação relacionados:
– Base de conhecimento reutilizável
– Esquema de banco de dados
Ontologias
16
Elementos de uma Ontologia
• Hierarquia de conceitos
– Entidades
– Relações
• Restrições
• Regras Dedutivas
• Instâncias de Conceitos
Ontologias
17
Hierarquia de Conceitos• Entidades
– Cada entidade é definida por conjunto de pares atributo-valor
– Correspondem:• às classes dos modelos orientado a objetos• às entidades do modelo relacional• aos termos do modelo lógico
• Relações– sem hierarquia x em hierarquia paralela à
hierarquia de entidades– correspondem:
• às associações, agregações e atributos dos modelos OO cujos valores são objetos
• às relações do modelo relacional• aos predicados do modelo lógico
Ontologias
18
Restrições
• Sobre valores possíveis dos atributos dos conceitos
• Correspondem:• às assinaturas de classes em modelos OO
• aos axiomas universalmente quantificados em modelos lógicos
• às restrições de integridade nos esquema de BD
Ontologias
19
Regras Dedutivas
• Sobre atributos de (conjuntos de) conceitos
• Permitem inferência automática da existência de instâncias de conceitos a partir da existência de outras instâncias
• Correspondem:– às regras dos sistemas especialistas e programação
em lógica– aos métodos dos modelos OO– às visões em BD
Ontologias
20
Instâncias de Conceitos
• Definição de entidades e relações específicas (indivíduos)
• Correspondem:
– aos fatos de sistemas especialistas e programação em lógica
– aos objetos dos modelos OO
– aos dados das BD
Ontologias
21
Tipologia das Ontologias• Especialista:: modela um domínio particular restrito
• Geral::
– modela o conhecimento de senso comum compartilhado por todos os seres humanos.
– parte de mais alto nível, reutilizável em vários domínios.
• Conceitual:: fundamentada na capacidade de raciocinar.
• Lingüística:: fundamentada no vocabulário de alguma(s) língua(s).
• De Meta-Dados:: “especializada” na descrição de recursos on-line sobre qualquer domínio
• De Tarefas e Métodos:: modela procedimentos e comportamentos abstratos no lugar de entidades ou relações
Ontologias
22
Exemplo de Ontologia Conceitual Geral: Fragmentos da Ontologia de Senso Comum de Russell e Norvig em UML
Ontologias
23
Anything
AbstractObjectsEvents
Sets Numbers RepresentationalObjects
Categories
Sentences Measurements
Intervals PlacesPhysicalObjects Processes
MomentsThings Stuff
Animals Agents
Humans
Solid Liquid Gas
Anything
AbstractObjectsEvents
Sets Numbers RepresentationalObjects
Categories
Sentences Measurements
Intervals PlacesPhysicalObjects Processes
MomentsThings Stuff
Animals Agents
Humans
Solid Liquid Gas
Anything
AbstractObjectsEvents
Sets Numbers RepresentationalObjects
Categories
Sentences Measurements
Intervals PlacesPhysicalObjects Processes
MomentsThings Stuff
Animals Agents
Humans
Solid Liquid Gas
Anything
AbstractObjectsEvents
Sets Numbers RepresentationalObjects
Categories
Sentences Measurements
Intervals PlacesPhysicalObjects Processes
MomentsThings Stuff
Animals Agents
Humans
Solid Liquid Gas
Anything
AbstractObjectsEvents
Sets Numbers RepresentationalObjects
Categories
Sentences Measurements
Intervals PlacesPhysicalObjects Processes
MomentsThings Stuff
Animals Agents
Humans
Solid Liquid Gas
Qualquer Coisa(Russel e Norvig)
Ontologias
24
Problemas de Modelagem em uma Ontologia Geral
• Categorias e conjuntos• Medidas• Objetos compostos• Tempo• Espaço• Mudanças• Eventos e processos• Objetos físicos• Substâncias• Objetos mentais e crenças
Ontologias
25
Ontologias Gerais: Categorias• Também chamadas de classes, relações, tipos ...
– Conjuntos de objetos com propriedades comuns– Organiza e simplifica a base de conhecimento.
• Exemplos de simplificação:– Gato é um mamífero - instânciação/classificação– Todo mamífero bebe leite - herança de atributos
• Taxonomia: – Tipo particular de ontologia:
• relações hierárquicas entre classe e sub-classes em forma de árvores
– Propriedades discriminantes• ex. biologia sistemática
• Relações– Disjunção– Decomposição exaustiva– Partição: decomposição exaustiva disjunta
Ontologias
26
Ontologias Genéricastambém podem representar:
• Medidas– Valores atribuídos às propriedades dos
objetos do mundo real: peso, comprimento, altura, etc...
• Objetos compostos– formados por partes que também são
objetos: relação “parte-de”.
• Mudanças com eventos– Cálculo de eventos: um fato é verdade em um
intervalo de tempo.
Ontologias
27
Medidas
• Valores atribuídos aos objetos do mundo real: servem para descrever objetos– ex. peso, comprimento, altura, diâmetro, ...
• Medidas quantitativas são fáceis de representar– ex. Tamanho(L1) = Polegadas(1,5) = Centímetros (3,81)
• Medidas qualitativas são mais complicadas – ex. beleza de um poema, dificuldade de um exercício
– O importante é ordenar:
∀e1, e2 : e1 ∈ Exercícios ∧ e2 ∈ Exercícios ∧ Elabora(João,e1) ∧Elabora(Pedro,e2) ⇒ Dificuldade(e1) < Dificuldade(e2)
Ontologias
28
Objetos Compostos
• Objetos formados por partes que também são objetos:– São caracterizados pela estrutura dos
objetos que os compõem
– Ex. massa de um carro é a soma das massas de suas partes (carroceria, motor, pneu, ...)
• Para representá-los, emprega-se a relação ParteDe:– Ex. ParteDe(motor, Carro),
ParteDe(pneu, Carro)
Ontologias
29
Objetos Compostos
• ParteDe também serve para descrever estrutura de eventos: Script ou Schema.– ex. comer no restaurante
• Quando se está interessado apenas nas características do conjunto: BunchOf– ex. peso do saco de Maçãs
– BunchOf(Maçãs) define um objeto composto formado pelas Maçãs do saco.
Ontologias
30
Representando Mudanças com Eventos• Cálculo de situações:
– Adequado quando temos um único agente realizando ações discretas e instantâneas (uma ação por situação).
– Inadequado quando:• existem vários agentes no mundo.• o mundo pode mudar espontaneamente.• mudanças ocorrem continuamente.
• Cálculo de eventos: – Versão contínua do calculo de situações– No cálculo de situações, um fato é verdade em uma situação– No cálculo de eventos, uma coisa é verdade num intervalo de tempo
• ex. SubEvento(BatalhaDaNormandia,SegundaGuerraMundial)SubEvento(SegundaGuerraMundial, SéculoXX)
Ontologias
31
Evolução das Ontologias
• Vocabulários
• Glossários
• Thesauri
• Taxonomias
• Redes Semânticas
• Ontologias
Ontologias
32
Vocabulários
• São conjuntos de termos que descrevem as entidades do e as relações entre elas.
• Há vocabulários estabelecidos para diferentes classes de domínios:– Dublin Core: http://dublincore.org/
– Vocabulários e ontologias: http://www-usr.inf.ufsm.br/~rrocha/proj/cva-on/metadados.html
Ontologias
33
Glossários
• Uma lista alfabética de termos, limitados a uma área de conhecimento especial, acompanhados das respectivas definições.
• http://www.google.com(define:glossary).
Ontologias
34
Thesauri
• Uma compilação de termos, com os respectivos sinônimos e/ou antônimos e termos relacionados empregada na indexação de bases de dados.
• Forma um vocabulário controlado para descrever os registros na base de dados.
• http://www.google.com/ (define:thesaurus).
Ontologias
35
Taxonomias
• Teoria e prática de descrever, nomear e classificar plantas e animais.
• http://www.google.com/ (define:taxonomy).
• Vocabulário controlado, usado principalmente para a criação de estruturas de navegação para um website.
• Freqüentemente baseada em um tesauro, mas pode apresentar hierarquias mais superficiais, ou ausências de alguma estrutura.
Ontologias
36
Taxonomia são antigas
Árvore de Porfirio, conforme desenho de Pedro de Espanha feito em 1329
Ontologias
37
Redes Semânticas
• Um grafo direcionado e rotulado, com nodos representando objetos físicos ou conceituais e arcos representando relações entre os objetos.
• Permite o uso de regras genéricas, herança e programação orientada a objetos.
• http://www.google.com/(define:”semantic network”).
Ontologias
38
Ontologias• É a especificação compartilhada de uma
conceituação de um domínio do conhecimento.
• É um vocabulário controlado que descreve os objetos do domínio e as relações entre eles.
• Possui uma gramática para usar os termos do vocabulário na expressão de algo significativo sobre o domínio de interesse.
• O vocabulário é empregado na construção de consultas e declarações.
• Ontologias podem incluir glossários, taxonomias e tesauros, mas normalmente apresentam maior expressividade e capacidade de inferência.
• http://www.google.com/ (define:ontology).
Ontologias
39
Roteiro• Engenharia de Ontologias• Projeto de Ontologias• Domínio e Escopo• Reutilização• Termos• Classes• Propriedades• Restrições• Instâncias
Ontologias
40
Engenharia de Ontologias
• Definir os termos do domínio e o relacionamento entre eles:– Definir os conceitos do domínio (classes)
– Organizar os conceitos em uma hierarquia(sub-classes e superclasses).
– Definir os atributos e propriedades (slots) que as classes podem apresentar e as restrições sobre seus valores.
– Definir indivíduos e os valores de seus slots
Ontologias
41
Projeto de Ontologias
• Determinar o domínio e o escopo,
• Considerar reutilização,
• Enumerar Termos,
• Definir Classes,
• Definir Propriedades,
• Definir Restrições,
• Criar Instâncias.
Ontologias
42
A ontologia é só o começo:
OntologiasOntologias
Agentesde
Software
Agentesde
SoftwareSolução
de Problemas
Soluçãode
Problemas
Aplicaçõesindependentes
Aplicaçõesindependentes
Bases de dados
Bases de dados
Declararestrutura
Bases de Conhecimento
Bases de Conhecimento
Descrição do domínio
Ontologias
44
Processo de desenvolvimento de Ontologias
• Em teoria:
determinescope
considerreuse
enumerateterms
defineclasses
defineproperties
defineconstraints
createinstances
• Na realidade, um processo interativo:determine
scopeconsider
reuseenumerate
termsdefine
classesconsider
reuseenumerate
termsdefine
classes
defineproperties
createinstances
defineclasses
defineproperties
defineconstraints
createinstances
defineclasses
considerreuse
defineproperties
defineconstraints
createinstances
Ontologias
45
Engenharia de Ontologias x Modelagem Orientada a Objetos
Uma Ontologia:
• Reflete a estrutura do mundo.
• Apresenta-se frequentemente comouma estruturação de conceitos.
• A representação físicanão é uma questão.
Uma classe da OO:
• Reflete a estrutura dos dados e código.
• É usualmente sobrecomportamento (métodos).
• Descreve a representaçãofísica dos dados: (long int, char, etc.).
Ontologias
47
Determinação do Domínio e do Escopo
• Qual o domínio a ser coberto pela ontologia?
• Para quê será usada esta ontologia?
• Para que tipo de questões a informação naontologia deve oferecer respostas?
• Respostas a estas questões podem mudarao longo do ciclo de vida da ontologia.
determinescope
considerreuse
enumerateterms
defineclasses
defineproperties
defineconstraints
createinstances
Ontologias
48
Considerações sobre a Reutilização
• Por que reutilizar outras ontologias?
– Para poupar esforços.
– Para interagir com as ferramentas queusam outras ontologias.
– Para empregar ontologias que foramvalidadas através do uso em outrasaplicações.
determinescope
considerreuse
enumerateterms
defineclasses
defineproperties
defineconstraints
createinstances
Ontologias
49
O que reutilizar (I):• Bibliotecas de Ontologias
– Protégé Ontology Library http://protege.stanford.edu/ontologies.html
– DAML ontology library http://www.daml.org/ontologies/
– Ontolingua Ontology Library http://www.ksl.stanford.edu/software/ontolingua/
• Ontologias de Senso Comum– IEEE Standard Upper Ontology
http://suo.ieee.org/
– Cyc http://www.cyc.com/
Ontologias
50
O que reutilizar (II):
• Ontologias Gerais– DMOZ http://www.dmoz.org
– WordNet http://www.cogsci.princeton.edu/~wn/
• Ontologias de Domínio– UMLS Semantic Net
– GO (Gene Ontology) http://www.geneontology.org/
– GLIF
– HL7
Ontologias
51
Identificação dos Termos Importantes
• Quais os termos sobre os quaisvamos falar?
• Quais as propriedades dessestermos?
• O que queremos dizer sobre essestermos?
considerreuse
determinescope
enumerateterms
defineclasses
defineproperties
defineconstraints
createinstances
Ontologias
52
Definição de Classes e Hierarquias de Classes
• Uma classe é um conceito do domínio.
• Representa uma coleção de elementoscom propriedades similares.
• Classes podem ser estruturadas emhierarquias, incluindo os conceitos de superclasses e subclasses.
• Os objetos do domínio são instâncias de classes.
considerreuse
determinescope
defineclasses
defineproperties
defineconstraints
createinstances
enumerateterms
Ontologias
53
Herança entre Classes
• As classes normalmente constituem umahierarquia taxonômica.
• Uma hierarquia de classes é umahierarquia É_UM.
• Uma instância de uma subclasse é umainstância de uma superclasse.
• Se a classe for pensada como um conjunto de elementos, uma subclasse é um subconjunto.
Ontologias
54
Exemplos de Herança entre Classes
• Maçã é uma subclasse de Fruta:
– Toda maçã é uma fruta.
• Vinho Tinto é uma subclasse de Vinho:
– Todo vinho tinto é um vinho.
• Chianti é uma subclasse de Vinho Tinto:
– Todo Chianti é um vinho tinto.
Ontologias
56
Formas de Desenvolvimento
• Top-down – define os conceitos maisgerais e depois os especializa.
• Bottom-up – define os conceitos maisespecíficos e então os organiza em classes mais gerais.
• Middle-out – define os conceitos maisimportantes primeiro e depois os generalizaou especializa, conforme o caso.
Ontologias
57
Documentação
• Classes (e slots) usualmente possuemdocumentação:– Descrevendo a classe em linguagem natural
– Listando hipóteses do domínio relevantes paraa definição da classe
– Listando sinônimos
• Documentar classes e seus slots é tãoimportante quanto documentar o códigode programas.
Ontologias
58
Definição das Propriedades das Classes (Slots)
• Os slots, na definição de uma classedescrevem atributos de instâncias daclasse e sua relação com outrasinstâncias
– Cada vinho possui uma cor, quantidadede açucar, produtor, distribuidor, ano de safra, etc.
considerreuse
determinescope
defineconstraints
createinstances
enumerateterms
defineclasses
defineproperties
Ontologias
59
Propriedades (Slots)
• Tipos de Propriedades:– Propriedades intrínsecas: sabor e cor de um vinho.
– Propriedades extrínsecas: nome e preço de um vinho.
– Partes: ingredientes em um prato.
– Relações com outros objetos: produtor do vinho(adega).
• Propriedades Simples e Complexas:– Propriedades simples (atributos): contém valores
primitivos (strings, números, ...).
– Propriedades complexas: contém (ou apontam para) outros objetos.
Ontologias
60
Slots e Herança de Classes
• Uma subclasse herda todos os slots da superclasse.
– Se um vinho tem um nome e um sabor, um vinhotinto também tem um nome e um sabor.
• Se uma classe tem múltiplas superclasses ela herdaos slots de todas elas.
– Vinho do porto é tanto um vinho de sobremesaquanto um vinho tinto.
– Ele herda “conteúdo de açucar: alto” da primeirasuperclasse e “cor:vermelha” da segunda.
Ontologias
61
Definição das Restrições (facetas)
• Restrições sobre Propriedades (facetas) descrevem ou limitam o conjunto de valorespossíveis para um slot.
– O nome de um vinho é um string
– O produtor do vinho é uma instância de adega
– A adega possui exatamente uma localização
considerreuse
determinescope
createinstances
enumerateterms
defineclasses
defineconstraints
defineproperties
Ontologias
62
Facetas Comuns
• Cardinalidade do Slot – o número de valores que um slot possui.
• Tipo de Valor do Slot – o tipo de valor que o slot pode apresentar.
• Valores Mínimo e Máximo – um intervalode valores para um slot numérico.
• Valor Default – o valor que um slot apresenta, a menos que explicitamenteespecificado de outra forma.
Ontologias
63
Cardinalidade do Slot
• Cardinalidade– Cardinalidade N significa que o slot deve ter N valores.
• Cardinalidade Mínima– Cardinalidade mínima 1 significa que o slot deve
apresentar pelo menos um valor (requerido)
– Cardinalidade mínima 0 significa que o valor do slot é opcional.
• Cardinalidade Máxima– Cardinalidade máxima 1 significa que o slot pode ter no
máximo um valor (slot monovalorado)
– Cardinalidade máxima maior do que 1 significa que o slot pode ter mais do que um valor (slot multivalorado)
Ontologias
64
Tipos de Valores
• String: um string de caracteres (“Château Lafite”)
• Numero: inteiro ou em ponto flutuante (15, 4.5)
• Booleano: um valor lógico verdadeiro/falso
• Tipo enumerado: uma lista de valores permitidos(alto, médio, baixo)
• Tipo complexo: uma instância de uma outra classe.
– Especificar a classe a que a instância pertence
Ontologias
65
Facetas e Herança entre Classes
• Uma subclasse herda todos os slots dasuperclasse.
• Uma subclasse pode reescrever as facetaspara restringir a lista de valores permitidos.
– Diminuir o escopo da cardinalidade
– Substituir uma classe em um determinado escopopor uma subclasse.
Ontologias
66
Criação de Instâncias
• Criar uma instância de uma classe:
– A classe se torna um tipo direto da instância.
– Qualquer superclasse do tipo direto é um tipo dainstância.
• Atribuir os valores dos slots para a instância:
– Devem estar de acordo com as restrições nas facetas
– Ferramentas de aquisição de conhecimento podem ser empregadas para esta verificação.
considerreuse
determinescope
createinstances
enumerateterms
defineclasses
defineproperties
defineconstraints
Ontologias
67
Protégé• O que é Protégé?
• Download e Instalação
• Getting Started– Criando um Projeto
– Salvando e nomeando um projeto
– Criando classes
– Criando slots
– Criando instâncias
– Criando formulários
– Criando e salvando consultas
Ontologias
68
O que é Protégé?• Protégé é um ambiente extensível e
independente de plataforma para a criação e edição de ontologias e bases de conhecimento.
• Escrito em Java, utiliza uma máquina virtual para a execução em quase qualquer plataforma.
• Permite representar classes como instâncias e valores de slots, em concordância com o protocolo da Open Knowledge Base Connectivity(OKBC) .
• Importa e exporta ontologias em diversos formatos, facilitando a reutilização e intercâmbio de ontologias.
Ontologias
69
Download e Instalação• A última versão do Protégé pode ser obtida em:
http://protege.stanford.edu/
• Um excelente FAQ pode ser encontrado em http://protege.stanford.edu/doc/faq.html
• Para o download da versão para o Windows, recomenda-se usar o instalador automático oferecido pelo site.
• A versão para Windows, incluindo a máquina virtual Java tem mais de 50MB. É um software ainda algo “pesado” e emprega diversos plugins para obter funcionalidade.
Ontologias
70
Getting Started
• Após baixar e instalar o Protégé, coloque-o em execução a partir do menu Iniciar> Programas> Protégé>
• Na janela “Welcome” que vai se abrir, use o botão “Getting Started” para obter rápido auxílio nas funcionalidades do Protégé.
• Mantenha o “Getting Started” aberto para acompanhar o desenvolvimento da sua ontologia.
• Use a FAQ e o “User Guide” sempre que necessário.
Ontologias
71
Criando o Projeto
• Selecione “Create New Project” da Janela “Welcome” ou clique no botão “New Project” se esta já estiver fechada.
• Abre-se a janela para a seleção do tipo de arquivo. Escolha “Protégé Files (pont e pins)” e clique em “Finish”.
• Aparecem os painéis “Class Browser” à esquerda e “Class Editor” à direita.
• No box “Class Hierarchy” aparecem THING e SYSTEM_CLASS
Ontologias
72
Salvando e nomeando o Projeto
• Selecione o botão “Save Project”. Use o navegador para selecionar uma pasta e dar um nome ao Projeto (pprj).
• Os arquivos de classes (pont) e de instâncias (pins) são nomeados automaticamente.
• Tecle OK. O projeto foi salvo. Confira o nome na barra da janela. Voltam o browsere o editor.
Ontologias
73
Criando Classes
• Na hierarquia de classes selecione SYSTEM_CLASS.
• Clique o botão “Create Class”. Uma nova classe é criada, como classe do sistema, e automaticamente nomeada.
• Passe para o painel “Class Editor”. Modifique ou acrescente a informação que quiser. Aproveite para criar os “Template Slots”
• Use o mesmo método para criar outras classes e subclasses.
Ontologias
74
Criando Slots
• Clique na aba “Slots”. Como anteriormente, há um painel “Slot Browser” e outro “Slot Editor”.
• Na hierarquia de slots escolha o tipo de slot apropriado (p.ex: ANNOTATED_INSTANCE).
• Passe para a janela “Slot Editor”. Faça as modificações e as entradas desejadas.
• Use o mesmo método para criar slots de cada classe.
Ontologias
75
Criando Instâncias
• Clique na aba “Instances”. Aparecem os painéis “Class Browser”, “InstanceBrowser” e “Instance Editor”.
• Escolha a classe na hierarquia de classes. Somente classes concretas podem ter instâncias.
• Clique em “Create Instance”. Edite a instância para refletir a informação desejada. Repetir para as demais instâncias.
Ontologias
76
Criando Formulários
• Na aba “Forms” é possível construir formulários para a entrada de instâncias on-line.
• Selecione a classe e o slot desejados e use o editor para configurar e posicionar a correspondente região do formulário.
Ontologias
77
Criando e Salvando Consultas
• Use a aba “Queries” para formular e salvar consultas à ontologia.
• Após a formulação e teste, a consulta pode ser salva em uma biblioteca de consultas através do botão “Add to Query Library”.
Ontologias
78
Ontologias importadas pelo Protégé
• Não deixe de consultar: http://protege.stanford.edu/download/ontologies.html.
• Qualquer uma dessas ontologias pode ser lida e editada com o Protégé.
• Outras fontes:– DAML ontology library
http://www.daml.org/ontologies/
– Ontolingua Ontology Library http://www.ksl.stanford.edu/software/ontolingua
• O Protégé tem suporte nativo para .rdfs e .owl
• Outros formatos através de plugins.
Ontologias
79
Plugins do Protégé
• O Protégé tem muitos plugins: http://protege.stanford.edu/download/plugins.html.
• Qualquer um desses plugins pode ser adicionado como uma nova funcionalidade ao Protégé.
• Entre eles recursos de compatibilidade com xml, xmls, daml+oil, visualização gráfica e muitos outros.
• O Protégé tem suporte nativo para .rdfs e .owl
Ontologias
80
Conclusões
• Ontologias revigoraram o paradigma declarativo• Materialização do nível de conhecimento• Possibilitam um modelo de comunicação expressivo e
intencional para agentes cognitivos• Área promissora, de pesquisa ativa• Aplicável principalmente em:
– Gestão de Conhecimento– Web semântica– e-commerce: muitas soluções com comunicação
baseadas em ontologias
Top Related