Sparql MarkLogic中的命名图支持

Sparql MarkLogic中的命名图支持,sparql,marklogic,marklogic-8,named-graphs,Sparql,Marklogic,Marklogic 8,Named Graphs,我不理解MarkLogic中如何支持来自命名图。我正在试验SPARQL查询,以找到三元组来自哪个集合。结果真令人困惑。例如: select * FROM <http://x.y.z/c> FROM NAMED <http://x.y.z/c> WHERE { # GRAPH ?g {?s ?p ?o} } 但不是这个: select * FROM NAMED <http://x.y.z/c> WHERE { {?s ?p ?o} } 它

我不理解MarkLogic中如何支持来自命名图。我正在试验SPARQL查询,以找到三元组来自哪个集合。结果真令人困惑。例如:

select *
FROM <http://x.y.z/c>
FROM NAMED <http://x.y.z/c>
WHERE {
#  GRAPH ?g 
  {?s ?p ?o}
  }
但不是这个:

select *
FROM NAMED <http://x.y.z/c>
WHERE {
  {?s ?p ?o}
  }

它返回一个空集。添加GRAPH?g线会导致返回与上面相同的错误。我真的很困惑。有人能解释一下这种行为吗?

MarkLogic在图形的实现中使用集合。在中有一个注释提到了收集词典的必要性

在SPARQL查询中使用图构造时,必须启用集合词典。您可以从数据库配置页面或管理界面启用集合词典

我要补充的是,您还可以通过启用集合词典

select *
FROM NAMED <http://x.y.z/c>
WHERE {
  {?s ?p ?o}
  }