首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我如何在Jena TDB中使用Fuseki

我如何在Jena TDB中使用Fuseki
EN

Stack Overflow用户
提问于 2014-07-17 08:03:24
回答 2查看 4.7K关注 0票数 4

我有个问题要问你。

我有一个triplestore "Jena TDB“,我读过可以为本地存储的RDF数据设置SPARQL端点。特别是,我在文献中看到,与Jena TDB一起使用的是Fuseki。我以这种方式在Jena TDB中加载了我的文件rdf:

代码语言:javascript
复制
public void store(){
    String directory = "C:\\tdb";
    String source = "C:\\file1.rdf";
    String source1 = "C:\\file2.rdf";
    Dataset dataset = openTDB(directory);
    Model tdb = loadModel(source, dataset);
    dataset.addNamedModel("File1", tdb);

    Model tdb1 = loadModel(source1, dataset);
    dataset.addNamedModel("File2", tdb1);

    tdb.close();
    tdb1.close();
    dataset.close();
}


public Dataset openTDB(String directory){
    // open TDB dataset
    Dataset dataset = TDBFactory.createDataset(directory);
    return dataset;
}


public Model loadModel(String source, Dataset dataset){

    Model tdb = ModelFactory.createDefaultModel();
    FileManager.get().readModel( tdb, source, "RDF/XML" );
    return tdb;
}

我正在阅读Apache站点上的Fuseki文档和这篇文章Desktop SPARQL client for Jena (TDB)?,但我遇到了问题。

特别是,我下载了Fuseki发行版并解压缩了它。然后,我打开命令提示符,到了解压缩fuseki的文件夹。然后,我启动了这个命令:

代码语言:javascript
复制
fuseki-server --update --mem /C://TDB

我打开了本地主机上的浏览器:3030地址。在浏览器上,我可以选择dataset (在C://TDB中),并且可以启动查询,例如:

选择*{图;{s ?p ?o }}

查询结果是:

错误404:未找到

为什么?我做错了什么?

Desktop SPARQL client for Jena (TDB)?文章中,我读到我必须运行以下命令:

java -jar fuseki-0.1.0-server.jar -更新-loc数据/dataset

但我不明白谁是数据和数据集。在我的例子中,我怎么知道这些价值观呢?这是我的错误吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-07-17 08:49:28

你是对的,因为你还没有理解每个论点的意图。使用您的命令,您所做的是创建一个空的内存数据集,并为它分配dataset路径/C://TDB,这几乎肯定不是您想要的。

--loc参数用于将路径传递给包含TDB数据库的目录,而/dataset路径是您希望通过Fuseki访问它的数据集路径。

因此,例如,您可以执行以下操作:

代码语言:javascript
复制
java -jar fuseki-VER-server.jar --update --loc /path/to/database /ds

注意到,我在这里使用VER作为Fuseki版本的占位符,因为这个值将取决于您下载的Fuseki版本。在撰写本答案时,最新版本是1.0.2

此命令针对位于/path/to/database中的具有/ds数据集路径的TDB数据库启动Fuseki。因此,您可以将选定的SPARQL客户端指向http://localhost:3030/ds/query进行查询,或者将http://localhost:3030/ds/update指向进行更新。

如果您正在Windows上运行(从您的问题中可以看出这一点),那么您将执行以下操作:

代码语言:javascript
复制
java -jar fuseki-VER-server.jar --update --loc C:\TDB /ds

它使用C:\TDB的dataset路径针对位于/ds中的TDB数据库启动Fuseki,因此将应用与前面示例相同的URL。

票数 6
EN

Stack Overflow用户

发布于 2015-03-22 00:08:08

代码语言:javascript
复制
first download jena fusaki from

https://jena.apache.org/download/index.cgi

un-zip the file and copy the "jena-fuseki-1.0.1" to c drive
open cmd
type for accesing the folder

"cd C:\jena-fuseki-1.0.1"

然后键入

代码语言:javascript
复制
"java -jar fuseki-server.jar --update --loc data /dataset"

最后,打开浏览器并键入

代码语言:javascript
复制
"localhost:3030/"

请记住,您必须首先去核环境可验证(位于system中,然后预置选项卡),并在“系统可验证”中编辑变量名称调用"Path“到

代码语言:javascript
复制
"C:\jena-fuseki-1.0.1"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24798024

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档