可选备用SPARQL模式的替代方案? [英] Alternatives to the OPTIONAL fallback SPARQL pattern?

查看:12
本文介绍了可选备用SPARQL模式的替代方案?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要为目标集中的每个资源检索单个图像,并按优先级顺序测试多个非独占谓词。

我正在currently使用标准的可选后备模式,大致如下

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 }

}

但这种方法在一些后端被证明是麻烦的:有人知道有什么简单/高效的替代方法吗?

推荐答案

选项有什么问题?重复使用?i

另一种方法是获取每个备选方案,然后选择第一个方案集。

select ?r ?i where {

    ?r a dbo:Automobile .
    optional { ?r <http://dbpedia.org/ontology/thumbnail> ?i1 }
    optional { ?r <http://xmlns.com/foaf/0.1/depiction> ?i2 }
    optional { ?r <http://xmlns.com/foaf/0.1/logo> ?i3 }
    optional { ?r <http://schema.org/image> ?i4 }
    BIND(COALESCE(?i1,?i2,?i3,?i4) AS ?i)
}

这篇关于可选备用SPARQL模式的替代方案?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆