Fuseki SPARQL INSERT生成“错误400:SPARQL查询:否'query ='参数”

时间:2017-04-18 14:24:13

标签: sparql rdf owl ontology fuseki

我尝试将个人插入我的本体,但得到错误:

Error 400: SPARQL Query: No 'query=' parameter

Fuseki - version 2.4.1 (Build date: 2016-11-04T18:59:20+0000)

这是我的SPARQL INSERT查询#1:

PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 
PREFIX oo:  <http://www.test.com/test-ontology.owl#> 

INSERT { 
  oo:cap_123 rdf:type oo:MyTours .  
  oo:cap_123 oo:active true . 
  oo:cap_123 oo:title 'Text text text' . 
} 
WHERE { 
  FILTER NOT EXISTS { oo:cap_123 rdf:type oo:MyTours . 
  } 
} 

这是我的INSERT查询#2:

INSERT DATA {
  oo:cap_123 rdf:type oo:MyTours .
  oo:cap_123 oo:active true .
  oo:cap_123 oo:title 'Text text text' .
}

如果我使用Protégé插入个体,那么它可以工作并保存结果如下:

<owl:NamedIndividual rdf:about="http://www.test.com/test-ontology.owl#cap_123">
    <rdf:type rdf:resource="http://www.test.com/test-ontology.owl#MyTours"/>
    <active rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean">true</active>
    <title>Text text text</title>
</owl:NamedIndividual>

两个查询都失败了。他们有什么问题?

1 个答案:

答案 0 :(得分:8)

您的SPARQL端点地址是什么?它应以/update(而不是/query)结束:

fuseki web interface screenshot

可用服务列在http://example.com/dataset.html?tab=info&ds=/<dataset_name>上:

info tab screenshot

  • 配置文件为%FUSEKI_HOME%/run/configuration/<dataset_name>.ttl
  • 可能会在%FUSEKI_HOME%/run/shiro.ini
  • 中限制访问权限