4 votes

Requête dbpedia SPARQL pour trouver des propriétés d'artistes

J'essaie d'obtenir des détails sur un artiste via DBPedia et le langage de requête SPARQL, mais il semble presque impossible (avec ma compréhension) d'obtenir certains éléments d'information.

J'essaie d'obtenir un artiste et des informations telles que sa ville d'origine. Je suppose que la requête devrait être similaire à celle de :

SELECT ?c WHERE {
  ?b <http://dbpedia.org/property/Artist> <http://dbpedia.org/resource/Arctic_Monkeys>.
  ?b <http://www.w3.org/2002/07/owl#ObjectProperty> <http://dbpedia.org/ontology/hometown>.
  ?b rdfs:label ?c.
}

Si quelqu'un pouvait m'éclairer sur la manière de procéder, ce serait formidable.

J'ai testé les requêtes sur le site :

http://dbpedia.org/sparql

7voto

Sam Points 3067

Si vous voulez trouver l'étiquette de leur ville d'origine, essayez ceci :

SELECT ?hometownLabel WHERE {
  <http://dbpedia.org/resource/Arctic_Monkeys> <http://dbpedia.org/ontology/hometown> ?hometown .
  ?hometown <http://www.w3.org/2000/01/rdf-schema#label> ?hometownLabel .
}

3voto

Zhang Points 31

Vous ne comprenez peut-être pas bien la syntaxe de SPARQL. Contrairement à SQL, SPARQL recherche des résultats en écrivant des triples avec des variables inconnues dans la clause WHERE. Vous pouvez essayer :

prefix dbpedia-owl:<http://dbpedia.org/ontology/>
SELECT ?c 
WHERE {
    <http://dbpedia.org/resource/Arctic_Monkeys> dbpedia-owl:hometown ?c.
}

Avec cette recherche, vous obtiendrez la ville d'origine de Arctic_Monkeys.

1voto

Shubhangi Points 252
SELECT ?hometown 
WHERE {
dbr:Arctic_Monkeys dbo:hometown ?label.
?label rdfs:label ?hometown.
FILTER(langMatches(lang(?hometown), "en"))
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X