我搜索了关于如何使用virtuoso服务器(开放源代码版本)配置RDF存储的教程或指南。使用Virtuoso设置RDF本体
我有用Protégé软件创建的RDF文件。如何将此文件添加到virtuoso服务器并配置一个终点以便能够通过Jena或其他此类API插入/更新或查询数据。
我搜索了关于如何使用virtuoso服务器(开放源代码版本)配置RDF存储的教程或指南。使用Virtuoso设置RDF本体
我有用Protégé软件创建的RDF文件。如何将此文件添加到virtuoso服务器并配置一个终点以便能够通过Jena或其他此类API插入/更新或查询数据。
最简单的方法可能是解释这个documentation pageHTTP PUT using Content-Type: application/rdf+xml
的点(16.8.3)。该机制基本上运行HTTP PUT
将您的文件发送到三重商店。
curl -T your_file.rdf entity_uri_to_store_file -u user:pass
思考的entity_uri_to_store_file
仿佛是要保存该文件的表。
因此,可以说,你的文件是ontology1.owl并希望将其保存在实体然后http://myorganisation.com/ontologies/ontology1
您的命令看起来像......
curl -T ontology1.owl http://myorganisation.com/ontologies/ontology1 -u user:pass
注意:如果你正在运行一个Windows可以从here安装curl
。
以后要查询数据...你也可以用curl
来完成。
curl -F "query=YOUR SPARQL QUERY" http://your.virtuososerver.org/sparql
请注意,您必须使用SPARQL来访问数据。
在耶拿的情况下,你必须使用Jena ARQ,通过命令行...
java -cp ... arq.query --service 'hhttp://your.virtuososerver.org/sparql' 'SELECT * WHERE {?s ?p ?o}'
或编程使用API ...
import com.hp.hpl.jena.query.QueryExecution;
import com.hp.hpl.jena.query.QueryExecutionFactory;
import com.hp.hpl.jena.sparql.engine.http.QueryExceptionHTTP;
public class QueryTest {
public static void main(String[] args) {
String service = "http://your.virtuososerver.org/sparql";
String query = "SELECT * WHERE {?s ?p ?o}";
QueryExecution qe = QueryExecutionFactory.sparqlService(service, query);
try {
ResultSet results = qe.execSelect() ;
for (; results.hasNext() ;) {
QuerySolution soln = results.nextSolution() ;
RDFNode x = soln.get("s") ;
RDFNode r = soln.get("p") ;
RDFNode l = soln.get("o") ;
}
} catch (Exception e) {
System.out.println("Query error:"+e);
} finally {
qe.close();
}
}
只记得将变量service
指向您的virtuoso服务器正在侦听的位置。
你好@msalvadores。感谢您的回复。你是什么意思的实体http://myorganisation.com/ontologies/ontology1?我需要在互联网上拥有一些域名才能发布我的本土论文?我可以在本地主机上执行吗? – aumanets 2011-04-04 20:58:46
该实体是一个URI而不是一个URL,这意味着它不需要被解析。所以你可以放任何你想要的URI,你不需要拥有域名。 – 2011-04-05 07:48:13
我在卷曲中出现错误“您无权访问此位置。”我需要在virtuoso中配置此实体** http://myorganisation.com/ontologies/ontology1**? – aumanets 2011-04-05 09:00:54
从Virtuoso指挥官(http:cname:8890 /指挥)你可以到“RDF - > RDF商店上传”选项卡,您可以从文件系统或URL位置上传RDF数据集文件。
Virtuoso Jena Provider可用于使用Jena Franework查询Virtuoso Quad商店。
这甚至有可能吗? – aumanets 2011-04-04 07:44:34
在大多数三联商店中,断言本体与断言任何其他普通RDF数据完全相同。看到我的答案下面有参考文献和指针来做到这一点。我希望它有帮助。 – 2011-04-04 08:20:45