我刚开始和Fuseki和Jena一起工作 . 我有一个本体,我想允许HTTP客户端发送SPARQL请求并获得结果 . 以下是我为实现这一目标而编写的代码:
// testing Fuseki
Dataset dataset = RDFDataMgr.loadDataset("src/main/resources/files/test.owl");
FusekiEmbeddedServer server = FusekiEmbeddedServer.create()
.setPort(3332)
.add("/ds", dataset, true)
.build() ;
server.start() ;
Fuseki Web服务器工作正常,我可以使用Web浏览器发送查询并获得结果 .
问题是每当我尝试使用.owl文件中定义的前缀时,我都会收到错误 . 基本上这是一个我想发送的简单请求: http://localhost:3332/ds?query=SELECT ?test WHERE {?test ssn:observes ?o}
目前我收到此错误:
Error 400: Parse error:
SELECT ?test WHERE {?test ssn:observes ?o}
Line 1, column 27: Unresolved prefixed name: ssn:observes
我知道 .owl
文件确实存在 ssn
前缀 . 我有没有办法让这个请求工作,知道我只是通过Java使用它?