Your SlideShare is downloading. ×
Web Semântica: Conceitos e Tecnologias
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Web Semântica: Conceitos e Tecnologias

5,656

Published on

Web Semântica: Conceitos e Tecnologias

Web Semântica: Conceitos e Tecnologias

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
5,656
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
66
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. PIPCA - Computação Aplicada Web Semântica: Conceitos e Tecnologias João Pablo Silva da Silva (jpabloss@gmail.com) 19/05/2010
  • 2. PIPCA - Computação AplicadaRoteiro• Web Semântica • Visão Geral, Estruturas e Aplicações• Ontologias • Definição, Elementos e Engenharia• OWL • Definição e Estrutura• Consultas • Consultas DL e SPARQL20/05/2010 Web Semântica: Conceitos e Tecnologias 2
  • 3. PIPCA - Computação AplicadaVisão Geral• Extensão da Web que permite que humanos e computadores trabalhem em cooperação.• Surgiu em 2001 quando Tim Berners-Lee, James Hendler e Ora Lassila publicaram um artigo na revista Scientific American.• Tem como finalidade atribuir um significado aos conteúdos publicados na Internet de modo que seja perceptível tanto pelo humano como pelo computador.• Objetiva desenvolver tecnologias e linguagens que tornem a informação legível para as máquinas.20/05/2010 Web Semântica: Conceitos e Tecnologias 3
  • 4. PIPCA - Computação AplicadaEstrutura da Rede Semântica20/05/2010 Web Semântica: Conceitos e Tecnologias 4
  • 5. PIPCA - Computação AplicadaA Onda Semântica20/05/2010 Web Semântica: Conceitos e Tecnologias 5
  • 6. PIPCA - Computação AplicadaAplicações Web Semântica (1)• Freebase: Uma base de dados aberta, onde as pessoas criam dados e conectam esses dados entre si, onde são classificados por temas e seções.• Powerset: É um motor de busca de linguagem natural. Pode processar perguntas, por exemplo.• Twine: Aprende sobre você e os seus interesses a partir do conteúdo que você cria e compartilha, fazendo um grafo desse conteúdo.• AdaptiveBlue: Um plug-in que oferece links de acordo com o contexto da página que se está navegando.• Hakia: Apontado como um dos mais promissores motores de busca em alternativa ao Google, faz a análise de sentenças na hora de fazer uma busca.20/05/2010 Web Semântica: Conceitos e Tecnologias 6
  • 7. PIPCA - Computação AplicadaAplicações Web Semântica (2)• Talis: Plataforma para criação de aplicações semânticas na web, sendo possível criar, compartilhar e reutilizar informações nessa plataforma.• TrueKnowledge: Tenta responder as suas perguntas a partir de uma base de dados com conhecimentos e conexões.• TripIt: Organizador de viagens, sendo possível criar viagens e receber informações do flickr e wikipedia, dentre outras coisas.• ClearForest: Permite identificar pessoas, países, tecnologias, companhias, organizações, produtos e dados geográficos em um texto.• Spock: Permite buscar por pessoas e obter informações associadas a essas pessoas.20/05/2010 Web Semântica: Conceitos e Tecnologias 7
  • 8. PIPCA - Computação AplicadaRoteiro• Web Semântica • Visão Geral, Estruturas e Aplicações• Ontologias • Definição, Elementos e Engenharia• OWL • Definição e Estrutura• Consultas • Consultas DL e SPARQL20/05/2010 Web Semântica: Conceitos e Tecnologias 8
  • 9. PIPCA - Computação AplicadaDefinindo Ontologias• Especificação explicita de conceitualizações.• Define primitivas representacionais de um determinado domínio de conhecimento. • Conceitos, Atributos e Associações.• São representações formais, explicitas e compartilhadas. • Formais, pois são manipuláveis por computadores. • Explicitas, pois são uma forma de representação. • Compartilhadas, pois viabilizam a colaboração20/05/2010 Web Semântica: Conceitos e Tecnologias 9
  • 10. PIPCA - Computação AplicadaElementos de uma Ontologia (1)• Conceitos • Também chamado de classes. • São abstrações que caracterizam o que se quer representar. • Exemplo: Pessoa, Cidade, Profissão, etc.• Atributos • Também chamado de propriedades. • São características aplicáveis a um conceito. • Exemplo: Nome da Pessoa, População da Cidade, etc.20/05/2010 Web Semântica: Conceitos e Tecnologias 10
  • 11. PIPCA - Computação AplicadaElementos de uma Ontologia (2)• Associações • Também chamado de relacionamentos. • Estabelecem as relações entre os conceitos. • Exemplo: Pessoa pertence a Cidade, etc.• Indivíduos • Também chamado de instâncias. • São as ocorrências de cada conceito. • Exemplo: João, Maria, Porto Alegre, Motorista, etc.20/05/2010 Web Semântica: Conceitos e Tecnologias 11
  • 12. PIPCA - Computação AplicadaBibliotecas de Ontologias• A DAML Ontology Library mantém um legado de ontologias em DAML.• O SchemaWeb é um diretório de esquemas RDF expressos em RDFS, OWL e DAML+OIL.• O Swoogle é um diretório e mecanismo de busca para todos os recursos RDF disponíveis na Web, incluindo ontologias.• A biblioteca OntoSelect oferece um serviço similar para ontologias em RDF/S, DAML e OWL.• O Ontaria é um "diretório pesquisável e navegável de dados da web semântica", que foca em vocabulários RDF com ontologias OWL.20/05/2010 Web Semântica: Conceitos e Tecnologias 12
  • 13. PIPCA - Computação AplicadaEngenharia de Ontologias (1)Ontology Development 10120/05/2010 Web Semântica: Conceitos e Tecnologias 13
  • 14. PIPCA - Computação AplicadaEngenharia de Ontologias (2)• Determinar Domínio e Escopo, onde é definido o domínio de conhecimento que se quer representar e qual o escopo da aplicação que se deseja construir.• Considerar Reuso de Ontologias, a qual faz pensar sobre questões de reuso de ontologias já definidas.• Enumerar Termos Importantes, que leva ao levantamento de termos do domínio sem a preocupação de classificá-los como conceito ou propriedade.20/05/2010 Web Semântica: Conceitos e Tecnologias 14
  • 15. PIPCA - Computação AplicadaEngenharia de Ontologias (3)• Definir Classes e Hierarquias, onde, a partir da listagem de termos, eliminam-se redundâncias e definem-se as classes da ontologia organizadas em uma hierarquia.• Definir Propriedades de Classes, sendo definidas propriedades que complementam a descrição dos conceitos da ontologia.• Definir Restrições de Propriedades, onde são estabelecidas restrições para cada propriedade.• Criar Instâncias da Ontologia, que estabelece a criação de indivíduos para a ontologia.20/05/2010 Web Semântica: Conceitos e Tecnologias 15
  • 16. PIPCA - Computação AplicadaRoteiro• Web Semântica • Visão Geral, Estruturas e Aplicações• Ontologias • Definição, Elementos e Engenharia• OWL • Definição e Estrutura• Consultas • Consultas DL e SPARQL20/05/2010 Web Semântica: Conceitos e Tecnologias 16
  • 17. PIPCA - Computação AplicadaDefinição• OWL propõe uma linguagem padrão para descrever classes e seus relacionamentos, os quais podem ser usados por aplicações e documentos web.• Derivada das linguagens OIL e DAML+OIL.• Desenvolvida para aumentar capacidade de expressar semântica disponível em XML, RDF e RDFS.• OWL é capaz de: • formalizar um domínio de conhecimento; • definir indivíduos para um domínio de conhecimento; • inferir sobre um domínio de conhecimento.20/05/2010 Web Semântica: Conceitos e Tecnologias 17
  • 18. PIPCA - Computação AplicadaSublinguagens: OWL Lite• Suporta usuários que necessitam de uma classificação hierárquica e restrições simples.• Embora suporte restrições de cardinalidade, ela só permite valores de cardinalidade 0 ou 1.• É mais simples fornecer ferramentas que suportem OWL Lite que seus parentes mais expressivos.• Também permite um caminho de migração mais rápido de tesauros e outras taxonomias.• Tem uma menor complexidade formal que OWL DL.20/05/2010 Web Semântica: Conceitos e Tecnologias 18
  • 19. PIPCA - Computação AplicadaSublinguagens: OWL DL• Suporta usuários que querem a máxima expressividade, enquanto mantém a: • computabilidade: todas as conclusões sejam computáveis; • decidibilidade: todas as computações tem tempo finito.• Inclui todas as construções da linguagem OWL, porém elas somente podem ser usadas com algumas restrições: • embora uma classe possa ser subclasse de muitas classes, uma classe não pode ser instância de outra classe.• É assim chamada devido a sua correspondência com as lógicas de descrição.20/05/2010 Web Semântica: Conceitos e Tecnologias 19
  • 20. PIPCA - Computação AplicadaSublinguagens: OWL Full• Suporta usuários que querem a máxima expressividade e a liberdade sintática do RDF sem nenhuma garantia computacional: • em OWL Full uma classe pode ser tratada simultaneamente como uma coleção de indivíduos e como um indivíduo por si mesma.• Permite que uma ontologia aumente o vocabulário pré- definido de RDF ou OWL.• É improvável que algum software de inferência venha a ser capaz de suportar completamente cada recurso da OWL Full.20/05/2010 Web Semântica: Conceitos e Tecnologias 20
  • 21. PIPCA - Computação AplicadaRelações entre as Sublinguagens• Toda ontologia OWL Lite válida é uma ontologia OWL DL válida.• Toda ontologia OWL DL válida é uma ontologia OWL Full válida.• Toda conclusão OWL Lite válida é uma conclusão OWL DL válida.• Toda conclusão OWL DL válida é uma conclusão OWL Full válida.20/05/2010 Web Semântica: Conceitos e Tecnologias 21
  • 22. PIPCA - Computação AplicadaNamespaces• Componentes iniciais necessários indicar qual vocabulário será utilizado.• Provê a correta interpretação, desambiguação, dos termos utilizados na ontologia.20/05/2010 Web Semântica: Conceitos e Tecnologias 22
  • 23. PIPCA - Computação AplicadaCabeçalhos• Após os namespaces uma série de outras definições a respeito da ontologia podem ser feitas.• Tags de comentário, versionamento, importação, dentre outras, podem ser usadas. • Propriedades usadas como anotações também podem ser declaradas.20/05/2010 Web Semântica: Conceitos e Tecnologias 23
  • 24. PIPCA - Computação AplicadaClasses• O conceito mais básico em um domínio corresponde as classes raízes da ontologia. • Cada indivíduo em OWL pertence a classe owl:Thing. • Cada classe definida é subclasses de owl:Thing.• A tag rdf:Class nada diz sobre a classe. É apenas um identificador pode ser um número, um caractere, etc.20/05/2010 Web Semântica: Conceitos e Tecnologias 24
  • 25. PIPCA - Computação AplicadaSubclasses• Outro conceito fundamental é o de subclasses, o qual permite definir a hierarquia da taxonomia através de generalizações/especializações.• A tag rdfs:label permite dar um nome mais significativo para a classe. • Nomes podem ser dados de acordo com o idioma.20/05/2010 Web Semântica: Conceitos e Tecnologias 25
  • 26. PIPCA - Computação AplicadaIndivíduos• São instâncias das classes.20/05/2010 Web Semântica: Conceitos e Tecnologias 26
  • 27. PIPCA - Computação AplicadaPropriedades• As classes e os indivíduos não seriam interessantes se fossem definidas somente por taxonomias.• As propriedades permitem definir fatos sobre classes e indivíduos. Sendo de dois tipos: • DataType Properties: relação entre instâncias de classes e literais; • Object Properties: relação entre instâncias de duas classes.• Para restringir uma propriedade utiliza-se domain e range:20/05/2010 Web Semântica: Conceitos e Tecnologias 27
  • 28. PIPCA - Computação AplicadaHerança entre Propriedades• Diferentemente das linguagens de programação, onde os tipos são utilizados para verificar consistência, em OWL, o tipo pode ser usado para inferir.• Desta forma, pode-se inferir que “SaltonChardonnay1998” é vinho pois o domínio de <feitoDaUva> é vinho.20/05/2010 Web Semântica: Conceitos e Tecnologias 28
  • 29. PIPCA - Computação AplicadaHerança entre Propriedades• Assim como classes, propriedades podem ser organizadas hierarquicamente: • O Descritor relaciona o vinho aos seus componentes, como: gosto, suavidade, corpo e sabor. A Cor é uma sub- propriedade de Descritor.20/05/2010 Web Semântica: Conceitos e Tecnologias 29
  • 30. PIPCA - Computação AplicadaRestrições de Propriedades• É possível expandir a definição de Vinho, para indicar que um Vinho é feito de pelo menos uma uva vinífera. • Esta subclasse anônima representa o conjunto de coisas com pelo menos uma propriedade feitoDaUva.20/05/2010 Web Semântica: Conceitos e Tecnologias 30
  • 31. PIPCA - Computação AplicadaTipos de Dados• A OWL utiliza a maioria dos tipos de dados do XML Schema, como:• Exemplo:20/05/2010 Web Semântica: Conceitos e Tecnologias 31
  • 32. PIPCA - Computação AplicadaPropriedade de Indivíduo• Primeiro descreve-se os indivíduos Região e Vinícola, para então definir o vinho CabernetSauvignon.20/05/2010 Web Semântica: Conceitos e Tecnologias 32
  • 33. PIPCA - Computação AplicadaPropriedades Transitivas• P(x,y) e P(y,z) implica P(x,z).• A propriedade localizadoEm é transitiva.20/05/2010 Web Semântica: Conceitos e Tecnologias 33
  • 34. PIPCA - Computação AplicadaPropriedades Simétricas• P(x,y) iff P(y,x).• A propriedade regiaoAdjacente é simétrica.• A região do ValeDosVinhedos é adjacente à CapitalDoChampagne, e vice-versa.20/05/2010 Web Semântica: Conceitos e Tecnologias 34
  • 35. PIPCA - Computação AplicadaPropriedades Funcionais• Propriedade Funcional: P(x,y) e P(x,z) implica y = z.• temFabricante é funcional. Um vinho tem um único Fabricante, isto é, um Vinho pode ser associado apenas com um Fabricante.20/05/2010 Web Semântica: Conceitos e Tecnologias 35
  • 36. PIPCA - Computação AplicadaPropriedades Inversas• P1(x,y) iff P2(y,x).• A iff B significa que (A implica em B) e (B implica em A).• Vinhos possuem fabricantes, que na definição de Vinhos são restritos à Vinícolas. Então cada Vinícola produz um conjunto de vinhos que as identifica como fabricantes.20/05/2010 Web Semântica: Conceitos e Tecnologias 36
  • 37. PIPCA - Computação AplicadaPropriedades Inversamente Funcional• P(y,x) e P(z,x) implica que y = z.• O inverso de uma Propriedade Funcional é uma Propriedade inversamente funcional.• owl:InverseFunctional implica que os elementos do range provêm um identificador único para cada elemento do domínio.20/05/2010 Web Semântica: Conceitos e Tecnologias 37
  • 38. PIPCA - Computação AplicadaRestrições Aplicadas ao Contexto (1)• Os mecanismos vistos até o momento para restringir TIPO são globais, já que se aplicam à todas as instâncias da propriedade.• Os mecanismos allValuesFrom e someValuesFrom se aplicam somente ao contexto local onde foram definido.20/05/2010 Web Semântica: Conceitos e Tecnologias 38
  • 39. PIPCA - Computação AplicadaRestrições Aplicadas ao Contexto (2)• O fabricante do Vinho deve ser uma Vinicola. A restrição allValuesFrom aplica-se na propriedade temFabricante somente da classe Vinho. Outros fabricantes não são atingidos por esta restrição.• Se utilizar someValuesFrom, quer dizer que pelo menos uma das propriedades temFabricante deve ser uma Vinicola.20/05/2010 Web Semântica: Conceitos e Tecnologias 39
  • 40. PIPCA - Computação AplicadaCardinalidades• É possível definir um número de elementos EXATO na cardinalidade.• Um Vinho deve ter apenas 1 Ano de Fabricação.20/05/2010 Web Semântica: Conceitos e Tecnologias 40
  • 41. PIPCA - Computação AplicadahasValue• É possível definir uma classe a partir da existência de indivíduos com algumas propriedades específicas.• Um indivíduo será membro desta classe se possuir pelo menos uma de suas propriedades que satisfaça uma condição.• Aqui, é declarado que todos vinhos Tannat são secos. Isto é, sua propriedade temAcucar deve ter pelo menos um valor igual à Seco.20/05/2010 Web Semântica: Conceitos e Tecnologias 41
  • 42. PIPCA - Computação AplicadaEquivalência entre Classes e Propriedades• Utiliza-se a propriedade owl:equivalentClass para indicar que duas classes possuem a mesma instância.• Com objetivo de agrupar uma série de componentes de ontologias, como sendo parte de uma terceira ontologia, pode ser útil afirmar que uma primeira classe ou propriedade em particular é equivalente a uma segunda classe ou propriedade.20/05/2010 Web Semântica: Conceitos e Tecnologias 42
  • 43. PIPCA - Computação AplicadaEquivalência entre Classes e Propriedades• Aqui afirma-se que uma classe Vinho na ontologia Food estabelece um link com as características da ontologia Vinho, através da definição de uma classe na ontologia Food (&food;Vinho), e posteriormente declarando-a equivalente a classe vinho, da ontologia Vinho.• Da mesma forma pode-se utilizar owl:equivalentProperty para relacionar propriedades.20/05/2010 Web Semântica: Conceitos e Tecnologias 43
  • 44. PIPCA - Computação AplicadaDeclaração de Indivíduos Iguais• A utilização é parecida com a das classes, porém através deste se afirma que dois indivíduos são idênticos.• Utilizado para identificar indivíduos em diferentes documentos a um outro, com objetivo de unificar duas ontologias.• Para OWL, dois diferentes nomes não significa que eles referem-se a indivíduos diferentes.20/05/2010 Web Semântica: Conceitos e Tecnologias 44
  • 45. PIPCA - Computação AplicadaDeclaração de Indivíduos Diferentes• Utilizado para declarar que dois indivíduos são diferentes.• Utilizado para declarar que todos indivíduos são diferentes.20/05/2010 Web Semântica: Conceitos e Tecnologias 45
  • 46. PIPCA - Computação AplicadaClasses Complexas• OWL fornece construtores com os quais é possível formar classes.• Estes construtores são utilizados para criar as “class expressions”.• OWL suporta: • “set operations” • “namely union” • “intersection” • “complement”20/05/2010 Web Semântica: Conceitos e Tecnologias 46
  • 47. PIPCA - Computação AplicadaOperações: Intersecção• intersectionOf Identifica que tudo o que for vinho e branco, é uma instancia de Vinho Branco.20/05/2010 Web Semântica: Conceitos e Tecnologias 47
  • 48. PIPCA - Computação AplicadaOperações: União• unionOf utilizado para identificar que a classe Fruta inclui as extensões de FrutaDoce e as extensões de FrutaNaoDoce.20/05/2010 Web Semântica: Conceitos e Tecnologias 48
  • 49. PIPCA - Computação AplicadaOperações: Complemento• complementOf é utilizado para identificar indivíduos de um domínio que não pertencem a algumas classes.• A classes NaoAlimento inclui como seus membros todos os indivíduos que NÃO pertencem a extensão de Alimento.20/05/2010 Web Semântica: Conceitos e Tecnologias 49
  • 50. PIPCA - Computação AplicadaClasses Enumeradas• oneOf fornece meios para especificar uma classe através da enumeração direta de seus membros. O seguinte define que a classe CorDoVinho possui os membros Branco, Rose e Tinto.• Cada elemento do construtor oneOf deve ser um individuo declarado.• Um indivíduo deve pertencer a alguma classe, no exemplo acima cada indivíduo foi referenciado pelo nome.20/05/2010 Web Semântica: Conceitos e Tecnologias 50
  • 51. PIPCA - Computação AplicadaClasses Disjuntas• Definindo Fruta como sendo a união entre FrutaDoce e FrutaNaoDoce.• disjointWith parciona Fruta em duas sub-classes distintas, por elas não são conectadas.20/05/2010 Web Semântica: Conceitos e Tecnologias 51
  • 52. PIPCA - Computação AplicadaRoteiro• Web Semântica • Visão Geral, Estruturas e Aplicações• Ontologias • Definição, Elementos e Engenharia• OWL • Definição e Estrutura• Consultas • Consultas DL e SPARQL20/05/2010 Web Semântica: Conceitos e Tecnologias 52
  • 53. PIPCA - Computação AplicadaSintaxe Manchester• Sintaxe suportada pelo Protégé-OWL para realização de consultas baseadas em lógica de descrição.20/05/2010 Web Semântica: Conceitos e Tecnologias 53
  • 54. PIPCA - Computação AplicadaExemplo de Consultas DL (1)20/05/2010 Web Semântica: Conceitos e Tecnologias 54
  • 55. PIPCA - Computação AplicadaExemplo de Consultas DL (2)20/05/2010 Web Semântica: Conceitos e Tecnologias 55
  • 56. PIPCA - Computação AplicadaExemplo de Consultas DL (3)20/05/2010 Web Semântica: Conceitos e Tecnologias 56
  • 57. PIPCA - Computação AplicadaCláusulas SPARQL• Similar ao SQL e serve para realizar consultas em grafos RDF ou OWL.20/05/2010 Web Semântica: Conceitos e Tecnologias 57
  • 58. PIPCA - Computação AplicadaExemplo de Consulta SPARQL (1)20/05/2010 Web Semântica: Conceitos e Tecnologias 58
  • 59. PIPCA - Computação AplicadaExemplo de Consulta SPARQL (2)20/05/2010 Web Semântica: Conceitos e Tecnologias 59
  • 60. PIPCA - Computação AplicadaExemplo de Consulta SPARQL (3)20/05/2010 Web Semântica: Conceitos e Tecnologias 60

×