Объединенный запрос SPARQL для подграфа конечной точки SPARQL

Я хотел бы спросить, как выполнить федеративный запрос SPARQL для подграфа конечной точки SPARQL (а не всей удаленной конечной точки SPARQL).

Я получил свои данные в Virtuoso v7, в то время как конечная точка SPARQL - " http://localhost:8890/sparql", я хотел бы сделать удаленный запрос к подграфу этой конечной точки, который " http://localhost:8890/TC", и я попробовал

SELECT  *
WHERE
   { SERVICE <http://localhost:8890/sparql>
       { SELECT  ?subject ?predicate ?object
         FROM <http://localhost:8890/TC>
         WHERE
           { ?subject  ?predicate  ?object }
       }
   } LIMIT 50

И я получил ошибку, что "ОТ" неправильно используется, поэтому у меня есть два вопроса:

1) я могу сделать удаленный запрос на подграфе конечной точки SPARQL?

2) можно ли иметь конечную точку SPARQL для каждого графика в Virtuoso v7?

Большое спасибо за вашу помощь.

1 ответ

Вы можете использовать график вместо.

В вашем примере:

SELECT  *
WHERE
{ 
  SERVICE <http://localhost:8890/sparql>
  { 
    SELECT  ?subject ?predicate ?object
    WHERE
     { graph <http://localhost:8890/TC> { ?subject  ?predicate  ?object } }
  }
} LIMIT 50

Я протестировал этот синтаксис с помощью следующего запроса в конечной точке Uniprot SPARQL (Virtuoso) во время интеграции с dbpedia (Virtuoso):

SELECT  *
WHERE
   { SERVICE <http://dbpedia.org/sparql>
       {select distinct ?activity where { graph <http://dbpedia.org> {?activity a <http://www.ontologydesignpatterns.org/ont/d0.owl#Activity>} } LIMIT 10
       }
   } LIMIT 50
Другие вопросы по тегам