explaining semantic web

40
semantic web Luís Cipriani talleye.com @lfcipriani (twitter, linkedin, github, ...) 24o. GURU (2012-05-19) - Sao Paulo/Brazil sexta-feira, 18 de maio de 12

Upload: luis-cipriani

Post on 03-Jul-2015

9.009 views

Category:

Documents


0 download

DESCRIPTION

The web is revolutionary when the subject is speed, scale and availbility of information, but not in information classification and organization. It's very common to be in trouble when trying to manipulate public data or even private internal company data. The goal of this presentation is to show a way to understand Semantic Web and how we can use this tool to generate knowledge from raw data, and introduce the technology and specifications involved such as RDF, ontologies and triplestores.

TRANSCRIPT

Page 1: Explaining Semantic Web

semantic web

Luís Cipriani talleye.com@lfcipriani (twitter, linkedin, github, ...)24o. GURU (2012-05-19) - Sao Paulo/Brazil

sexta-feira, 18 de maio de 12

Page 2: Explaining Semantic Web

me

digital.abril.com.br

sexta-feira, 18 de maio de 12

Page 3: Explaining Semantic Web

motivação

semântica “relacionado ao significado de algo”

não ambíguo

sexta-feira, 18 de maio de 12

Page 4: Explaining Semantic Web

motivação

http://en.wikipedia.org/wiki/DIKW

sexta-feira, 18 de maio de 12

Page 5: Explaining Semantic Web

motivação

sexta-feira, 18 de maio de 12

Page 6: Explaining Semantic Web

motivação

“A Semantic Web is not Artificial Intelligence”Tim Berners-Lee

sexta-feira, 18 de maio de 12

Page 7: Explaining Semantic Web

motivação

“Semantic Web is all about data integration”Programming the Semantic Webhttp://oreilly.com/catalog/9780596153823

sexta-feira, 18 de maio de 12

Page 8: Explaining Semantic Web

integração de dados > tabelas

restaurante endereço especialidade preço aberto

Rancho fundo Av Paulista, 42 brasileira $$ter-dom

(10h as 15h)

Kanikana Rua Sumidouro, 24 japonesa $$$seg-sex

(13h as 23h)

... ... ... ... ...

sexta-feira, 18 de maio de 12

Page 9: Explaining Semantic Web

integração de dados > bases relacionais

sexta-feira, 18 de maio de 12

Page 10: Explaining Semantic Web

id nome endereço id_especialidade preço

1 Rancho fundo Av Paulista, 42 2 $$

2 Kanikana Rua Sumidouro, 24 3 $$$

integração de dados > bases relacionais

id nome

1 tailandesa

2 brasileira

3 japonesa

id_restaurante dia horario_abre horario_fecha

1 ter 10 15

1 qua 10 15

1 qui 10 14

2 sex 13 23

2 sab 13 23

2 dom 14 20

... ... ... ...

restaurante

especialidade

aberto

sexta-feira, 18 de maio de 12

Page 11: Explaining Semantic Web

integração de dados > bases relacionais

migração de schemasexta-feira, 18 de maio de 12

Page 12: Explaining Semantic Web

integração de dados > schema flexível

sexta-feira, 18 de maio de 12

Page 13: Explaining Semantic Web

integração de dados > schema flexível

id nome endereço

1 Rancho fundo Av Paulista, 42

2 Kanikana Rua Sumidouro, 24

id nome

1 especialidade

2 preço

3 dj

4 música ao vivo

5 dia

... ...

id_estabelecimento id_campo valor

1 1 brasileira

1 2 $$

1 5 seg

2 1 japonesa

2 3 TRUE

2 2 $$$

... ... ...

estabelecimento

campo

propriedades

sexta-feira, 18 de maio de 12

Page 14: Explaining Semantic Web

id_estabelecimento campo valor

1 especialidade brasileira

1 preço $$

1 dia seg

2 especialidade japonesa

2 dj TRUE

2 preço $$$

... ... ...

propriedades

id nome endereço

1 Rancho fundo Av Paulista, 42

2 Kanikana Rua Sumidouro, 24

estabelecimento

integração de dados > relacionamento semântico

sexta-feira, 18 de maio de 12

Page 15: Explaining Semantic Web

expressando significados

sujeito predicado objeto

1 especialidade brasileira

1 preço $$

1 dia seg

2 especialidade japonesa

2 dj TRUE

2 preço $$$

... ... ...

propriedades

tripla =

sexta-feira, 18 de maio de 12

Page 16: Explaining Semantic Web

modelo em grafo dos estabelecimentos

IDs únicos

sexta-feira, 18 de maio de 12

Page 17: Explaining Semantic Web

modelo em grafo dos estabelecimentos

relacionamentospropriedades = first class objects

sexta-feira, 18 de maio de 12

Page 18: Explaining Semantic Web

modelo em grafo dos estabelecimentos

inferência

sexta-feira, 18 de maio de 12

Page 19: Explaining Semantic Web

modelo em grafo dos estabelecimentos

mesclando

sexta-feira, 18 de maio de 12

Page 20: Explaining Semantic Web

modelo em grafo dos estabelecimentos

sexta-feira, 18 de maio de 12

Page 21: Explaining Semantic Web

Linked Data Cloud

http://linkeddata.org/

sexta-feira, 18 de maio de 12

Page 22: Explaining Semantic Web

sexta-feira, 18 de maio de 12

Page 23: Explaining Semantic Web

formato de grafo comum

<?xml version="1.0"?><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:contact="http://www.w3.org/2000/10/swap/pim/contact#">

<contact:Person rdf:about="http://www.w3.org/People/EM/contact#me"> <contact:fullName>Eric Miller</contact:fullName> <contact:mailbox rdf:resource="mailto:[email protected]"/> <contact:personalTitle>Dr.</contact:personalTitle> </contact:Person>

</rdf:RDF>

RDF: padrão da W3C

sexta-feira, 18 de maio de 12

Page 24: Explaining Semantic Web

formato de grafo comum

<http://www.w3.org/2001/sw/RDFCore/ntriples/> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ↵ <http://xmlns.com/foaf/0.1/Document> .<http://www.w3.org/2001/sw/RDFCore/ntriples/> <http://purl.org/dc/terms/title> "N-Triples"@en-US .<http://www.w3.org/2001/sw/RDFCore/ntriples/> <http://xmlns.com/foaf/0.1/maker> _:art .<http://www.w3.org/2001/sw/RDFCore/ntriples/> <http://xmlns.com/foaf/0.1/maker> _:dave .

_:art <http://www.w3.org/1999/02/22-rdf-syntax-ns#> <http://xmlns.com/foaf/0.1/Person> ._:art <http://xmlns.com/foaf/0.1/name> "Art Barstow".

_:dave <http://www.w3.org/1999/02/22-rdf-syntax-ns#> <http://xmlns.com/foaf/0.1/Person> ._:dave <http://xmlns.com/foaf/0.1/name> "Dave Beckett".

@prefix dc: <http://purl.org/dc/elements/1.1/>.

<http://en.wikipedia.org/wiki/Tony_Benn> dc:title "Tony Benn"; dc:publisher "Wikipedia".

N-Triple

Notation 3 (N3)

@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .@prefix dc: <http://purl.org/dc/elements/1.1/> .@prefix ex: <http://example.org/stuff/1.0/> .

<http://www.w3.org/TR/rdf-syntax-grammar> dc:title "RDF/XML Syntax Specification (Revised)" ; ex:editor [ ex:fullname "Dave Beckett"; ex:homePage <http://purl.org/net/dajobe/> ] .

Turtle

sexta-feira, 18 de maio de 12

Page 25: Explaining Semantic Web

formato de grafo comum (embutidos no HTML)

RDFa Microformat

Microdata

<p xmlns:dc="http://purl.org/dc/elements/1.1/" about="http://www.example.com/books/wikinomics"> In his latest book <cite property="dc:title">Wikinomics</cite>, <span property="dc:creator">Don Tapscott</span> explains deep changes in technology, demographics and business. The book is due to be published in <span property="dc:date" content="2006-10-01">October 2006</span>.</p>

<div class="vcard"> <div class="fn">Joe Doe</div> <div class="org">The Example Company</div> <div class="tel">604-555-1234</div> <a class="url" href="http://example.com/">

http://example.com/</a>

</div>

<section itemscope itemtype="http://data-vocabulary.org/Person"> Hello, my name is <span itemprop="name">John Doe</span>, I am a <span itemprop="title">graduate research assistant</span> at the <span itemprop="affiliation">University of Dreams</span>. My friends call me <span itemprop="nickname">Johnny</span>. You can visit my homepage at <a href="http://www.JohnnyD.com" itemprop="url">www.JohnnyD.com</a>. <section itemprop="address" itemscope itemtype="http://data-vocabulary.org/Address"> I live at <span itemprop="street-address">1234 Peach Drive</span> <span itemprop="locality">Warner Robins</span> , <span itemprop="region">Georgia</span>. </section></section>

http://manu.sporny.org/2011/uber-comparison-rdfa-md-uf/

sexta-feira, 18 de maio de 12

Page 26: Explaining Semantic Web

sexta-feira, 18 de maio de 12

Page 27: Explaining Semantic Web

vocabulários comuns

integração de dados necessita de acordos em:

• termos

• categorias utilizadas

• relacionamentos entre eles

sexta-feira, 18 de maio de 12

Page 28: Explaining Semantic Web

vocabulários comuns

RDFS (Schema)

SKOS (Simple Knowledge Organization System)

OWL (Web Ontology Language)

RIF (Rule Interchange Format)

Resource, Class, Literal, domain, range, type, subClassOf, seeAlso, isDefinedBy...

para vocabulários controlados, thesaurus, taxonomiapart-of, instance-of, prefered-label, definition, Concept, example, related, Collection...

para definir vocabulários mais complexos, ricos com forte fundação lógicasameAs, equivalentClass, disjointWith, differentFrom

framework genérico para definir regras em termos e dadosuma linguagem para ciação de regras (loops, condicionais, ...)

extends

sexta-feira, 18 de maio de 12

Page 29: Explaining Semantic Web

vocabulários comuns

uma ontologia deve fornecer um vocabulário preciso no qual o conhecimento possa ser representado

sexta-feira, 18 de maio de 12

Page 30: Explaining Semantic Web

vocabulários comuns > ontologias famosas

FOAF Dublin Core

GoodRelations

geonames

vCard

iCal

rNews

UMBEL

sexta-feira, 18 de maio de 12

Page 31: Explaining Semantic Web

sexta-feira, 18 de maio de 12

Page 32: Explaining Semantic Web

query

SPARQL (Simple Protocol and RDF Query Language)PREFIXfb:<http://rdf.freebase.com/ns/>

SELECT ?who ?filmWHERE { ?film fb:film.film.directed_by ?who . ?film fb:film.film.starring ?who .}

SELECT distinct ?episode,?chalkboard_gagWHERE { ?episode

<http://www.w3.org/2004/02/skos/core#subject> <http://dbpedia.org/resource/Category:The_Simpsons_episodes%2C_season_12> .

 ?episode <http://dbpedia.org/property/blackboard> ?chalkboard_gag .}

sexta-feira, 18 de maio de 12

Page 33: Explaining Semantic Web

sexta-feira, 18 de maio de 12

Page 34: Explaining Semantic Web

aplicações > BBC

sexta-feira, 18 de maio de 12

Page 35: Explaining Semantic Web

aplicações > Search

Best Buy

sexta-feira, 18 de maio de 12

Page 36: Explaining Semantic Web

aplicações > Zemanta

http://www.zemanta.com/

sexta-feira, 18 de maio de 12

Page 37: Explaining Semantic Web

aplicações > Nasa

sexta-feira, 18 de maio de 12

Page 38: Explaining Semantic Web

recapitulando

sexta-feira, 18 de maio de 12

Page 39: Explaining Semantic Web

sexta-feira, 18 de maio de 12

Page 40: Explaining Semantic Web

referências

• http://semtech2011.semanticweb.com• http://www.w3.org/2001/sw/• Information Rules (www.inforules.com)• http://www.w3.org/2001/sw/sweo/public/UseCases/

• Programming the Semantic Web (Oreilly)• https://github.com/bendiken/rdf• http://en.wikipedia.org/wiki/Triplestore

engineering.abril.com.br

sexta-feira, 18 de maio de 12