如何在TDB中查询特定模型?

时间:2012-07-08 05:41:06

标签: sparql jena

我构建了一个包含许多命名模型的TDB数据集,所有这些模型都包含大量数据。我知道我可以从TDB数据集中获取特定模型,然后查询此模型,但这样,需要大容量内存。

有了这个:选择?s?p?o {graph?g {?s?p?o}。},我可以查询所有命名的模型数据。有什么方法可以查询具体的数据吗?

1 个答案:

答案 0 :(得分:3)

是的,只需将?g替换为指定模型的URI,例如

SELECT * WHERE
{
  GRAPH <http://example.org/graph>
  { ?s ?p ?o }
}

另一种方法是保留?g,而是在查询中添加一些FROM NAMED子句,这些子句限制GRAPH条款考虑的命名图,例如。

SELECT
FROM NAMED <http://graph/1>
FROM NAMED <http://graph/2>
WHERE
{
  GRAPH ?g { ?s ?p ?o }
}