Publicação de Dados Governamentais
no Padrão Linked Data
3.2 – E x em plo s S P A R Q L
Karin B reitman
José Viterbo
E dgard M arx
P ercy S alas
1
LA C
L a bo ra to ry fo r A dva nc e d
C o lla b ora tio n
E x em plo S P A R Q L
P R IM E IR A C O NS ULTA
P R E FI X type: <http://dbpedia.org/class /yago/>
P R E FI X prop: <http://dbpedia.org/property/>
S E L E C T dis tinct ? types
WHE R E {
? es tado a ? types .
FI L T E R (regex(s tr(? types ),"brazil","i")) .
}
2 06/09/10
E x em plo S P A R Q L
ncontre todos os nomes dos estados em po rtug ues junto com suas
res pectivas populações , colocando o estado com maior população em
prim eiro lug a r.
R E FI X type: <http://dbpedia.org/class/yago/>
R E FI X prop: <http://dbpedia.org/property/>
E L E C T ? estados_nome ? populacao
HERE {
? estado a type:S tatesO fB razil ;
3
rdfs:label ? estados_nome;
E x erc íc io S P A R Q L
odifique o anterior exemplo para que unicamente sejam retornados os estados
que possuam m a is de 1 m ilhã o de ha bita ntes .
R E FI X type: <http://dbpedia.org/class/yago/>
R E FI X prop: <http://dbpedia.org/property/>
E L E C T ? estados_nome ? populacao
HERE {
? estado a type:S tatesO fB razil ;
4
rdfs:label ? estados_nome;
E x erc íc io S P A R Q L
odifique o anterior exemplo para que sejam retornados unicamente os 5
es ta do s com maior população depo is do 3ro c o lo c a do .
R E FI X type: <http://dbpedia.org/class/yago/>
R E FI X prop: <http://dbpedia.org/property/>
E L E C T ? estados_nome ? populacao
H E R E { ? estado a type:S tatesO fB razil ;
rdfs:label ? estados_nome;
5
prop:populationE stimate ? populacao.
E x erc íc io S P A R Q L
odifique o exercicio anterior e retorne alem do nome e a população a foaf:page.
R E FI X type: <http://dbpedia.org/clas s/yago/>
R E FI X prop: <http://dbpedia.org/property/>
R E FI X fo a f: <http://x m lns .c o m /foa f/0.1/>
E L E C T ? es tados_nome ? populacao ? pa g e
HERE {
? es tado a type:S tates OfB razil ;
rdfs :label ? es tados_nome;
6
prop:populationE s timate ? populacao;
E x em plo S P A R Q L
ncontre todos os nomes junto com as datas de fundação dos partidos políticos
do B rasil.
R E FI X type: <http://dbpedia.org/class/yago/>
R E FI X prop: <http://dbpedia.org/property/>
E L E C T ? nome ? fundacao
HERE {
O P T I O N A L {? objeto prop:foundation ? fundacao}
? objeto a type:P oliticalP artiesInB razil;
7
rdfs:label ? nome;
E x erc íc io S P A R Q L
odifique a consulta anterior e adicione se existir a homepage
R E FI X type: <http://dbpedia.org/class/yago/>
R E FI X prop: <http://dbpedia.org/property/>
R E FI X foaf: <http://xmlns.com/foaf/0.1/>
E L E C T ? nome ? fundacao ? ho m epa g e
HERE {
? objeto a type:P oliticalP artiesInB razil;
8
rdfs:label ? nome.
E x em plo S P A R Q L
É o rio amazonas mais cumprido que o R io nilo?
P R E FI X prop: <http://dbpedia.org/property/>
AS K
{
<http://dbpedia.org/resource/Amazon_R iver> prop:length ? amazon .
<http://dbpedia.org/resource/Nile> prop:length ? nile .
FI L T E R (? amazon > ? nile) .
}
9 06/09/10
E x erc íc io S P A R Q L
O R omario fez mais goles que o M aradona?
P R E FI X prop: <http://dbpedia.org/property/>
AS K
{
<http://dbpedia.org/resource/D iego_M aradona> prop:totalgoals ? maradona .
<http://dbpedia.org/resource/R om% C 3% A1rio> prop:totalgoals ? romario .
FI L T E R (? romario > ? maradona ) .
}
10 06/09/10
M a is S P A R Q L
11 06/09/10
E x em plo S P A R Q L
ncontre todas as Universidades da cidade do R io de Janeiro
R E FI X type: <http://dbpedia.org/class/yago/>
R E FI X prop: <http://dbpedia.org/property/>
R E FI X clas s: <http://dbpedia.org/ontology/>
E L E C T ? univers idade_nome ? universidade
HERE {
? universidade a type:Universities InBrazil;
12
rdfs:label ? universidade_nome;
E x em plo S P A R Q L
ncontre todos os nomes e lugares de nascimento dos jogadores da copa do
1994.
R E FI X type: <http://dbpedia.org/class/yago/>
R E FI X clas s: <http://dbpedia.org/ontology/>
E L E C T distinct ? nome ? lugar_nome
HERE {
? objeto a type:B razilianFootballers;
13
a type:FIFAWorldC up1994P layers;
E x em plo S P A R Q L
E ncontre tudos o que sabe sobre o P elé.
P R E FI X type: <http://dbpedia.org/class/yago/>
D E S C R I B E ? objeto
WHER E {
? objeto a type:B razilianFootballers;
rdfs:label ? nome.
FI L T E R (regex(str(? nome),"P elé","i")) .
FI L T E R (langM atches(lang(? nome), "pt")).
}
14
E x em plo S P A R Q L
E ncontre todos os objetos que tenham a palavra “Lula" em seu nome
P R E FI X rdfs: <http://www.w3.org/2000/01/rdf-schema#>
S E L E C T ? lbl
WHER E {
? objeto rdfs:label ? lbl .
FI L T E R (bif:contains(? lbl, "Lula")) .
}
15
E x em plo S P A R Q L
E ncontre os nomes, wikiP ages, e foafName dos atores B rasileiros.
P R E FI X type: <http://dbpedia.org/class/yago/>
P R E FI X foaf: <http://xmlns.com/foaf/0.1/>
S E L E C T ? nome ? pagina ? foafName
WHER E {
? objeto a type:B razilianFilmActors;
rdfs:label ? nome.
O P T I O N A L {? objeto foaf:page ? pagina}.
O P T I O N A L {? objeto foaf:name ? foafName}.
FI L T E R (langM atches(lang(? nome), "E N")).
}
16
R eferenc ia s
• http://www.cambridgesemantics.com/2008
/09/sparql-by-example/#% 281% 29
• http://blogs.talis.com/n2/archives/818
17
Download

3.2. Exemplos SPARQL