Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.
Ontologias e sua
utilização em aplicações
semânticas
Monday, April 14, 14
globo
.com
Renan Oliveira
renanoliveira.net
Monday, April 14, 14
Web
- suas gerações -
Monday, April 14, 14
Documentos
“A internet atual é baseada em documentos”
Tim Berners-Lee
Monday, April 14, 14
Evolução
Monday, April 14, 14
Web atual
‣ Apresentação dos conteúdos
‣ Formatação, não significado (HTML)
‣ Pouco ou nenhuma estruturação
Monday, April 1...
Multimídia
‣ Vários elementos na página
‣ Fotos, vídeos e animações
‣ Qual a relação entre eles?
‣ Quem é mencionado no te...
HTML
Monday, April 14, 14
Dados
- como organizar? -
Monday, April 14, 14
Google
60 Trilhõesde páginas indexadas no Google.
- Google Fev/2014
Monday, April 14, 14
Falta de Organização
Monday, April 14, 14
Crawler
Monday, April 14, 14
Busca por: Romário
‣ Quem é?
‣ Qual Romário?
‣ Atleta, deputado ou empresário?
Monday, April 14, 14
Busca por: Romário
Monday, April 14, 14
Busca por: Romário
Monday, April 14, 14
Busca por: Gol do Roberto Carlos
no Maracanã
‣ Quem é?
‣ Qual Roberto Carlos?
‣ O que é Gol?
Monday, April 14, 14
Busca
Monday, April 14, 14
Busca
Monday, April 14, 14
Web Semântica
- gerando informação -
Monday, April 14, 14
Web Semântica
“Interliga significados de palavras e, neste âmbito, tem
como finalidade conseguir atribuir um significado
(sen...
Sintaxe ≠ Semântica
‣ Sintaxe é como você diz algo
‣ Semântica é o que algo significa
Monday, April 14, 14
Sintaxe ≠ Semântica
Monday, April 14, 14
“Sonho”
“I have a dream for the web in which computers
become capable of analyzing all the data on the web -
the content, ...
Objetivos
‣ Organizar o conteúdo
‣ Distribuir o conteúdo
Monday, April 14, 14
Globo.com
‣ Esportes, Jornalismo, Entretenimento,Tecnologia, etc..
‣ + 2 mil novas matérias por dia
‣ + 15 milhões de usua...
Quem usa?
Monday, April 14, 14
Monday, April 14, 14
Globo.com
Monday, April 14, 14
Monday, April 14, 14
CMS
Monday, April 14, 14
Monday, April 14, 14
Monday, April 14, 14
Monday, April 14, 14
Monday, April 14, 14
globo
esporte
.com
Monday, April 14, 14
globo
esporte
.com
Monday, April 14, 14
globo
esporte
.com
Monday, April 14, 14
globo
esporte
.com
Monday, April 14, 14
globo
esporte
.com
Monday, April 14, 14
globo
esporte
.com
Monday, April 14, 14
Monday, April 14, 14
Monday, April 14, 14
Monday, April 14, 14
Monday, April 14, 14
Monday, April 14, 14
Monday, April 14, 14
Números
‣ 98% das matérias do GE e EGO são
anotadas
‣ + 8 MIL páginas de tópico
Monday, April 14, 14
Facebook
Monday, April 14, 14
OpenGraph
‣ Grafo de ações dos usuários
‣ Vocabulário definido
‣ Meta dados no HTML
‣ Inspirado no Dublin Core, RDFa, link-...
OpenGraph - HTML
Monday, April 14, 14
OpenGraph - NewsFeed
Monday, April 14, 14
OpenGraph - Debug
Monday, April 14, 14
Google
Monday, April 14, 14
Iniciativas
‣ Compra do Freebase
‣ Knowledge Graph
‣ Schema.org
Monday, April 14, 14
Freebase
‣ + 43 milhões de tópicos em RDF
‣ Grande comunidade (gestora)
‣ Uso livre
Monday, April 14, 14
Knowledge Graph
‣ Dados da CIA Factbook, Freebase e Wikipedia
‣ Em 7 línguas, incluindo o português
Monday, April 14, 14
Knowledge Graph
Monday, April 14, 14
Knowledge Graph
Monday, April 14, 14
Schema.org
‣ Vocabulário
‣ Metadados no HTML
‣ Recomendo o uso
Monday, April 14, 14
NYT
Monday, April 14, 14
Ações
‣ Anotação e indexação do conteúdo baseado em
indivíduos
‣ Ontologia pública
‣ Interligação com repositórios de dado...
Monday, April 14, 14
Monday, April 14, 14
Monday, April 14, 14
Monday, April 14, 14
Resultados
‣ Geração automatizada de tópicos
‣ Exibição estruturada dos dados em ambientes externos
Monday, April 14, 14
BBC
Monday, April 14, 14
Ações
‣ Ontologias públicas
‣ Inteligação com repositórios de dados externos
‣ Criação de categorias e agregadores úteis
‣...
Ontologias públicas e os domínios
Monday, April 14, 14
Histórias
Monday, April 14, 14
Resultados
‣ Potencialização do SEO
‣ Reuso das informações
‣ Navegação interligada e escalável
Monday, April 14, 14
Best Buy
Monday, April 14, 14
Ações
‣ Uso da ontologia GoodRelations (usado no Schema.org)
‣ Adição de metadados com RDFa
Monday, April 14, 14
GoodRelations
Monday, April 14, 14
Monday, April 14, 14
Resultados
‣ + 30% em tráfego de motores de busca
‣ +15% em taxas de cliques noYahoo!
‣ Aumento significativo no Google Pag...
Ontologias
- modelo de dados -
Monday, April 14, 14
Definição
“Uma ontologia é um modelo de dados que representa
um conjunto de conceitos dentro de um domínio e os
relacionam...
Protégé
Monday, April 14, 14
Redes Semânticas
‣ OWL e Orientação a objetos
‣ Primeiro formalismo de IA - Anos 70
‣ Gênese das linguagens de programação...
Redes Semânticas
Monday, April 14, 14
Redes Semânticas
‣ Nós representam entidades e links (predicados)
‣ Relações
‣ a-kind-of
‣ is-a
‣ has-a
‣ part-of
Monday, ...
Conhecimento Único
‣ Menor risco de duplicidade dos dados
‣ Simplificação do uso e da manutenção dos dados
‣ Agilidade na r...
Construção
‣ Identificar os indivíduos (exemplares)
‣ Descrever seus atributos
‣ Agrupar os indivíduos em classes (conceito...
Desenvolvimento
Determinar
domínio e espcopo
Considerar reuso
de ontologias
Enumerar termos
importantes
Definir classes e
h...
OWL
‣ Web Ontology Language
‣ Formaliza um domínio de conhecimento
‣ Define indivíduos (instâncias)
‣ Infere informações de...
RDF
‣ Resource description framework
‣ Modelo baseado em triplas
‣ Você já usou RDF: RSS
‣ Padrão W3C
‣ É muito próximo a ...
Triplas/RDF
Sujeito
Predicado
Objeto
Monday, April 14, 14
Triplas
sujeito predicado objeto
Neymar é um jogador
Barcelona é um time
Neymar está no elenco Barcelona
Monday, April 14,...
<Neymar>
RDF
<Barcelona> <Santos>
<Jogador> <Time>
<BarcelonaXSantos:02082013><Partida>
é umé umé um está no
elenco
é uma
...
Turtle/N3
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#...
DBPedia
‣ Dados extraídos da Wikipedia
‣ Com uma grande comunidade
Monday, April 14, 14
DBPedia
Monday, April 14, 14
DBPedia
:Neymar :nacionalidade :brasileiro
@prefix dbpedia: <http://dbpedia.org/resource>
dbpedia:Neymar dbpedia:birthPlac...
DBPedia
Pessoas 763 mil
Lugares 572 mil
Organizações 192 mil
Outros
+2.240
milhões
DBPedia em Inglês - Março/2014
Monday, ...
Linked Data
‣ Use URI para descrever coisas (things)
‣ Use HTTP URIs para pessoas e computadores
‣ Forneça informações úte...
Linked Data
‣ Use URI para descrever coisas (things)
‣ Use HTTP URIs para pessoas e computadores
‣ Forneça informações úte...
Linked Open Data
Monday, April 14, 14
LOD
‣ Uso geral
‣ DBPedia
‣ FreeBase
‣ Domínios específicos
‣ GeoNames
‣ MusicBrainz
‣ Sites com autoridades sobre o domíni...
Classes - owl:Class
‣ Conceito mais básico em um domínio
‣ Todo indivíduo pertence a classe owl:Thing
‣ Toda classe é subc...
db:Athlete rdf:type owl:Class
@prefix db: <http://dbpedia.org/ontology/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> ....
db:Athlete rdf:type owl:Class
@prefix db: <http://dbpedia.org/ontology/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> ....
Propriedades
‣ É a mágica!
‣ É como “linkamos” as coisas
‣ Pode unir URIs ou “dados”
‣ Elas tem rdfs:domain e rdfs:range
M...
Object Property
‣ Liga uma URI a outra
‣ Seja um indivíduo, uma classe ou outra propriedade
Monday, April 14, 14
db:nationalteam rdf:type owl:ObjectProperty
@prefix db: <http://dbpedia.org/ontology/> .
@prefix owl: <http://www.w3.org/2...
DataType Property
‣ Liga uma URI a um dado
‣ O dado pode ser um label, uma data, uma hora, etc.
Monday, April 14, 14
Tipos de dados
‣ xsd:string
‣ xsd:decimal
‣ xsd:long
‣ xsd:boolean
‣ xsd:float
‣ xsd:int
‣ xsd:double
‣ xsd:short
‣ xsd:byt...
db:height rdf:type owl:DatatypeProperty
@prefix db: <http://dbpedia.org/ontology/> .
@prefix owl: <http://www.w3.org/2002/...
Outros tipos de propriedades
‣ Transitivas, owl:TransitiveProperty
‣ Simétricas, owl:SymmetricProperty
‣ Funcionais, owl:F...
Se A é igual a B e B é igual a C,
logo A é igual a C.
Transitivas
:Brasil :contem :RJ
:RJ :contem :Rio
Monday, April 14, 14
Transitivas
P(x,y) e P(y,z) logo P(x,z)
:contem a owl:ObjectProperty, owl:TransitiveProperty ;
rdfs:domain :Lugar ;
rdfs:r...
Simétricas
Se A é igual a B logo B é igual a A.
:Joao :e_amigo :Maria
:Maria :e_amiga :Joao
Monday, April 14, 14
Simétricas
P(x,y) iff P(y,x)
:e_amigo a owl:ObjectProperty, owl:SymmetricProperty ;
rdfs:domain :Human ;
rdfs:range :Human...
Namoro monogâmico :)
Namora é uma relação funcional, logo Edson e
Pelé são a mesma pessoa.
Funcionais
:Xuxa :namora :Edson...
Funcionais
P(x,y) e P(x,z) implica y=z
:namora a owl:ObjectProperty, owl:FunctionalProperty ;
rdfs:domain :Human ;
rdfs:ra...
Inversas
:e_pai e :e_filho são relações inversas,
consegue navegar nas 2 direções
:Zeca :e_pai :Chico
:Chico :e_filho :Zeca...
Inversas
P1(x,y) iff P2(y,x)
:e_pai a owl:ObjectProperty;
owl:InverseOf :e_filho .
Monday, April 14, 14
Indivíduos
‣ São as instâncias de uma classe
Monday, April 14, 14
db:Neymar rdf:type db:Athlete
@prefix db: <http://dbpedia.org/ontology/> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-...
Restrições
‣ Aplicadas ao contexto
‣ allValuesFrom ou someValuesFrom
‣ Cardinalidade
Monday, April 14, 14
<owl:Restriction>
<owl:onProperty rdf:resource="#hasParent" />
<owl:allValuesFrom rdf:resource="#Human" />
</owl:Restricti...
SomeValues From
<owl:Restriction>
<owl:onProperty rdf:resource="#hasParent" />
<owl:someValuesFrom rdf:resource="#Physicia...
Cardinalidade - Max
<owl:Restriction>
<owl:onProperty rdf:resource="#hasParent" />
<owl:maxCardinality
rdf:datatype="&xsd;...
Cardinalidade - Min
<owl:Restriction>
<owl:onProperty rdf:resource="#hasParent" />
<owl:minCardinality
rdf:datatype="&xsd;...
Equivalência - owl:equivalentClass
‣ 2 ou + classes possuem os mesmo indivíduos
‣ Une ontologias, ótimo meio
Monday, April...
@prefix glb: <http://www.globo.com/> .
@prefix db: <http://dbpedia.org/ontology/> .
@prefix owl: <http://www.w3.org/2002/0...
Classes complexas
‣ Intersecção, owl:intersectioOf
‣ União, owl:unionOf
‣ Complemento, owl:complementOf
‣ Enumeradas, owl:...
Indivíduos iguais - owl:sameAs
‣ Indivíduos são iguais em ontologias diferentes
‣ URIs que representam o mesmo conceito no...
db:Neymar owl:sameAs freebase:Neymar
@prefix db: <http://dbpedia.org/ontology/> .
@prefix owl: <http://www.w3.org/2002/07/...
Indivíduos diferentes
‣ Muito usado para definir oposição
‣ Individualmente é usado o owl:differentFrom
‣ Em um conjunto é ...
:VinhoSeco owl:differentFrom :VinhoSuave
@prefix owl: <http://www.w3.org/2002/07/owl#> .
:VinhoSeco owl:differentFrom :Vin...
<owl:AllDifferent>
        <owl:distinctMembers rdf:parseType="Collection">
            <vin:WineColor rdf:about="#Red" />...
Vocabulários
‣ Dublin Core Metadata Initiative (DCMI)
‣ Friend of a Friend (FOAF)
‣ Core Ontology for Multimedia (COMM)
‣ ...
SCHEMA.ORG
‣ É uma ontologia simples de usar
‣ Coleção de esquemas, html tags
‣ Muito melhor para o SEO
‣ Cria rich snippe...
SCHEMA.ORG - Rich Snippets
Monday, April 14, 14
SCHEMA.ORG
Monday, April 14, 14
Classes
‣ Thing
‣ Action
‣ BroadcastService
‣ Class
‣ CreativeWork
‣ Event
‣ Intangible
‣ MedicalEntity
‣ Organization
‣ P...
SPARQL
- consulta em triplas -
Monday, April 14, 14
SPARQL
‣ Definido pelo W3C
‣ Consulta padrão nos maiores repositórios da WS
‣ Consulta em múltiplas ontologias e repositóri...
Estrutura da Query
# prefix declarations
PREFIX foo: <http://example.com/resources/> ...
# result clause
SELECT ...
# data...
Estrutura da Query
‣ Declaração de prefixo: abreviação das URIs
‣ Cláusula de resultado: informações que devem ser
retornad...
dbpedia.org/sparql
Monday, April 14, 14
Exemplo de consulta
Selecionar todos os predicados e objetos da classe
dbpedia:SoccerPlayer
PREFIX dbpedia: <http://dbpedi...
Resultado
Monday, April 14, 14
Exemplo de consulta
Selecionar todos indivíduos do tipo dbpedia:SoccerPlayer e
retornar com os seus nomes
PREFIX dbpedia: ...
Resultado
Monday, April 14, 14
Insert
Inserir o tipo globo:Celebridade no globo:Neymar
PREFIX globo: <http://s.globo.com>
INSERT data INTO <http://s.glob...
Delete
Excluir o tipo globo:Celebridade no globo:Neymar
PREFIX globo: <http://s.globo.com>
DELETE from <http://s.globo.com...
Personalização
- machine learning -
Monday, April 14, 14
Recapitulação
‣ Melhor SEO
‣ Conteúdo interligado de forma inteligente
‣ Unificação dos dados
‣ Páginas automatizadas
‣ Cat...
Obrigado!
renanoliveira.net
me@renanoliveira.net
Monday, April 14, 14
Referências
‣ http://www.slideshare.net/sergiocrespo/web-semntica-conceitos-e-tecnologias
‣ http://www.slideshare.net/Yaso...
Prochain SlideShare
Chargement dans…5
×

Ontologias e sua utilização em aplicações semânticas - UFF - CASI - 2014

4 916 vues

Publié le

Ontologias e sua utilização em aplicações semânticas - UFF - CASI - 2014

Uma introdução aos conceitos da web semântica, mostrando conceitos de construção de uma Ontologia, apresentando o Schema.org e mostrando cases de sucesso de tais tecnologias.

Publié dans : Ingénierie

Ontologias e sua utilização em aplicações semânticas - UFF - CASI - 2014

  1. 1. Ontologias e sua utilização em aplicações semânticas Monday, April 14, 14
  2. 2. globo .com Renan Oliveira renanoliveira.net Monday, April 14, 14
  3. 3. Web - suas gerações - Monday, April 14, 14
  4. 4. Documentos “A internet atual é baseada em documentos” Tim Berners-Lee Monday, April 14, 14
  5. 5. Evolução Monday, April 14, 14
  6. 6. Web atual ‣ Apresentação dos conteúdos ‣ Formatação, não significado (HTML) ‣ Pouco ou nenhuma estruturação Monday, April 14, 14
  7. 7. Multimídia ‣ Vários elementos na página ‣ Fotos, vídeos e animações ‣ Qual a relação entre eles? ‣ Quem é mencionado no texto? ‣ Quem, Quando, Onde... Monday, April 14, 14
  8. 8. HTML Monday, April 14, 14
  9. 9. Dados - como organizar? - Monday, April 14, 14
  10. 10. Google 60 Trilhõesde páginas indexadas no Google. - Google Fev/2014 Monday, April 14, 14
  11. 11. Falta de Organização Monday, April 14, 14
  12. 12. Crawler Monday, April 14, 14
  13. 13. Busca por: Romário ‣ Quem é? ‣ Qual Romário? ‣ Atleta, deputado ou empresário? Monday, April 14, 14
  14. 14. Busca por: Romário Monday, April 14, 14
  15. 15. Busca por: Romário Monday, April 14, 14
  16. 16. Busca por: Gol do Roberto Carlos no Maracanã ‣ Quem é? ‣ Qual Roberto Carlos? ‣ O que é Gol? Monday, April 14, 14
  17. 17. Busca Monday, April 14, 14
  18. 18. Busca Monday, April 14, 14
  19. 19. Web Semântica - gerando informação - Monday, April 14, 14
  20. 20. Web Semântica “Interliga significados de palavras e, neste âmbito, tem como finalidade conseguir atribuir um significado (sentido) aos conteúdos publicados na Internet de modo que seja perceptível tanto pelo humano como pelo computador.” Wikipedia Monday, April 14, 14
  21. 21. Sintaxe ≠ Semântica ‣ Sintaxe é como você diz algo ‣ Semântica é o que algo significa Monday, April 14, 14
  22. 22. Sintaxe ≠ Semântica Monday, April 14, 14
  23. 23. “Sonho” “I have a dream for the web in which computers become capable of analyzing all the data on the web - the content, links, and transactions between people and computers.” Tim Berners-Lee Monday, April 14, 14
  24. 24. Objetivos ‣ Organizar o conteúdo ‣ Distribuir o conteúdo Monday, April 14, 14
  25. 25. Globo.com ‣ Esportes, Jornalismo, Entretenimento,Tecnologia, etc.. ‣ + 2 mil novas matérias por dia ‣ + 15 milhões de usuarios diferentes todo dia Monday, April 14, 14
  26. 26. Quem usa? Monday, April 14, 14
  27. 27. Monday, April 14, 14
  28. 28. Globo.com Monday, April 14, 14
  29. 29. Monday, April 14, 14
  30. 30. CMS Monday, April 14, 14
  31. 31. Monday, April 14, 14
  32. 32. Monday, April 14, 14
  33. 33. Monday, April 14, 14
  34. 34. Monday, April 14, 14
  35. 35. globo esporte .com Monday, April 14, 14
  36. 36. globo esporte .com Monday, April 14, 14
  37. 37. globo esporte .com Monday, April 14, 14
  38. 38. globo esporte .com Monday, April 14, 14
  39. 39. globo esporte .com Monday, April 14, 14
  40. 40. globo esporte .com Monday, April 14, 14
  41. 41. Monday, April 14, 14
  42. 42. Monday, April 14, 14
  43. 43. Monday, April 14, 14
  44. 44. Monday, April 14, 14
  45. 45. Monday, April 14, 14
  46. 46. Monday, April 14, 14
  47. 47. Números ‣ 98% das matérias do GE e EGO são anotadas ‣ + 8 MIL páginas de tópico Monday, April 14, 14
  48. 48. Facebook Monday, April 14, 14
  49. 49. OpenGraph ‣ Grafo de ações dos usuários ‣ Vocabulário definido ‣ Meta dados no HTML ‣ Inspirado no Dublin Core, RDFa, link-rel canonical Monday, April 14, 14
  50. 50. OpenGraph - HTML Monday, April 14, 14
  51. 51. OpenGraph - NewsFeed Monday, April 14, 14
  52. 52. OpenGraph - Debug Monday, April 14, 14
  53. 53. Google Monday, April 14, 14
  54. 54. Iniciativas ‣ Compra do Freebase ‣ Knowledge Graph ‣ Schema.org Monday, April 14, 14
  55. 55. Freebase ‣ + 43 milhões de tópicos em RDF ‣ Grande comunidade (gestora) ‣ Uso livre Monday, April 14, 14
  56. 56. Knowledge Graph ‣ Dados da CIA Factbook, Freebase e Wikipedia ‣ Em 7 línguas, incluindo o português Monday, April 14, 14
  57. 57. Knowledge Graph Monday, April 14, 14
  58. 58. Knowledge Graph Monday, April 14, 14
  59. 59. Schema.org ‣ Vocabulário ‣ Metadados no HTML ‣ Recomendo o uso Monday, April 14, 14
  60. 60. NYT Monday, April 14, 14
  61. 61. Ações ‣ Anotação e indexação do conteúdo baseado em indivíduos ‣ Ontologia pública ‣ Interligação com repositórios de dados externos ‣ Usando schema.org e opengraph Monday, April 14, 14
  62. 62. Monday, April 14, 14
  63. 63. Monday, April 14, 14
  64. 64. Monday, April 14, 14
  65. 65. Monday, April 14, 14
  66. 66. Resultados ‣ Geração automatizada de tópicos ‣ Exibição estruturada dos dados em ambientes externos Monday, April 14, 14
  67. 67. BBC Monday, April 14, 14
  68. 68. Ações ‣ Ontologias públicas ‣ Inteligação com repositórios de dados externos ‣ Criação de categorias e agregadores úteis ‣ Grande embaixador da Web Semântica Monday, April 14, 14
  69. 69. Ontologias públicas e os domínios Monday, April 14, 14
  70. 70. Histórias Monday, April 14, 14
  71. 71. Resultados ‣ Potencialização do SEO ‣ Reuso das informações ‣ Navegação interligada e escalável Monday, April 14, 14
  72. 72. Best Buy Monday, April 14, 14
  73. 73. Ações ‣ Uso da ontologia GoodRelations (usado no Schema.org) ‣ Adição de metadados com RDFa Monday, April 14, 14
  74. 74. GoodRelations Monday, April 14, 14
  75. 75. Monday, April 14, 14
  76. 76. Resultados ‣ + 30% em tráfego de motores de busca ‣ +15% em taxas de cliques noYahoo! ‣ Aumento significativo no Google PageRank Monday, April 14, 14
  77. 77. Ontologias - modelo de dados - Monday, April 14, 14
  78. 78. Definição “Uma ontologia é um modelo de dados que representa um conjunto de conceitos dentro de um domínio e os relacionamentos entre eles” Wikipedia Monday, April 14, 14
  79. 79. Protégé Monday, April 14, 14
  80. 80. Redes Semânticas ‣ OWL e Orientação a objetos ‣ Primeiro formalismo de IA - Anos 70 ‣ Gênese das linguagens de programação ‣ UML representam redes semânticas Monday, April 14, 14
  81. 81. Redes Semânticas Monday, April 14, 14
  82. 82. Redes Semânticas ‣ Nós representam entidades e links (predicados) ‣ Relações ‣ a-kind-of ‣ is-a ‣ has-a ‣ part-of Monday, April 14, 14
  83. 83. Conhecimento Único ‣ Menor risco de duplicidade dos dados ‣ Simplificação do uso e da manutenção dos dados ‣ Agilidade na recuperação dos dados Monday, April 14, 14
  84. 84. Construção ‣ Identificar os indivíduos (exemplares) ‣ Descrever seus atributos ‣ Agrupar os indivíduos em classes (conceitos) ‣ Enumerar as relações entre indivíduos ‣ Definir regras sobre atributos e relações Monday, April 14, 14
  85. 85. Desenvolvimento Determinar domínio e espcopo Considerar reuso de ontologias Enumerar termos importantes Definir classes e hierarquias Definir propriedades de classes Definir restrições de propriedades Criar instâncias da ontologia Ontology Development 101 Monday, April 14, 14
  86. 86. OWL ‣ Web Ontology Language ‣ Formaliza um domínio de conhecimento ‣ Define indivíduos (instâncias) ‣ Infere informações de um DataSet Monday, April 14, 14
  87. 87. RDF ‣ Resource description framework ‣ Modelo baseado em triplas ‣ Você já usou RDF: RSS ‣ Padrão W3C ‣ É muito próximo a como escrevemos uma frase Monday, April 14, 14
  88. 88. Triplas/RDF Sujeito Predicado Objeto Monday, April 14, 14
  89. 89. Triplas sujeito predicado objeto Neymar é um jogador Barcelona é um time Neymar está no elenco Barcelona Monday, April 14, 14
  90. 90. <Neymar> RDF <Barcelona> <Santos> <Jogador> <Time> <BarcelonaXSantos:02082013><Partida> é umé umé um está no elenco é uma mandante visitante <Camp Nou> local “02/08/2013” data Monday, April 14, 14
  91. 91. Turtle/N3 @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>. @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>. @prefix foaf: <http://xmlns.com/foaf/0.1/>. @prefix dbpedia: <http://dbpedia.org/ontology> <http://semantica.globo.com/Pessoa/Neymar> rdfs:label "Neymar"; foaf:name "Neymar da Silva Santos Júnior"; dbpedia:birthDate "05/02/1992"; rdf:type dbpedia:SoccerPlayer. Monday, April 14, 14
  92. 92. DBPedia ‣ Dados extraídos da Wikipedia ‣ Com uma grande comunidade Monday, April 14, 14
  93. 93. DBPedia Monday, April 14, 14
  94. 94. DBPedia :Neymar :nacionalidade :brasileiro @prefix dbpedia: <http://dbpedia.org/resource> dbpedia:Neymar dbpedia:birthPlace dbpedia:Brazil . Monday, April 14, 14
  95. 95. DBPedia Pessoas 763 mil Lugares 572 mil Organizações 192 mil Outros +2.240 milhões DBPedia em Inglês - Março/2014 Monday, April 14, 14
  96. 96. Linked Data ‣ Use URI para descrever coisas (things) ‣ Use HTTP URIs para pessoas e computadores ‣ Forneça informações úteis, usando padrões RDF ‣ Inclua links para outras coisas relacionadas Tim Berners-Lee Monday, April 14, 14
  97. 97. Linked Data ‣ Use URI para descrever coisas (things) ‣ Use HTTP URIs para pessoas e computadores ‣ Forneça informações úteis, usando padrões RDF, SPARQL ‣ Inclua links para outras coisas relacionadas Tim Berners-Lee Monday, April 14, 14
  98. 98. Linked Open Data Monday, April 14, 14
  99. 99. LOD ‣ Uso geral ‣ DBPedia ‣ FreeBase ‣ Domínios específicos ‣ GeoNames ‣ MusicBrainz ‣ Sites com autoridades sobre o domínio Monday, April 14, 14
  100. 100. Classes - owl:Class ‣ Conceito mais básico em um domínio ‣ Todo indivíduo pertence a classe owl:Thing ‣ Toda classe é subclasse de owl:Thing Monday, April 14, 14
  101. 101. db:Athlete rdf:type owl:Class @prefix db: <http://dbpedia.org/ontology/> . @prefix owl: <http://www.w3.org/2002/07/owl#> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . db:Athlete rdf:type owl:Class . Classes - owl:Class Monday, April 14, 14
  102. 102. db:Athlete rdf:type owl:Class @prefix db: <http://dbpedia.org/ontology/> . @prefix owl: <http://www.w3.org/2002/07/owl#> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . db:Athlete a owl:Class . Classes - owl:Class Monday, April 14, 14
  103. 103. Propriedades ‣ É a mágica! ‣ É como “linkamos” as coisas ‣ Pode unir URIs ou “dados” ‣ Elas tem rdfs:domain e rdfs:range Monday, April 14, 14
  104. 104. Object Property ‣ Liga uma URI a outra ‣ Seja um indivíduo, uma classe ou outra propriedade Monday, April 14, 14
  105. 105. db:nationalteam rdf:type owl:ObjectProperty @prefix db: <http://dbpedia.org/ontology/> . @prefix owl: <http://www.w3.org/2002/07/owl#> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . db:nationalteam a owl:ObjectProperty . Object Property Monday, April 14, 14
  106. 106. DataType Property ‣ Liga uma URI a um dado ‣ O dado pode ser um label, uma data, uma hora, etc. Monday, April 14, 14
  107. 107. Tipos de dados ‣ xsd:string ‣ xsd:decimal ‣ xsd:long ‣ xsd:boolean ‣ xsd:float ‣ xsd:int ‣ xsd:double ‣ xsd:short ‣ xsd:byte ‣ xsd:nonNegativeInteger ‣ xsd:nonPositiveInteger ‣ xsd:negativeInteger ‣ xsd: positiveInteger etc... Monday, April 14, 14
  108. 108. db:height rdf:type owl:DatatypeProperty @prefix db: <http://dbpedia.org/ontology/> . @prefix owl: <http://www.w3.org/2002/07/owl#> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . db:height a owl:DatatypeProperty . DataType Property Monday, April 14, 14
  109. 109. Outros tipos de propriedades ‣ Transitivas, owl:TransitiveProperty ‣ Simétricas, owl:SymmetricProperty ‣ Funcionais, owl:FunctionalProperty ‣ Inversas, owl:InverseOf Monday, April 14, 14
  110. 110. Se A é igual a B e B é igual a C, logo A é igual a C. Transitivas :Brasil :contem :RJ :RJ :contem :Rio Monday, April 14, 14
  111. 111. Transitivas P(x,y) e P(y,z) logo P(x,z) :contem a owl:ObjectProperty, owl:TransitiveProperty ; rdfs:domain :Lugar ; rdfs:range :Lugar . Monday, April 14, 14
  112. 112. Simétricas Se A é igual a B logo B é igual a A. :Joao :e_amigo :Maria :Maria :e_amiga :Joao Monday, April 14, 14
  113. 113. Simétricas P(x,y) iff P(y,x) :e_amigo a owl:ObjectProperty, owl:SymmetricProperty ; rdfs:domain :Human ; rdfs:range :Human . Monday, April 14, 14
  114. 114. Namoro monogâmico :) Namora é uma relação funcional, logo Edson e Pelé são a mesma pessoa. Funcionais :Xuxa :namora :Edson :Xuxa :namora :Pelé Monday, April 14, 14
  115. 115. Funcionais P(x,y) e P(x,z) implica y=z :namora a owl:ObjectProperty, owl:FunctionalProperty ; rdfs:domain :Human ; rdfs:range :Human . Monday, April 14, 14
  116. 116. Inversas :e_pai e :e_filho são relações inversas, consegue navegar nas 2 direções :Zeca :e_pai :Chico :Chico :e_filho :Zeca Monday, April 14, 14
  117. 117. Inversas P1(x,y) iff P2(y,x) :e_pai a owl:ObjectProperty; owl:InverseOf :e_filho . Monday, April 14, 14
  118. 118. Indivíduos ‣ São as instâncias de uma classe Monday, April 14, 14
  119. 119. db:Neymar rdf:type db:Athlete @prefix db: <http://dbpedia.org/ontology/> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . db:Neymar a db:Athlete . Indivíduos Monday, April 14, 14
  120. 120. Restrições ‣ Aplicadas ao contexto ‣ allValuesFrom ou someValuesFrom ‣ Cardinalidade Monday, April 14, 14
  121. 121. <owl:Restriction> <owl:onProperty rdf:resource="#hasParent" /> <owl:allValuesFrom rdf:resource="#Human" /> </owl:Restriction> AllValues From Todos os Pais são instâncias da classe Humano Monday, April 14, 14
  122. 122. SomeValues From <owl:Restriction> <owl:onProperty rdf:resource="#hasParent" /> <owl:someValuesFrom rdf:resource="#Physician" /> </owl:Restriction> Para a classe Pai existir deve existir um valor hasParent(x,y), onde pelo menos um valor deY tem que ser instância de Physician Monday, April 14, 14
  123. 123. Cardinalidade - Max <owl:Restriction> <owl:onProperty rdf:resource="#hasParent" /> <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">2</ owl:maxCardinality> </owl:Restriction> Todos pessoas tem no máximo 2 pais (biológicos) Monday, April 14, 14
  124. 124. Cardinalidade - Min <owl:Restriction> <owl:onProperty rdf:resource="#hasParent" /> <owl:minCardinality rdf:datatype="&xsd;nonNegativeInteger">1</ owl:minCardinality> </owl:Restriction> Todos pessoas tem no mínimo 1 pai (biológico) Monday, April 14, 14
  125. 125. Equivalência - owl:equivalentClass ‣ 2 ou + classes possuem os mesmo indivíduos ‣ Une ontologias, ótimo meio Monday, April 14, 14
  126. 126. @prefix glb: <http://www.globo.com/> . @prefix db: <http://dbpedia.org/ontology/> . @prefix owl: <http://www.w3.org/2002/07/owl#> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . glb:Atleta owl:equivalentClass db:Athlete . Equivalência - owl:equivalentClass glb:Atleta owl:equivalentClasss db:Athlete Monday, April 14, 14
  127. 127. Classes complexas ‣ Intersecção, owl:intersectioOf ‣ União, owl:unionOf ‣ Complemento, owl:complementOf ‣ Enumeradas, owl:OneOf ‣ Disjuntas, owl:disjointWith Monday, April 14, 14
  128. 128. Indivíduos iguais - owl:sameAs ‣ Indivíduos são iguais em ontologias diferentes ‣ URIs que representam o mesmo conceito no mundo real Monday, April 14, 14
  129. 129. db:Neymar owl:sameAs freebase:Neymar @prefix db: <http://dbpedia.org/ontology/> . @prefix owl: <http://www.w3.org/2002/07/owl#> . @prefix freebase: <http://rdf.freebase.com/ns/> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . db:Neymar owl:sameAs freebase:Neymar . Indivíduos iguais - owl:sameAs Monday, April 14, 14
  130. 130. Indivíduos diferentes ‣ Muito usado para definir oposição ‣ Individualmente é usado o owl:differentFrom ‣ Em um conjunto é usado owl:distinctMembers Monday, April 14, 14
  131. 131. :VinhoSeco owl:differentFrom :VinhoSuave @prefix owl: <http://www.w3.org/2002/07/owl#> . :VinhoSeco owl:differentFrom :VinhoSuave . Indivíduos diferentes Monday, April 14, 14
  132. 132. <owl:AllDifferent>         <owl:distinctMembers rdf:parseType="Collection">             <vin:WineColor rdf:about="#Red" />             <vin:WineColor rdf:about="#White" />             <vin:WineColor rdf:about="#Rose" />         </owl:distinctMembers>     </owl:AllDifferent> Membros diferentes Monday, April 14, 14
  133. 133. Vocabulários ‣ Dublin Core Metadata Initiative (DCMI) ‣ Friend of a Friend (FOAF) ‣ Core Ontology for Multimedia (COMM) ‣ Good Relations (Best Buy) ‣ RNews (Media) Monday, April 14, 14
  134. 134. SCHEMA.ORG ‣ É uma ontologia simples de usar ‣ Coleção de esquemas, html tags ‣ Muito melhor para o SEO ‣ Cria rich snippets ‣ Aproveita de definições de outras ontologias ‣ Iniciativa: Google, Bing, Yahoo eYandex Monday, April 14, 14
  135. 135. SCHEMA.ORG - Rich Snippets Monday, April 14, 14
  136. 136. SCHEMA.ORG Monday, April 14, 14
  137. 137. Classes ‣ Thing ‣ Action ‣ BroadcastService ‣ Class ‣ CreativeWork ‣ Event ‣ Intangible ‣ MedicalEntity ‣ Organization ‣ Person ‣ Place ‣ Product ‣ Property + de 100 tipos/classes Monday, April 14, 14
  138. 138. SPARQL - consulta em triplas - Monday, April 14, 14
  139. 139. SPARQL ‣ Definido pelo W3C ‣ Consulta padrão nos maiores repositórios da WS ‣ Consulta em múltiplas ontologias e repositórios Monday, April 14, 14
  140. 140. Estrutura da Query # prefix declarations PREFIX foo: <http://example.com/resources/> ... # result clause SELECT ... # dataset definition FROM ... # query pattern WHERE { ... } # query modifiers ORDER BY ... Monday, April 14, 14
  141. 141. Estrutura da Query ‣ Declaração de prefixo: abreviação das URIs ‣ Cláusula de resultado: informações que devem ser retornadas da consulta ‣ Definição de datasets: grafos RDF que estão sendo consultados ‣ Padrão da consulta: o que consultar (matching) ‣ Modificadores de query: ordenamento e qualquer processamento a ser feito nos resultados Monday, April 14, 14
  142. 142. dbpedia.org/sparql Monday, April 14, 14
  143. 143. Exemplo de consulta Selecionar todos os predicados e objetos da classe dbpedia:SoccerPlayer PREFIX dbpedia: <http://dbpedia.org/ontology/> SELECT * FROM <http://dbpedia.org> WHERE { dbpedia:SoccerPlayer ?p ?o } LIMIT 100 Monday, April 14, 14
  144. 144. Resultado Monday, April 14, 14
  145. 145. Exemplo de consulta Selecionar todos indivíduos do tipo dbpedia:SoccerPlayer e retornar com os seus nomes PREFIX dbpedia: <http://dbpedia.org/ontology/> SELECT ?soccerPlayer ?name FROM <http://dbpedia.org> WHERE { ?soccerPlayer rdf:type dbpedia:SoccerPlayer; rdfs:label ?name. } LIMIT 100 Monday, April 14, 14
  146. 146. Resultado Monday, April 14, 14
  147. 147. Insert Inserir o tipo globo:Celebridade no globo:Neymar PREFIX globo: <http://s.globo.com> INSERT data INTO <http://s.globo.com/> { globo:Neymar rdf:type globo:Celebridade . } Monday, April 14, 14
  148. 148. Delete Excluir o tipo globo:Celebridade no globo:Neymar PREFIX globo: <http://s.globo.com> DELETE from <http://s.globo.com/> { globo:Neymar rdf:type globo:Celebridade . } WHERE { globo:Neymar rdf:type globo:Celebridade . } Monday, April 14, 14
  149. 149. Personalização - machine learning - Monday, April 14, 14
  150. 150. Recapitulação ‣ Melhor SEO ‣ Conteúdo interligado de forma inteligente ‣ Unificação dos dados ‣ Páginas automatizadas ‣ Categorização e classificação ‣ Long Tail Monday, April 14, 14
  151. 151. Obrigado! renanoliveira.net me@renanoliveira.net Monday, April 14, 14
  152. 152. Referências ‣ http://www.slideshare.net/sergiocrespo/web-semntica-conceitos-e-tecnologias ‣ http://www.slideshare.net/Yasodara/web-semntica-uma-introduo ‣ http://www.slideshare.net/elymatos/introducao-a-web-semantica-2012439 ‣ http://www.slideshare.net/icaromedeiros/schemaorg-html-semntico-front-in-macei-2012 ‣ http://www.slideshare.net/icaromedeiros/engenharia-de-ontologias ‣ http://www.slideshare.net/renangpa/introduo-a-web-semntica-e-o-case-da-globocom ‣ http://www.ted.com/talks/tim_berners_lee_on_the_next_web Monday, April 14, 14

×