0

目前,我发现在从文件加载模型后,我可以在 rdf 中使用 Jena 中的模型(模型)语法进行查询,如果我应用 sparql 查询,它会给我相同的输出。所以,我想知道,没有 sparql 是不是一个好方法?虽然我已经用一个小的 rdf 文件对其进行了测试。我还想知道我是否使用 Virtuoso 我可以使用没有 sparql 的模型语法进行操作吗?

提前致谢。

4

1 回答 1

1

我不太确定我是否理解你的问题。如果我可以解释一下,我想你在问:

是否可以使用 Jena ModelAPI 而不是使用 SPARQL 查询和操作 RDF 数据?如果后端商店是 Virtuoso 有区别吗?

假设这是对问题的正确重新表述,那么第一部分肯定是肯定的:您可以通过ModelOntModelAPI 操作 RDF 数据。事实上,我想说这就是大多数 Jena 用户所做的事情,尤其是对于小型查询或更新。我个人发现直接使用 API 会更简洁,直到复杂程度达到一定程度。之后,如果我用 SPARQL 表达查询,我的代码会更清晰、更简洁。显然,情况会产生影响:如果您正在使用本地存储和远程 SPARQL 端点的混合(发送查询字符串是您唯一的选择),那么您可能会发现始终使用 SPARQL 的一致性使您的代码更清晰。

关于 Virtuoso,我没有任何直接的经验可以提供。据我所知,Virtuoso Jena ProviderModel使用 Virtuoso 存储作为存储层完全实现了 API 的功能。直接 API 或使用 SPARQL 查询是否会给您带来性能优势,您应该使用数据和典型查询模式通过基准测试来衡量。

于 2011-10-13T09:47:22.790 回答