9
SPARQL Endpoint Alberto Trindade Tavares

SPARQL Endpoint

Embed Size (px)

Citation preview

Page 1: SPARQL Endpoint

SPARQL Endpoint

Alberto Trindade Tavares

Page 2: SPARQL Endpoint

SPARQL Endpoint

Um Sparql Endpoint é um serviço que implementa o protocolo SPARQL.

SPARQL: Linguagem e protocolo para consulta de dados RDF.

Permite ao usuário (humano ou máquina) fazer uma consulta a uma base de dados RDF usando a linguagem SPARQL.

O resultado é retornado em um formato processável por máquina:

RDF JSON Etc.

Page 3: SPARQL Endpoint

Na Web de Dados, os SPARQL Endpoints são interfaces de consulta aos Datasets.

Fontes de dados da Linked Data usualmente fornecem um SPARQL endpoint para os seus Datasets.

Exemplos:

SPARQL Endpoint

Dataset URI do SPARQL Endpoint

DBPedia http://dbpedia.org/sparql

BBC Programmes and Music

http://lod.openlinksw.com/sparql/

DBLP Bibliography Database

http://www4.wiwiss.fu-berlin.de/dblp/sparql

LinkedGeoData http://linkedgeodata.org/sparql

Page 4: SPARQL Endpoint

Resultado da consulta em formato HTML

Exemplo: DBPedia

Interface fornecida para submissão de consulta SPARQL

Page 5: SPARQL Endpoint

Podemos acessar a um SPARQL Endpoint de duas maneiras:

Através da interface web fornecida quando se acessa a URI do endpoint por um navegador.

Através de bibliotecas de linguagens de programação. Exemplos:

Jena (Java) <http://jena.sourceforge.net/> ARC (PHP) <http://arc.semsol.org/> SPARQL Wrapper (Python) <http://sparql-

wrapper.sourceforge.net/> PySPARQL (Python) <http://code.google.com/p/pysparql/>

Acessando SPARQL Endpoints

Page 6: SPARQL Endpoint

Podemos utilizar um SPARQL Endpoint existente que fornece acesso a cópias de Datasets relevantes.

Exemplo: OpenLink Software através do projeto Linking Open

Data fornece um SPARQL Endpoint sobre os principais datasets da web de dados <http://lod.openlinksw.com/sparql>

Problemas com dados desatualizados e nem sempre temos todos os datasets relevantes na coleção.

Como consultar um conjunto de Datasets

Page 7: SPARQL Endpoint

Uma outra ideia é construirmos nosso próprio repositório de dados RDF a partir de cópias de Datasets relevantes e consultar sobre esses dados

Entre alguns repositórios de dados RDF disponíveis, podemos utilizar o Jena TDB

Componente do Jena que fornece armazenamento altamente escalável de dados RDF <http://jena.hpl.hp.com/wiki/TDB>

Devemos criar um SPARQL Endpoint que forneça acesso ao repositório de dados, para isso podemos usar o Joseki, um servidor RDF que fornece uma interface HTTP SPARQL a repositórios TDB

Joseki <http://www.joseki.org/>

Como consultar um conjunto de Datasets

Page 8: SPARQL Endpoint

Para construirmos esse repositório podemos buscar dados através de um Web Crawler que trabalhe sobre a Linked Data

Exemplo: LDSpider <http://ldspider.googlecode.com>

Deve haver a integração do crawler com o repositório de dados para armazenamento das triplas RDF buscadas da Web de Dados

Através de um SPARQL Endpoint podemos realizar consultas sobre os dados recuperados a partir de crawlings.

Como consultar um conjunto de Datasets

Page 9: SPARQL Endpoint

Existem outras abordagens para fazer consultas sobre um conjunto de Datasets, tais como:

Processamento de Consultas Federadas Consultar um mediador que distribui subconsultas a fontes relevantes

e integra os seus resultados.

Consultas seguidas Enviar consultas consecutivas sobre os datasets baseado em

resultados de consultas anteriores.

Como consultar um conjunto de Datasets