0

我想为我编译的 RDF 模型创建一个轻微的通用查询接口。

我必须访问我的数据:

1-使用内置的耶拿迭代器/状态/资源/等....

2-创建一些 SPARQL

但是为了创建 SPARQL 或 RDQL,我必须调用将我的 SPARQL 变量绑定到 java 变量,因为在我的 SPARQL 中我可以有多种变量,我不知道如何使其通用。

那么使 RDF 查询接口通用化的最佳方法是什么?

4

1 回答 1

4

使用 SPARQL,而不是 RDQL。今天的大多数系统都实现了作为 W3C 标准的 SPARQL。使用 SPARQL,就像在 SQL 中一样,您可以使用*绑定在三元组模式中出现的所有变量。例子:

SELECT * WHERE {
   ?s a :Person .
   ?s :name ?name .
   ?s :birthdate ?birthdate .
}

大多数 SPARQL 客户端库允许您获取所有变量。例如,在 Jena ARQ 中,您会发现QuerySolution有一个方法 Iterator<String> varNames(),该方法将返回所有变量名称。您可以遍历这些并使用get同一类中的方法来检索行值。

SPARQL 的巨大优势在于,由于它是一个标准,您可以使用遵循规范的不同三元组存储。

于 2012-04-30T15:38:43.497 回答