35
Web Semântica "com rodinhas" Por Márcio Vinícius Oliveira Sena - @marciosena17 - 28/01/2013

Início Web Semântica com Apache Jena

Embed Size (px)

DESCRIPTION

Web Semântica é uma extensão da Web que propõe estruturar e expressar significado ao conteúdo disponibilizado na internet. Assim o que atualmente é uma rede de documentos estruturados torna-se-á uma rede de dados compreensível.

Citation preview

Page 1: Início Web Semântica com Apache Jena

Web Semântica"com rodinhas"

Por Márcio Vinícius Oliveira Sena - @marciosena17 - 28/01/2013

Page 2: Início Web Semântica com Apache Jena

Roteiro● Introdução● Conceito● Vantagens ● Arquitetura e principais tecnologias● Outras tecnologias

○ Microformats○ Microdata○ RDFa

● Projeto Jena● Exemplos de aplicações

Page 3: Início Web Semântica com Apache Jena

Web SemânticaIntrodução

Web Semântica = Interpretações, Inferências e relações

Web Sintática = Regras e Formalidades

Page 4: Início Web Semântica com Apache Jena

Web SemânticaIntrodução

HTML =

SimplicidadeUbiquidade

Page 5: Início Web Semântica com Apache Jena

Web SemânticaIntrodução

HTML =

Limitações semânticas

Page 6: Início Web Semântica com Apache Jena

Web SemânticaIntrodução

Page 7: Início Web Semântica com Apache Jena

Web SemânticaIntrodução

Onde está o menu superior?

Page 8: Início Web Semântica com Apache Jena

Web SemânticaConceito

É uma extensão da Web que propoe estruturar e expressar significado ao

conteudo disponibilizado na internet.

Assim o que atualmente e uma rede de documentos estruturados torna-se-a uma rede

de dados compreensıvel.

Page 9: Início Web Semântica com Apache Jena

Web SemânticaVantagens

1. Maior organização, facilitando a manutenção da aplicação;

2. Otimização nos resultados dos motores de busca;

3. Inferência de informações.

Page 10: Início Web Semântica com Apache Jena

Web SemânticaVantagens

Desenvolver:

1. Padrões;

2. Arquitetura de metadados;

3. Linguagens de ontologias que auxiliem os computadores a fornecer e processar o significado das informações na Web.

Page 11: Início Web Semântica com Apache Jena

Web SemânticaArquitetura e principais tecnologias

Page 12: Início Web Semântica com Apache Jena

Web SemânticaArquitetura - Camada Básica de Dados

Os níveis são construídos imediatamente o nível inferior e cada nível é independente de níveis superiores.

● Padrões Unicode○ Padrão que permite representar e manipular textos(UTF-7,

UTF-8, UTF-16).

● URI○ e o identificador de um recurso web formado por:

1 protocolo + 1 endereço de ip + 1 nome de recurso

http://www.labtime.ufg.br/dicionarioSemantico

Page 13: Início Web Semântica com Apache Jena

Web SemânticaArquitetura

Page 14: Início Web Semântica com Apache Jena

Web SemânticaArquitetura - Camada de Descrição Sintática

● XML○ Linguagem de marcação.

● Namespace○ são usados para fornecer nomes exclusivos a

elementos/recursos/atributos em um documento XML.

● XMLSchema○ é uma linguagem baseada no formato XML para definição de

regras de validação.

Page 15: Início Web Semântica com Apache Jena

Web SemânticaArquitetura

Page 16: Início Web Semântica com Apache Jena

Web SemânticaArquitetura - Camada de Descrição Semântica e Estrutural

● RDF

○ é um framework, que utiliza de linguagens (TURTLE, RDF/XML, N-TRIPLE), capaz de padronizar a definição de metadados referente ao recursos web;

○ Se organiza em triplas;

○ Suporta XML Schema - é possível comunicar com uma aplicação que não utiliza RDF;

○ Para a criação de inferência é limitado.

Page 17: Início Web Semântica com Apache Jena

Web SemânticaArquitetura - Camada de Descrição Semântica e Estrutural

Page 18: Início Web Semântica com Apache Jena

Web SemânticaArquitetura

Page 19: Início Web Semântica com Apache Jena

Web SemânticaArquitetura - Camada de Descrição Semântica e Lógica

● OWL

○ é uma linguagem para definir e instanciar ontologias na Web.

- Complexidade +

OWL Lite -> OWL DL -> OWL Full

- Expressividade +

Page 20: Início Web Semântica com Apache Jena

Web SemânticaArquitetura - Camada de Descrição Semântica e Lógica

● Ontologias

○ É modelo de dados que representa um conjunto de conceitos dentro de um domínio e os relacionamentos entre estes;

○ Conjuntos de regras que possibilitam o conhecimento de um determinado domínio de estudo, restringindo ou fornecendo semântica;

○ Ferramenta: Protege.

Page 21: Início Web Semântica com Apache Jena

Web SemânticaArquitetura - Camada de Descrição Semântica e Lógica

● Exemplo na Zoologia

○ humano, macho, fêmea = ?;

○ ancestral, homem, mulher = ?;

○ pode-se restringir que homens e mulheres podem ter uma única idade cujo valor nunca é negativo;

○ pode-se definir que o relacionamento marido e esposa só pode ter cardinalidade 1:1.

Page 22: Início Web Semântica com Apache Jena

Web SemânticaArquitetura

Page 23: Início Web Semântica com Apache Jena

Web SemânticaArquitetura - Camada de Descrição Lógica

É classificada como a camada inteligente da Web Semântica, pois é formada por conjuntos de regras de inferência para tratamento das informações dos

níveis inferiores.

● SWRL○ Regra que diz que uma Pessoa (classe) que tem

seu próprio carro (propriedade) deve ser classificada como Motorista(classe):

Pessoa(?p) ^ tem_carro(?p, true) -> Motorista (?p)

Page 24: Início Web Semântica com Apache Jena

Web SemânticaOutras tecnologias

● Microformats○ Utiliza um atributo muito usado atualmente: class;○ Expressão mínima.

● Microdata○ Padrão do HTML5;○ Sintaxe simplificada;○ Google, Yahoo, Bing.

● RDFa○ Sintaxe complexa;○ Possui ligação com framework Jena.

Page 25: Início Web Semântica com Apache Jena

Web SemânticaProjeto Jena

● Jena○ Projeto Open source;○ Framework Java;○ Iniciado pela HP(2000) e atualmente desenvolvido

pela Apache(2010);○ Baseia-se nos padrões W3C;○ Tecnologias envolvidas:

■ RDF;■ RDFS;■ RDFa;■ OWL;■ SPARQL.

Page 26: Início Web Semântica com Apache Jena

Web SemânticaProjeto Jena

● Jena○ Exemplo de projeto.

Page 27: Início Web Semântica com Apache Jena

Web SemânticaProjeto Jena

Page 28: Início Web Semântica com Apache Jena

Web SemânticaProjeto Jena

Page 29: Início Web Semântica com Apache Jena

Web SemânticaProjeto Jena

Page 30: Início Web Semântica com Apache Jena

Web SemânticaProjeto Jena

● Jena○ RDF/XML

Page 31: Início Web Semântica com Apache Jena

Web SemânticaProjeto Jena

● Jena○ N-Triple;

○ Gráfico;

Page 32: Início Web Semântica com Apache Jena

Web SemânticaProjeto Jena

● SPARQL

○ Linguagem de consulta RDF;

○ Criação 2008;

○ Substituto do RDQL.

Page 33: Início Web Semântica com Apache Jena

Web SemânticaProjeto Jena

● SPARQL

PREFIX f: <http://www.semanticweb.org/ontologies/2011/9/Ontology1320067064795.owl#>PREFIX ms: <http://msstress/teste/mss#>

select ?x where { f:mvURI f:idade ?x}

select ?x where { ?y f:idade ?x}

Page 34: Início Web Semântica com Apache Jena

Web SemânticaExemplo de aplicações

Page 35: Início Web Semântica com Apache Jena

Web Semântica

Obrigado