我使用的是geonames数据集,有两个属性gn:officialName
和gn:alternateName
都包含rdf:langString
个值。我有一个CONSTRUCT查询,我希望将两个值合并为一个。这可能与SPARQL 1.1有关吗?
加成
如果没有可用的语言环境翻译,如何确定一个属性值的优先级并仅使用另一个属性?
答案 0 :(得分:0)
您可以在CONSTRUCT查询的WHERE部分中将它们与BIND(... AS?var)组合,并在CONSTRUCT模板中使用?var。
BIND ( CONCAT(?v1, ?v2) AS ?var)
如果?v1和?v2是不同的语言,则需要使用str
BIND ( CONCAT(str(?v1), str(?v2)) AS ?var)
如果需要,可以使用strlang
设置语言。