【发布时间】:2014-03-06 15:47:48
【问题描述】:
我正在与 Jena 和 Virtuoso 合作托管一些 RDF 数据。 我计划将 Jena 作为接口,将 Virtuoso 作为后端存储,因为 Jena 似乎更容易扩展,而且 Virtuoso 具有一些不错的功能,例如将关系数据转换为 RDF。 我的问题是 Jena 中的属性函数(描述为 here)以及我想要实现的那些,当 virtuoso 用作底层存储时似乎没有任何效果。
使用 TDB (TDBFactory.createDataset) 创建数据集但使用 Virtuoso(VirtGraph、VirtDataset 和尝试 QueryExecutionFactory.sparqlService)时查询不工作的示例:
PREFIX apf: <java:com.hp.hpl.jena.sparql.pfunction.library.>
SELECT *
WHERE
{ ?s apf:str "Test" }
LIMIT 5
我正在寻找一种方法让 Jena/ARQ 对发送给 Virtuoso 的查询结果进行预处理或后处理。
如果无法做到这一点,请指出其他方向。在 Virtuoso 中实现属性函数或使用 Sesame 或其他易于扩展的系统代替是我自己的初步想法。
【问题讨论】: