gpt4 book ai didi

java - 有没有办法以编程方式将 ttl 文件上传到 Fuseki?

转载 作者:行者123 更新时间:2023-12-02 09:57:47 28 4
gpt4 key购买 nike

嗨,我创建了一个 java 程序,在其中获取 ttl 文件并更新海龟语句。由于我有一个连接到 fusion 来查询 ttl 文件的 Web 界面,我想使用新数据重新上传 ttl 文件。有没有办法以编程方式代替 Fuseki 界面来执行此操作?

我正在尝试从 java 访问命令提示符并使用 s-put 命令,但我收到“没有这样的文件或目录”错误:

public void updateFuseki() throws IOException{
Runtime rt = Runtime.getRuntime();
Process pr = rt.exec("s-put http://localhost:3030/Test/ default Definitions.graph.ttl");
}

我目前只有一个名为 Test in fusion 的数据集,Definitions.graph.ttl 与 Jena 位于同一包中

最佳答案

Fuseki 用于远程上传数据的 API 是 SPARQL Graph Store HTTP Protocol ,它是 SPARQL 标准的一部分。 s-put 命令是一个使用此 API 的简单客户端应用程序(用 Ruby 编写)。

由于您的应用程序是用 Java 编写的,因此最好为此 API 使用 Java 客户端。

您已经用 jena 标记了您的问题,所以我假设您的 Java 应用程序已经使用 Jena?耶拿包括a client library for the Graph Store Protocol 。一个简单的用法是这样的:

String serviceURL = "http://localhost:3030/Test/";
try (RDFConnection conn = RDFConnectionFactory.connect(serviceURL)) {
conn.put("Definitions.graph.ttl");
}

关于java - 有没有办法以编程方式将 ttl 文件上传到 Fuseki?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55865903/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com