SPARQL-запрос для получения данных из викиданных не работает - PullRequest
1 голос
/ 27 января 2020

Я пытаюсь получить ссылки на изображения из викиданных, выполнив SPARQL-запрос из моего локального экземпляра Jena Fuseki. Я хочу объединить его с данными из моего локального графика. К сожалению, запрос не доставляет никаких данных, но выполняется и работает вместо этого без сообщения об ошибке.

Sparql-запрос:

PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX wd: <http://www.wikidata.org/entity/>
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>

SELECT ?name ?image WHERE { 
  ?s foaf:name ?name.
  ?s owl:sameAs ?wikidata_link.
  FILTER regex(str(?wikidata_link), "wikidata").
  SERVICE <https://query.wikidata.org/sparql> {
    ?wikidata_link wdt:P18 ?image.
  }

} LIMIT 10

Тестовые данные, которые я имею в своем локальном графике на Сервер Jena Fuseki:

@base <http://dmt.de/pages> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix dbp: <http://dbpedia.org/resource/> .
@prefix wd: <https://www.wikidata.org/entity/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .

<#john-cage>
    a foaf:Person ;
    foaf:name "John Cage";
    owl:sameAs dbp:John_Cage, wd:Q180727.

<#karlheinz-stockhausen>
    a foaf:Person ;
    foaf:name "Karlheinz Stockhausen";
    owl:sameAs dbp:Karlheinz_Stockhausen, wd:Q154556.

<#arnold-schoenberg>
    a foaf:Person;
    foaf:name "Arnold Schönberg";
    owl:sameAs dbp:Arnold_Schoenberg, wd:Q154770.

Я пробовал аналогичный запрос для dbpedia-data, который отлично работает.

PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX dbp: <http://dbpedia.org/resource/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX dbo: <http://dbpedia.org/ontology/>

SELECT ?name ?dbpedia_link ?birthplace WHERE { 
  ?s foaf:name ?name.
  ?s owl:sameAs ?dbpedia_link.
  FILTER regex(str(?dbpedia_link),"dbpedia.org").
  SERVICE <https://dbpedia.org/sparql> {
    ?dbpedia_link dbo:birthPlace ?birthplace.
  }

} LIMIT 10

Есть идеи? Заранее спасибо!

...