我需要为目标集中的每个资源检索单个图像,并使用优先级顺序测试多个非独占谓词。可选的备用SPARQL模式的替代方案?
我使用沿着
select ?r ?i where {
?r a dbo:Automobile .
optional { ?r <http://dbpedia.org/ontology/thumbnail> ?i }
optional { ?r <http://xmlns.com/foaf/0.1/depiction> ?i }
optional { ?r <http://xmlns.com/foaf/0.1/logo> ?i }
optional { ?r <http://schema.org/image> ?i }
}
行一个标准的可选备用模式,但这种做法是谈到了将一些后台麻烦currently:是任何人都知道任何简单的/有效的替代方案吗?
你见过[SPARQL(1.1)]的优先模式(http://answers.semanticweb.com/questions/20682/preference-patterns-for-sparql-11)吗?这里发布的大多数答案似乎都适用于那些较旧的方法。 –
唉,是的。我正在寻找一种解决方案,它是i)合理轻量级的,并且ii)可以跨不同的后端进行移植,而无需调整。不幸的是,当“?a dbo:Automobile”被复杂的实际模式所取代时,可选后备模式(无论是否使用合并)的两种变体倾向于引发一系列特定于后端的查询执行错误。我希望在SO上有新的东西;-) –
那么,你已经证明它的例子与已经得到解答的问题非常相似。如果您的实际问题存在差异,那么它们很重要,我想您将不得不在这里包含它们以获得不同的答案。 –