在语义Web sparql查询中使用SERVICE关键字

时间:2015-08-24 08:53:20

标签: sparql semantic-web endpoints

我正在尝试使用one of the SPARQL endpoints来运行我的查询。这是我的疑问:

PREFIX  void:  <http://rdfs.org/ns/void#>
PREFIX    dv:  <http://bio2rdf.org/bio2rdf.dataset_vocabulary:>
SELECT DISTINCT ?sider_side_effect_ID3
 WHERE 
   {
     SERVICE <cu.sider.bio2rdf.org/sparql> 
       {
         ?sider_side_effect_ID3        <http://purl.org/dc/terms/title>                   ?sider_side_effect_label_ID3
       . ?sider_side_effect_label_ID3  bif:contains                                       "'Anxiety'"
       . ?sider_drug_ID2               a                                                  <http://bio2rdf.org/sider_vocabulary:Drug>
       . ?sider_drug_ID2               <http://bio2rdf.org/sider_vocabulary:side-effect>  ?sider_side_effect_ID3
   }   }

然而,当我按下运行按钮时,我收到以下错误:

  

Virtuoso RDFZZ Error DB.DBA.SPARQL_REXEC('cu.sider.bio2rdf.org/sparql', ...) returned Content-Type 'text/html' status 'HTTP/1.1 400 Bad Request

如果我删除SERVICE关键字及其大括号,则查询工作正常。我怎么能正确使用这个关键字?

1 个答案:

答案 0 :(得分:4)

我不知道它是否能解决您的问题,但

List<CheckStatusTask>

很可能需要更多的URI组件,例如SERVICE <cu.sider.bio2rdf.org/sparql> {

http://