我有一个庞大的语义网络,它有其特定的Java API用于查询数据(存储在多个Lucene索引中的数据)。
我想要更具交互性(比Java编程更好)的查询方式,比如Datalog接口(或者您可以提议的其他方式!),这样我就可以公开一些关系,然后使用conjunctive queries来提取所需的数据,而且一切都足够简单,可以编写到一个虚拟的交互式shell中。
有什么可能性可以在不重新发明轮子的大部件的情况下实现这一目标?(例如,不需要自己编写数据记录应答系统)
集成Datalog前端来提取数据是否更好(假设存在这种可能性)?或者最好是将数据导出到RDF中,然后使用一些可用的查询/推理工具?哪个?
发布于 2013-06-06 02:38:52
我知道你说过你不一定要做很多Java编程,但是Jena的general purpose rule engine包括一个反向链接规则推理器,它是一个数据记录引擎。规则语言相当简单,如果需要,可以使用Java对其进行扩展。如果您编写了一组规则,则可以将它们提供给推理器,将推理器与RDF模型绑定以生成推理模型,然后可以使用Java API查询该推理模型,或者使用SPARQL端点公开推理模型(例如,使用Jena的Fuseki)。
如果规则不是静态的和预先固定的,您可以将webabb接口扩展到Fuskei,以提供一个“规则编辑”部分,您可以在其中提供规则集并在数据集上运行它们。
https://stackoverflow.com/questions/16944990
复制相似问题