Rio de Janeiro, 5 de julho de 2013
Leonardo Souza
lsouza@amtera.com.br
Linked Data
● Conjunto de princípios, tecnologias e padrões da Web
para publicação, compartilhamento e reuso dos dados
em ...
Motivação
● Explosão de informações. Nos dias de hoje encontramos facilmente
na web dados sobre o best seller mais vendido...
Histórico
● “Habemus Web”, Tim Berners-Lee criou a Web of Documents
– Sistema de documentos hipertexto interligados e
aces...
Estrutura
● Estrutura facilita o reuso. Quanto mais regular e definido for o
dado, mais fácil se torna a construção de fer...
Microformatos
● Os microformatos aliviam um pouco esse problema. São
metadados embutidos no HTML para dar significado as
e...
Microformatos
● Exemplo de uso do microformato geo:
The birds roosted at
<span class="geo">
<span class="latitude">52.48</...
Web API
● Dados publicados através de serviços web normalmente são
bem estruturados. O uso do protocolo HTTP é o padrão
ut...
Web API
● A estruturação e padronização trazida pelas Web APIs são
benéficas mas demandam muito esforço de integração.
Hyperlinks
● As Web APIs trouxeram a estrutura necessária que facilita o
consumo dos dados de diferentes fontes, mas como ...
Rationale
● Documentos HTML não possuem a estrutura adequada para a
representação dos dados e seus relacionamentos;
● Os m...
Princípios Linked Data
● Proposto por Tim Berners-Lee [6]:
(1) Use URIs para dar nomes as coisas;
(2) Use HTTP URIs para q...
Super Chave Primária
● A arquitetura Linked Data reutiliza a infraestrutura da web of documents e
os recursos identificado...
Rotulando o mundo
RDF
● Dados publicados na Web devem seguir uma estrutura
padrão para permitir interoperabilidade entre as aplicações;
● Li...
Modelo de dados RDF
● O modelo RDF representa o dado como uma série de enunciados
(statements) que descrevem recursos, tip...
Vocabulários RDF
● Os vocabulários definem os conceitos e relações usados para
descrever um domínio ou área de conheciment...
RDF Schema - RDFS
● Conjunto de classes e propriedades, são elementos básicos para
construção dos vocabulários;
● RDF Sche...
Tripla RDF
● Exemplo:
– Tim Berners-Lee inventou a World Wide Web
sujeito predicado objeto
http://dbpedia.org/resource/Tim...
Grafo RDF
Linking Open Data - LOD
● Projeto W3C iniciado em 2007 com o objetivo de ligar dados de
fontes públicas e abertas;
– Wikip...
LOD Cloud - 2007
LOD Cloud - 2008
LOD Cloud - 2009
LOD Cloud - 2010
LOD Cloud - 2011
Serializações RDF
● XML
<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="h...
Tipos de triplas RDF
● Literal: Representa strings, inteiros, datas. Tipicamente usado para
descrever as propriedades de u...
Links
● Links de relacionamentos: Conectam fontes de dados distribuídas, podem
ligar com dados internos ou externos, equiv...
Links
● Links de vocabulários [10]: Descrevem os tipos de relacionamentos. Auxiliam na
integração de diferentes fontes de ...
“Dereferenciando” URIs
● Qualquer HTTP URI deve ser “dereferenciável”;
● O usuário deve obter uma representação do dado ao...
303 URIs
● Infelizmente objetos reais não podem ser enviados através do
protocolo HTTP :(
● Ao invés de responder com o ob...
Exemplo - 303 URIs
● Humano acessando http://dbpedia.org/resource/Tim_Berners-Lee
$ curl --verbose -H "Accept: text/html" ...
Exemplo - 303 URIs
● Máquina/agente acessando http://dbpedia.org/resource/Tim_Berners-Lee
$ curl --verbose -H "Accept: app...
Hash URI
$ curl --verbose -H "Accept: application/rdf+xml" -X GET "http://www.w3.org/2000/01/rdf-schema#type"
<rdf:RDF
xml...
303 x Hash
● 303 URIs
– Requer 2 requisições HTTP;
– Pode retornar apenas o documento que descreve o recurso, na
verdade a...
Hash URI
● Também é possível usar content negotiation com hash URIs;
Cool URIs
● É importante diferenciar o recurso web sendo descrito do documento web
que o descreve;
● http://www.example.co...
D2RServer
● Solução opensource para publicação de dados armazenados
em banco de dados relacional ;
● Suporte para Oracle, ...
SPARQL
● SPARQL Protocol and RDF Query Language;
● Linguagem de consulta para recuperação e manipulação dos
dados armazena...
SPARQL (Exemplo)
● Consultando total de poços por operadora:
PREFIX amtera-owl: <http://data.amtera.com.br/anp/ontology/>
...
Resultado
operadora callret-1
http://dbpedia.org/resource/Petrobras 1006
http://dbpedia.org/resource/Shell 17
http://dbped...
SPARQL (Exemplo)
● Consultando reponsável pela operadora;
● O join está sendo feito com um dataset externo, a dbpedia;
PRE...
Resultados
operadora leader
http://dbpedia.org/resource/Koch_Industries http://dbpedia.org/resource/Charles_G._Koch
http:/...
SPARQL (Exemplo)
PREFIX amtera-owl: <http://data.amtera.com.br/anp/ontology/>
PREFIX dbpprop: <http://dbpedia.org/property...
Resultados
operadora nfuncionarios
http://dbpedia.org/resource/Koch_Industries 70000
http://dbpedia.org/resource/Unocal_Co...
● Obrigado. Dúvidas?
Referências
● [1] http://en.wikipedia.org/wiki/Linked_data
● [2] http://microformats.org/
● [3] http://www.mashape.com
● [...
Palestra Introdução a Linked Data
Upcoming SlideShare
Loading in …5
×

Palestra Introdução a Linked Data

557 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
557
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
12
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Palestra Introdução a Linked Data

  1. 1. Rio de Janeiro, 5 de julho de 2013 Leonardo Souza lsouza@amtera.com.br
  2. 2. Linked Data ● Conjunto de princípios, tecnologias e padrões da Web para publicação, compartilhamento e reuso dos dados em escala.
  3. 3. Motivação ● Explosão de informações. Nos dias de hoje encontramos facilmente na web dados sobre o best seller mais vendido, previsão do tempo, ingressos para o show do fim de semana, gastos do governo, dados sobre pesquisas científicas, etc. ● Esses fatos nos remetem às seguintes questões: – Como prover o reuso desses dados? – Como descubro novos dados ou novas fontes? – Como integrar essas fontes de dados distribuídas?
  4. 4. Histórico ● “Habemus Web”, Tim Berners-Lee criou a Web of Documents – Sistema de documentos hipertexto interligados e acessados através da internet. Esses documentos podem conter textos, imagens, vídeos, recursos multimídia em geral, nos quais os usuários podem navegar através de hiperlinks. ● Deu origem a tecnologias essenciais da Web: – Uniform Resource Locator (URL) – HyperText Markup Language (HTML) – HyperText Transfer Protocol (HTTP)
  5. 5. Estrutura ● Estrutura facilita o reuso. Quanto mais regular e definido for o dado, mais fácil se torna a construção de ferramentas para processamento automático. ● A linguagem HTML foi concebida para expressar a forma como o dado é apresentado para o usuário. As aplicações precisam de muito esforço para extrair o dado estruturado. ● Muitos sites são construídos a partir de dados estruturados mas é muito difícil reconstruir a estrutura original do dado através da página HTML.
  6. 6. Microformatos ● Os microformatos aliviam um pouco esse problema. São metadados embutidos no HTML para dar significado as entidades como pessoas, organizações, eventos, etc. ● Exemplo de uso do microformato hCard <ul> <li>Leonardo Souza</li> <li>Amtera Semantic Technologies</li> <li>+552198777081</li> <li><a href="http://www.amtera.com.br">Site</a></li> </ul> <ul class=”vcard”> <li class=”fn”>Leonardo Souza</li> <li class=”org”>Amtera Semantic Technologies</li> <li class=”tel”>+552198777081</li> <li><a class=”url” href="http://www.amtera.com.br">Site</a></li> </ul>
  7. 7. Microformatos ● Exemplo de uso do microformato geo: The birds roosted at <span class="geo"> <span class="latitude">52.48</span>, <span class="longitude">-1.89</span> </span> ● Outros microformatos: adr, geo, hCalendar, hAtom, hMedia, hRecipe, hResume, etc; ● Microformatos são limitados. Em geral o vocabulário é pequeno e não expressa bem as relações entre as entidades descritas. Não são adequados para a publicação de dados em geral.
  8. 8. Web API ● Dados publicados através de serviços web normalmente são bem estruturados. O uso do protocolo HTTP é o padrão utilizado; ● Empresas como a Amazon e Facebook expõem seus dados através de serviços na web; ● Os formatos estruturados mais comuns são XML e JSON que são suportados pela grande maioria das linguagens de programação; ● Empresas como a Mashape facilitam a publicação e o acesso a uma variedade de Web APIs em um marketplace; ● Com a explosão de APIs na web o número de aplicações que integram várias fontes de dados (mashups) cresceu rapidamente (ProgrammableWeb);
  9. 9. Web API ● A estruturação e padronização trazida pelas Web APIs são benéficas mas demandam muito esforço de integração.
  10. 10. Hyperlinks ● As Web APIs trouxeram a estrutura necessária que facilita o consumo dos dados de diferentes fontes, mas como ligamos os dados de diferentes fontes? ● Documentos HTML referenciam outros documentos através do elemento anchor que possui o atributo href. Esse é um padrão da linguagem reconhecido pelos navegadores e que viabilizou a web of documents; ● As Web APIs não possuem padrões equivalentes à âncora HTML para ligar dados relacionados; ● Os identificadores disponibilizados através das Web APIs são locais e não podem ser utilizados para ligar ou prover a descoberta dos dados de forma global.
  11. 11. Rationale ● Documentos HTML não possuem a estrutura adequada para a representação dos dados e seus relacionamentos; ● Os microformatos melhoram a representação dos dados embutidos nos documentos HTML através de anotações semânticas; ● Os microformatos possuem vocabulário limitado e não representam adequadamente as relações. ● As Web APIs possuem estrutura adequada para a representação dos dados; ● As Web APIs não possuem padrões equivalentes à âncora HTML para ligar os dados relacionados e portanto não são adequadas para a publicação e compartilhamento dos dados de forma global.
  12. 12. Princípios Linked Data ● Proposto por Tim Berners-Lee [6]: (1) Use URIs para dar nomes as coisas; (2) Use HTTP URIs para que esses nomes possam ser acessados; (3) Quando uma URI é acessada, responda com dados úteis, utilizando padrões da web; (4) Inclua links para outras URIs para facilitar a descoberta de novos dados;
  13. 13. Super Chave Primária ● A arquitetura Linked Data reutiliza a infraestrutura da web of documents e os recursos identificados por uma HTTP URI podem ser pessoas, lugares, eventos, relações, propriedades, documentos, etc; ● Entidades reais e conceitos do mundo são identificados universalmente, temos uma super chave primária; ● As HTTP URIs não servem apenas como identificadores universais mas também como o meio de acessar a informação que descreve o dado identificado (dereference); ● http://dbpedia.org/resource/Tim_Berners-Lee ● O uso de HTTP URIs satisfaz os princípios 1 e 2;
  14. 14. Rotulando o mundo
  15. 15. RDF ● Dados publicados na Web devem seguir uma estrutura padrão para permitir interoperabilidade entre as aplicações; ● Linked Data utiliza o modelo RDF [9] (Resource Description Framework); ● RDF é um modelo de dados simples feito sob medida para a arquitetura Web; ● RDF é uma recomendação W3C;
  16. 16. Modelo de dados RDF ● O modelo RDF representa o dado como uma série de enunciados (statements) que descrevem recursos, tipicamente da web, na forma de sujeito-predicado-objeto; ● Esses statements são chamados de triplas RDF; ● Uma coleção de triplas RDF podem ser visualizadas como um multigrafo direcionado nomeado; ● Sujeito e predicado são sempre identificados por URIs; ● Objetos podem ou não ser identificados por URIs. ● Os predicados são representados por vocabulários que pode ser visto como o schema do dado;
  17. 17. Vocabulários RDF ● Os vocabulários definem os conceitos e relações usados para descrever um domínio ou área de conhecimento; ● Caracterizam os predicados que são usados para descrever os dados e relações no modelo RDF; ● Vocabulários podem ser complexos com milhares de termos (definições) ou bem simples com apenas dois termos; ● Vocabulários são representados pela linguagem RDF Schema.
  18. 18. RDF Schema - RDFS ● Conjunto de classes e propriedades, são elementos básicos para construção dos vocabulários; ● RDF Schema está para o RDF assim como XML Schema está para o XML; <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xml:base="http://www.animals.fake/animals#"> <rdfs:Class rdf:ID="animal" /> <rdfs:Class rdf:ID="horse"> <rdfs:subClassOf rdf:resource="#animal"/> </rdfs:Class> </rdf:RDF>
  19. 19. Tripla RDF ● Exemplo: – Tim Berners-Lee inventou a World Wide Web sujeito predicado objeto http://dbpedia.org/resource/Tim_Berners-Lee http://dbpedia.org/property/inventor http://dbpedia.org/resource/World_Wide_Web
  20. 20. Grafo RDF
  21. 21. Linking Open Data - LOD ● Projeto W3C iniciado em 2007 com o objetivo de ligar dados de fontes públicas e abertas; – Wikipedia – Wikibooks – Geonames – MusicBrainz – Wordnet – DBLP ● Interliga 295 datasets; ● 31 bilhões de triplas RDF ● 504 milhões de links RDF;
  22. 22. LOD Cloud - 2007
  23. 23. LOD Cloud - 2008
  24. 24. LOD Cloud - 2009
  25. 25. LOD Cloud - 2010
  26. 26. LOD Cloud - 2011
  27. 27. Serializações RDF ● XML <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/"> <rdf:Description rdf:about="http://www.w3.org/"> <dc:title>World Wide Web Consortium</dc:title> </rdf:Description> </rdf:RDF> @prefix dc: <http://purl.org/dc/elements/1.1/>. @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>. <http://www.w3.org/> dc:title "World Wide Web Consortium". ● Notation 3 (N3)
  28. 28. Tipos de triplas RDF ● Literal: Representa strings, inteiros, datas. Tipicamente usado para descrever as propriedades de uma entidade (sujeito); – dbpedia:Tim_Berners-Lee dbpedia-owl:birthDate "1955-06-08"^^xsd:date ; – dbpprop:placeOfBirth "London, England"@en ; ● Links: Descrevem as relações entre duas entidades. Nesse caso três URIs estão envolvidas.
  29. 29. Links ● Links de relacionamentos: Conectam fontes de dados distribuídas, podem ligar com dados internos ou externos, equivalem às âncoras HTML na arquitetura tradicional da web; <http://richard.cyganiak.de/foaf.rdf#cygri> foaf:based_near <http://ws.geonames.org/rdf?geonameId=2950159> . ● Links de identidade: Múltiplas HTTP URIs podem referenciar o mesmo objeto, entidade ou pessoa, isso é permitido e incentivado na Web of Data, assim podemos ter informações ou visões complementares sobre um mesmo recurso da web, nessa arquitetura o ponto central de falha deixa de existir; dbpedia:Tim_Berners-Lee owl:sameAs <http://www4.wiwiss.fu-berlin.de/dblp/resource/person/100007> .
  30. 30. Links ● Links de vocabulários [10]: Descrevem os tipos de relacionamentos. Auxiliam na integração de diferentes fontes de dados. Em Linked Data o esquema é a fusão da definição dos termos de diferentes vocabulários; – A publicação de novos dados deve, sempre que possível, reusar vocabulários consolidados (Foaf, Basic Geo, Gene Ontology, MeSH); – O autor da publicação é livre para criar seu próprio vocabulário, para tal, a URI do termo definido deve ser dereferenciável, e sempre que possível mapeando para vocabulários externos equivalentes (owl:sameAs, owl:equivalentProperty, owl:equivalentClass).
  31. 31. “Dereferenciando” URIs ● Qualquer HTTP URI deve ser “dereferenciável”; ● O usuário deve obter uma representação do dado ao acessar a URI através do protocolo HTTP. ● Não importa se a URI identifica um documento HTML ou um conceito, pessoa ou lugar do mundo; ● Content Negotiation [7]. Humanos obtêm documentos HTML e máquinas documentos RDF; – Accept: text/html – Accept: application/rdf+xml ● Estratégias: – 303 URI – Hash URI
  32. 32. 303 URIs ● Infelizmente objetos reais não podem ser enviados através do protocolo HTTP :( ● Ao invés de responder com o objeto real representado pela URI o servidor HTTP responde o código 303 (see other [8]) que indica a URI do documento que melhor descreve o objeto; ● O cliente faz uma segunda requisição HTTP para obter a descrição do objeto;
  33. 33. Exemplo - 303 URIs ● Humano acessando http://dbpedia.org/resource/Tim_Berners-Lee $ curl --verbose -H "Accept: text/html" -X GET "http://dbpedia.org/resource/Tim_Berners-Lee" * About to connect() to dbpedia.org port 80 (#0) * Trying 194.109.129.58... connected > GET /resource/Tim_Berners-Lee HTTP/1.1 > User-Agent: curl/7.22.0 (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3 > Host: dbpedia.org > Accept: text/html > < HTTP/1.1 303 See Other < Date: Thu, 04 Jul 2013 00:51:15 GMT < Content-Type: text/html; charset=UTF-8 < Content-Length: 0 < Connection: keep-alive < Server: Virtuoso/07.00.3203 (Linux) i686-generic-linux-glibc212-64 VDB < Accept-Ranges: bytes < Location: http://dbpedia.org/page/Tim_Berners-Lee <
  34. 34. Exemplo - 303 URIs ● Máquina/agente acessando http://dbpedia.org/resource/Tim_Berners-Lee $ curl --verbose -H "Accept: application/rdf+xml" -X GET "http://dbpedia.org/resource/Tim_Berners-Lee" * About to connect() to dbpedia.org port 80 (#0) * Trying 194.109.129.58... connected > GET /resource/Tim_Berners-Lee HTTP/1.1 > User-Agent: curl/7.22.0 (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3 > Host: dbpedia.org > Accept: application/rdf+xml > < HTTP/1.1 303 See Other < Date: Thu, 04 Jul 2013 00:56:35 GMT < Content-Type: application/rdf+xml; qs=0.95 < Content-Length: 0 < Connection: keep-alive < Server: Virtuoso/07.00.3203 (Linux) i686-generic-linux-glibc212-64 VDB < Accept-Ranges: bytes < TCN: choice < Vary: negotiate,accept < Link: <http://mementoarchive.lanl.gov/dbpedia/timegate/http://dbpedia.org/resource/Tim_Berners-Lee>; rel="timegate" < Location: http://dbpedia.org/data/Tim_Berners-Lee.xml
  35. 35. Hash URI $ curl --verbose -H "Accept: application/rdf+xml" -X GET "http://www.w3.org/2000/01/rdf-schema#type" <rdf:RDF xmlns:dc="http://purl.org/dc/elements/1.1/"> <owl:Ontology rdf:about="http://www.w3.org/2000/01/rdf-schema#" dc:title="The RDF Schema vocabulary (RDFS)"/> <rdfs:Class rdf:about="http://www.w3.org/2000/01/rdf-schema#Resource"> <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2000/01/rdf-schema#"/> <rdfs:label>Resource</rdfs:label> <rdfs:comment>The class resource, everything.</rdfs:comment> </rdfs:Class> <rdfs:Class rdf:about="http://www.w3.org/2000/01/rdf-schema#Class"> <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2000/01/rdf-schema#"/> <rdfs:label>Class</rdfs:label> <rdfs:comment>The class of classes.</rdfs:comment> <rdfs:subClassOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/> </rdfs:Class> …snip….
  36. 36. 303 x Hash ● 303 URIs – Requer 2 requisições HTTP; – Pode retornar apenas o documento que descreve o recurso, na verdade a URI retornada pode apontar para qualquer coisa. – Ideal para grandes base de dados, onde uma única descrição para todos os objetos se tornaria impeditivo; ● Hash URIs – Somente 1 requisição HTTP. – A descrição de todos os recursos que compartilham a mesma URI base são retornadas na requisição; – Ideal para bases pequenas, tipicamente descrição de vocabulários e ontologias, onde o cliente precisa da base inteira;
  37. 37. Hash URI ● Também é possível usar content negotiation com hash URIs;
  38. 38. Cool URIs ● É importante diferenciar o recurso web sendo descrito do documento web que o descreve; ● http://www.example.com/id/alice ● Identifica Alice, a pessoa ● http://www.example.com/people/alice ● Página web da Alice ● http://www.example.com/data/alice ● Documento RDF que descreve Alice <http://www.example.com/id/alice> foaf:page <http://www.example.com/people/alice>; rdfs:isDefinedBy <http://www.example.com/data/alice>; a foaf:Person; foaf:name "Alice"; foaf:mbox <mailto:alice@example.com>; ... <html xmlns="http://www.w3.org/1999/xhtml" lang="en"> <head> <title>Alice's Homepage</title> <link rel="alternate" type="application/rdf+xml" title="RDF Representation" href="http://www.example.com/data/alice" /> </head> ...
  39. 39. D2RServer ● Solução opensource para publicação de dados armazenados em banco de dados relacional ; ● Suporte para Oracle, MySQL, PostgreSQL, SQL Server, HSQLDB, Interbase/Firebird;
  40. 40. SPARQL ● SPARQL Protocol and RDF Query Language; ● Linguagem de consulta para recuperação e manipulação dos dados armazenados como RDF; ● É uma recomendação do W3C; PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?name ?email WHERE { ?person a foaf:Person. ?person foaf:name ?name. ?person foaf:mbox ?email. }
  41. 41. SPARQL (Exemplo) ● Consultando total de poços por operadora: PREFIX amtera-owl: <http://data.amtera.com.br/anp/ontology/> PREFIX dbpprop: <http://dbpedia.org/property/> PREFIX dbpedia-owl: <http://dbpedia.org/ontology/> PREFIX dbpedia: <http://dbpedia.org/resource/> SELECT ?operadora count(DISTINCT ?poco) WHERE { ?poco amtera-owl:Operadora ?operadora . ?poco amtera-owl:Bacia dbpedia:Campos_Basin . } GROUP BY ?operadora
  42. 42. Resultado operadora callret-1 http://dbpedia.org/resource/Petrobras 1006 http://dbpedia.org/resource/Shell 17 http://dbpedia.org/resource/BP 15 http://data.amtera.com.br/anp/ontology/Ogx 19 http://dbpedia.org/resource/Texaco 2 http://dbpedia.org/resource/Anadarko_Petroleum_Corporation 5 http://dbpedia.org/resource/Statoil 7 http://dbpedia.org/resource/Total_S.A. 6 http://dbpedia.org/resource/Chevron_Corporation 7 http://dbpedia.org/resource/Repsol_YPF 2 http://dbpedia.org/resource/Queiroz_Galv%C3%A3o 1 http://dbpedia.org/resource/Unocal_Corporation 2 http://dbpedia.org/resource/Hess_Corporation 1
  43. 43. SPARQL (Exemplo) ● Consultando reponsável pela operadora; ● O join está sendo feito com um dataset externo, a dbpedia; PREFIX amtera-owl: <http://data.amtera.com.br/anp/ontology/> PREFIX dbpprop: <http://dbpedia.org/property/> PREFIX dbpedia-owl: <http://dbpedia.org/ontology/> SELECT DISTINCT ?operadora ?leader WHERE { GRAPH <http://data.amtera.com.br/anp#> { ?poco amtera-owl:Operadora ?operadora . } SERVICE <http://dbpedia.org/sparql> { ?operadora dbpedia-owl:keyPerson ?leader . } }
  44. 44. Resultados operadora leader http://dbpedia.org/resource/Koch_Industries http://dbpedia.org/resource/Charles_G._Koch http://dbpedia.org/resource/Koch_Industries http://dbpedia.org/resource/David_H._Koch http://dbpedia.org/resource/Unocal_Corporation http://dbpedia.org/resource/Chairman http://dbpedia.org/resource/Unocal_Corporation http://dbpedia.org/resource/Charles_R._Williamson http://dbpedia.org/resource/BP http://dbpedia.org/resource/Bob_Dudley http://dbpedia.org/resource/BP http://dbpedia.org/resource/Carl-Henric_Svanberg http://dbpedia.org/resource/Total_S.A. http://dbpedia.org/resource/Chief_executive_officer http://dbpedia.org/resource/Total_S.A. http://dbpedia.org/resource/Chief_financial_officer http://dbpedia.org/resource/Total_S.A. http://dbpedia.org/resource/Christophe_de_Margerie http://dbpedia.org/resource/Repsol_YPF http://dbpedia.org/resource/Chief_executive_officer http://dbpedia.org/resource/Repsol_YPF http://dbpedia.org/resource/Chairman http://dbpedia.org/resource/Chevron_Corporation http://dbpedia.org/resource/John_S._Watson_(Chevron) http://dbpedia.org/resource/Queiroz_Galv%C3%A3o http://dbpedia.org/resource/Chief_executive_officer http://dbpedia.org/resource/Anadarko_Petroleum_Corporation http://dbpedia.org/resource/President http://dbpedia.org/resource/Anadarko_Petroleum_Corporation http://dbpedia.org/resource/Chairman http://dbpedia.org/resource/Eni http://dbpedia.org/resource/Paolo_Scaroni http://dbpedia.org/resource/Eni http://dbpedia.org/resource/Chairman http://dbpedia.org/resource/Petrobras http://dbpedia.org/resource/Chief_financial_officer http://dbpedia.org/resource/Petrobras http://dbpedia.org/resource/Maria_das_Gra%C3%A7as_Foster http://dbpedia.org/resource/Statoil http://dbpedia.org/resource/Helge_Lund http://dbpedia.org/resource/Statoil http://dbpedia.org/resource/Svein_Rennemo http://dbpedia.org/resource/Galp_Energia http://dbpedia.org/resource/Chief_executive_officer http://dbpedia.org/resource/Galp_Energia http://dbpedia.org/resource/Chairman
  45. 45. SPARQL (Exemplo) PREFIX amtera-owl: <http://data.amtera.com.br/anp/ontology/> PREFIX dbpprop: <http://dbpedia.org/property/> PREFIX dbpedia-owl: <http://dbpedia.org/ontology/> SELECT DISTINCT ?operadora ?num_funcionarios WHERE { GRAPH <http://data.amtera.com.br/anp#> { ?poco amtera-owl:Operadora ?operadora . } SERVICE <http://dbpedia.org/sparql> { ?operadora dbpprop:numEmployees ?num_funcionarios } } ● Consultando número de funcionários por operadora, join externo com a dbpedia;
  46. 46. Resultados operadora nfuncionarios http://dbpedia.org/resource/Koch_Industries 70000 http://dbpedia.org/resource/Unocal_Corporation 6400 http://dbpedia.org/resource/BP 79700 http://dbpedia.org/resource/Total_S.A. 92855 http://dbpedia.org/resource/Repsol_YPF 43300 http://dbpedia.org/resource/Chevron_Corporation 62000 http://dbpedia.org/resource/Queiroz_Galv%C3%A3o 30 http://dbpedia.org/resource/Anadarko_Petroleum_Corpo ration 4400 http://dbpedia.org/resource/Eni 79940 http://dbpedia.org/resource/Hess_Corporation 11610 http://dbpedia.org/resource/Petrobras 80497 http://dbpedia.org/resource/Statoil 30340 http://dbpedia.org/resource/Galp_Energia 7310 http://dbpedia.org/resource/Wintershall ~1.700
  47. 47. ● Obrigado. Dúvidas?
  48. 48. Referências ● [1] http://en.wikipedia.org/wiki/Linked_data ● [2] http://microformats.org/ ● [3] http://www.mashape.com ● [4] http://programmableweb.com ● [5] http://en.wikipedia.org/wiki/World_Wide_Web ● [6] http://www.w3.org/DesignIssues/LinkedData.html ● [7] https://en.wikipedia.org/wiki/Content_negotiation ● [8] http://en.wikipedia.org/wiki/HTTP_303 ● [9] http://en.wikipedia.org/wiki/Resource_Description_Framework ● [10] http://www.w3.org/standards/semanticweb/ontology ● [11] http://www.w3.org/TR/cooluris/ ● [12] http://en.wikipedia.org/wiki/SPARQL

×