Arquivos
SPARQL – Parte III – Inserindo e apagando triplas (Insert e delete de triplas)
Amigos,
Fechando as queries básicas sobre SPARQL, faltou mencionar o INSERT e DELETE de triplas.
Os exemplos abaixo não poderão ser feito em um endpoint externo como a DBPedia (pelo menos não deveria ser possível), pois para tal é necessário a permissão de UPDATE no usuário.
INSERT, como inserir triplas no Virtuoso ?
O insert no virtuoso é simples, basta informar o grafo e a tripla a ser inserida.
Pode ser adicionada mais de uma tripla por query de insert.
INSERT data INTO <grafo> {
<sujeitoDaTripla> <predicadoDaTripl> <objetoDaTripla> .
}
DELETE, como apagar triplas no Virtuoso ?
O delete no virtuoso, lembra muito o conceito das consultas,
ele deleta o resultado das consultas, isso possibilita um delete mais avançado.
Você não precisa explicitar toda a tripla a ser deletada, você pode passar uma variável.
Apagando uma única tripla:
### Apagando tripla, informando: sujeito, predicado e objeto.
delete from <grafo> {
<sujeitoDaTripla> <predicadoDaTripl> <objetoDaTripla> .
}
where {
<sujeitoDaTripla> <predicadoDaTripl> <objetoDaTripla> .
}
Apagando múltiplas triplas dado um indivíduo:
### Apagando todas as triplas dado o sujeito.
delete from <grafo> {
<sujeitoDaTripla> ?p ?o .
}
where {
<sujeitoDaTripla2> ?p ?o .
}
Como definir ao usuário permissão de insert e delete (UPDATE) no ambiente local
Para os dois modos o virtuoso deverá esta inicializado.
Passo-a-passo utilizando o Conductor, interface administrativa do Virtuoso:
Endereço do Conductor (por default): http://localhost:8890/conductor/
Usuário administrador e senha (por default): DBA/DBA
Acesse o Conductor >
Acesse o System Admin >
Selecione a opção User Accounts >
(Selecione qual usuário deseja alterar a permissão, lembrando que o usuário do endpoint e do request HTTP, por default é SPARQL) > Edit >
Em Account Roles selecione SPARQL_UPDATE e clique no “>>” >
Save.
Passo-a-passo utilizando o iSQL do Virtuoso
Ps.: Paths padrões da instalação no Mac OS X Snow Leonard
Path do iSQL: /usr/local/virtuoso-opensource/bin
Inicialize o iSQL: ./isql
Execute o comando:
GRANT SPARQL_UPDATE TO "XXXXX";
### Substitua o XXXXX pelo nome do usuário por exemplo SPARQL.
Encerro nesse post as consultas básicas utilizando SPARQL. Nos próximos post irei falar um pouco mais sobre Ontologias (RDF/OWL).
Abraços.
Boa noite.
Renan Oliveira
Related Articles
- Getting Started with RDF and SPARQL Using 4store and RDF.rb | Jeni’s Musings (jenitennison.com)
- SPARQL Engines Benchmark Results (cweiske.de)
- SparqlImplementations – W3C Wiki (w3.org)
- OpenLink AJAX Toolkit (OAT) Wiki : OAT Interactive SPARQL (iSPARQL) Query Builder (wikis.openlinksw.com)
Como melhorar meu resultado de busca usando RDFa ?
Anotação semântica
“Esquema específico para geração e uso de metadados, possibilitando novos métodos de acesso a informação”
Nós vivemos procurando formas de melhorar nosso SEO (Search Engine Optimization) para que isso reverta em visitas aos nossos sites, já algum tempo conheço o RDFa (RDF annotations) que é uma proposta da W3c para organizar e melhorar o que está escrito em XHTML (Combinando as tags de marcação HTML com regras da XML), deste tempo para cá Google, Yahoo! (leia Search Monkey) aproveitam dessa melhor organização e de novos dados inseridos no XHTML para melhorar a apresentação dos resultados de Busca e melhorando assim o seu ranking já que tal informação está mais clara e objetiva e bem organizada.
Como o google usa o RDFa nos resultados de busca ?

O Google utiliza como padrão para Rich Snippets: RDFa e Microformats.
O Rich Snippets são aqueles resultados diferenciados com Reviews (stars), Events e etc.
Tanto o RDFa quanto o Microformats para o google não faz diferença, ainda. Eu particularmente prefiro o RDFa pois é mantido pelo pessoal da W3 Semantic Web Group.
Exemplos de uso em filmes (IMDb):
O próprio Google da dicas de como usa, segue os links:
Como marcar conteúdo usando RDFa:
http://www.google.com/support/webmasters/bin/answer.py?hl=br&answer=146898
Introducing Rich Snippets: http://googlewebmastercentral.blogspot.com/2009/05/introducing-rich-snippets.html
E agora, o Yahoo! usa o RDFa nos resultados de busca ?

Originalmente, a mesma anotação em RDFa será apresentada de forma parecida tanto no Google, quanto no Yahoo! sendo que no Yahoo a aplicação é um pouco mais vasta como pode ser vista nos links abaixo.
O Yahoo! (Search Monkey) participa de um excelente projeto para organizar os dados com Web Semântica (RDFa), o Projeto Commom Tag.
Exemplos de uso em Eventos:

Excelente explicação de como o Yahoo! captura e utiliza os dados em RDFa, além um ótimo tutorial:
http://developer.search.yahoo.com/start
E como usar essa anotações no Meu Blog? Use o Zemanta

O Projeto Zemanta começou como um Plugin para o Firefox e com o passar do tempo se tornou um Plugin para Blogs e hoje já é recomendado inclusive pelo WordPress, veja o post.
O Zemanta, funciona com um plugin que sugere notícias relacionadas, links , fotos e tags para organizar o seu conteúdo. Nessas tags que moram a grande sacada do Zemanta, ele escreve essas informação em RDFa.
Nesse post e nos futuros pretendo continuar usando o Zemanta para anotar os meus conteúdos, falo isso pois a Semantic Web continua crescendo de forma exponencial e poderá surgir um melhor “anotador” , por agora estou muito satisfeito com o uso do mesmo. Você pode ver aqui quais informações o Zemanta nos sugere, Exemplos de Uso.
Existem projetos, bem interessantes, que utilizam o RDFa como padrão:
Facebook – http://rdfa.info/2010/04/22/facebook-adopts-rdfa/
Best Buy – http://www.readwriteweb.com/archives/how_best_buy_is_using_the_semantic_web.php
Newsweek… Drupal….O’relly..
Caso queira saber mais informações, recomendo esses links:
http://www.slideshare.net/lzomatos/anotao-semntica-de-contedo-web-utilizando-microformatos-e-rdfa (PT-Br)
http://www.w3.org/TR/xhtml-rdfa-primer/ (Inglês)
http://www.alistapart.com/articles/introduction-to-rdfa/ (Inglês)
http://ilrt.org/discovery/2001/04/annotations/ (Inglês)
RDFa Basics
Related Articles
- RDFa in Drupal – examples and use cases | groups.drupal.org (groups.drupal.org)
- RDFa ” About (rdfa.info)
- Examining the Importance of RDFa Rich Snippets, Microdata, & Other Semantic Web Applications (seo-strategies-group.blog.co.uk)
- Is GoodRelations a Game Changer? ” The Taxonomy Blog (thetaxonomyblog.wordpress.com)
- I’m Voting for Structured Data (searchenginejournal.com)
