问题标签 [redland]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
564 浏览

python - 将非常大的 RDF 三元组加载到 iGraph -> 快速顶点查找?

我需要将 DBPedia 图的一个子集加载到 iGraph 中以计算一些图统计信息(例如节点中心性,...)。我使用 Redlands libRDF python 库加载 DBPedia 三元组。每个节点都与一个 URI(唯一标识符)相关联。

我在将图表加载到 iGraph 时遇到了一些问题。这就是我所做的:

1)读三行(主语、谓语、宾语)

2)使用以下算法获取或创建顶点(带属性)

问题是我的脚本非常慢,我需要加载 25M 三元组。每个节点都是唯一的,但在三重文件中多次找到。因此,我需要在创建边缘之前执行查找。您能告诉我“查找”方法是否使用索引进行查找(哈希表,...)?顶点查找的复杂性是多少?你会怎么做?

非常感谢

0 投票
1 回答
178 浏览

pipe - 如何将数据通过管道传输到 rapper(Redland 的命令行 RDF 解析器)

如何将数据传输到 rapper(Redland 的命令行 RDF 解析器)?以下不起作用:

0 投票
1 回答
96 浏览

rdf - rdfland rdfproc:添加 RDF 文字

在 rdfproc/redland 如何添加类型化文字?手册页说:

我的 rdf 文件:

我试过了:

但出现以下错误:

一个简单的“添加”就可以了。

版本:

0 投票
3 回答
200 浏览

c++ - 在 MacOS X 环境下通过 Virtuoso 的 ODBC/iODBC 将 Redland 连接到 Virtuoso

为了在我的 MacOS X 环境中安装 Virtuoso,我使用了 brew 端口,即:

通过这样做,它自动安装了一些 ODBC/iODBC 驱动程序,这些驱动程序不能被任何其他 unixodbc 设置覆盖。特别是如果我尝试链接这样的库:

顺便说一句,我不想​​取消链接这个版本。所以我尝试从头开始编译 Redland 并从 GitHub 下载。特别是,我使用了两种可能的配置:

手动添加rdf_hash_internal.hrdf_heuristics.h在我的项目中后,一切顺利,一切都得到编译和链接。在我的 C++ 应用程序中,我尝试使用以下代码访问数据库:

如果我禁用事务,无论如何我在“rdf_storage_virtuoso.c”的第 941 行收到以下错误:

因此,我认为 ODBC/iODBC 级别存在连接错误。顺便说一句,我可以使用以下命令连接到 virtuoso:

有没有办法将 Redland 库与 Virtuoso 的 ODBC 库连接起来?提前致谢。

0 投票
0 回答
59 浏览

java - 将 owl 解析为 ntriples 并将它们存储在单独的文件中

尝试待办事项:

1) 对“data”文件夹中的每个文件执行 Rapper 功能,以从 owl 文件中获取 ntriples。

2) 将生成的 ntriples 复制到另一个文件中作为 'ntriples/output_file.ntriples'

3)命令:rapper -o ntriple ./data/file1.owl > ./ntriples/file2.ntriple

使用的工具:

1)说唱歌手雷德兰图书馆

2)来自Devdaily的系统命令执行器代码

3) Eclipse IDE

问题

1)当我执行以下代码时没有问题:

该代码只是尝试为“数据”文件夹中的每个文件执行 rapper 命令并将其存储在 parsedTriples 变量中。这工作正常

2)当我尝试将结果复制到文件而不是将其保存在变量中时,它不起作用但没有错误!

代码:(getTriples() 的定义保持不变)

项目结构:

项目结构

另外,我尝试给出路径“./ntriples/”而不是“../ntriples/”。我不确定为什么会发生这种情况,需要一些指示!提前致谢 !!

0 投票
1 回答
81 浏览

r - 如何在 Redland RDF 三元组中定义对象类型

我正在尝试使用 Redland R RDF 实现来构建一个简单的 RDF 存储,但在编写非文字三元组时遇到问题。在代码中,设置worldand之后model,而文字三元组

给出了预期

编码

给出_:a:John而不是<a:John>

在 SPARQL 的折叠中不匹配

我在这里做错了什么?请注意,此应用程序本身并不查看任何委托数据库,因为我只是使用三元组来利用 SPARQL 查询的逻辑功能。最初是在另一个包中完成的,但由于技术原因我正试图搬到雷德兰。

0 投票
1 回答
255 浏览

c++ - 使用 Raptor RDF Parser Toolkit 生成 FOAF rdfxml 文件

我想使用Raptor RDF Parser Toolkit编写一个 C/C++ 程序来生成以下输出(使用RDF Validator检查):

数据模型的三元组如下所示:

仅作记录,我使用的是Visual Studio 2017 x64。我想出了以下代码:

生成的文件如下所示:

我在这里做错了什么?我想产生与上图相同的结果。创建标签而不是<foaf:Person>标签<rdf:Description>

Turtle 输出 ( raptor_new_serializer(world, "turtle")) 如下所示:

0 投票
0 回答
38 浏览

rdf - 从 Redland 图中删除没有上下文的三元组

我正在使用 Redland librdf 库,并希望从图中删除所有没有关联上下文节点的三元组。我尝试将NULL其作为上下文节点指针传递给librdf_model_context_remove_statements,但这会导致rdf_model.c:1358: (librdf_model_context_remove_statements) assertion failed: object pointer of type librdf_node is NULL.

是否有任何我错过的 API 调用来执行此操作,或者我是否必须迭代图中的每个三元组并检查上下文?

如果 Dave 正在阅读,为什么不允许传递 NULL?

0 投票
0 回答
37 浏览

python - Redland Python 绑定非常慢的插入

我正在测试 Redland 的 Python 绑定。从一些简单的测试来看,插入数据似乎比 RDFLib 慢很多很多倍。一个简单的脚本,例如:

我正在使用支持 BDB 的 Python 3.5、Redland 1.0.17(手动编译)。

运行需要几分钟,而 RDFLib 需要几秒钟。10K 三元组现在是一个很小的数字,以至于这样的性能会使库几乎无法用于大多数生产场景;所以我想知道我是否在这里做错了什么。

谢谢您的帮助,

斯特凡诺

0 投票
0 回答
41 浏览

rdf - rdfproc took forever to parse a 8.33 MB file?

I'm trying to combine all my ttl files into one data dump, but when I try to do

It's taking forever, still waiting..., making me suspect it has stuck somewhere.

Is there a better alternative which can do this faster? Other than I manually open all files in Protégé, which is what I have been doing, and find it time-consuming.

The file, if you need to test: https://github.com/miranda-zhang/cloud-computing-schema/blob/master/example/sparql-generate/result/azure/v1.0.1/2019-03-07/vm_base.ttl


Edit I did a test with riot merging 2 files, but why does it give duplicated @prefix declarations?

I tested with files

  1. https://github.com/miranda-zhang/cloud-computing-schema/blob/master/example/sparql-generate/result/device.ttl
  2. https://github.com/miranda-zhang/cloud-computing-schema/blob/master/example/sparql-generate/result/qos_property.ttl