是否可以在通过组合变量和文字创建的 SPARQL 三元组中创建主题?
我的情况是这样的:
OPTIONAL
{
$object dc:identifier $identifier .
<info:fedora/abc:123/MODS> fedora-view:disseminationType $mods .
<info:fedora/abc:123/TN> fedora-view:disseminationType $tn
}
$object 看起来像这样:<info:fedora/abc:123>
$identifier 看起来像这样:abc:123
我需要的是:<info:fedora/abc:123/MODS>
我不能使用 <info:fedora/$identifier/MODS>
但是还有另一种方法可以将变量和文字“粘合”在一起吗?
最佳答案
与 SPARQL 1.1 ,您应该能够使用 BIND()、STR()、IRI() 和 CONCAT() 的组合来执行您想要的操作。像这样的东西:
SELECT * WHERE {
$object dc:identifier $identifier .
BIND(IRI(CONCAT(STR($object), "/MODS")) AS $new)
$new fedora-view:disseminationType $mods .
$new fedora-view:disseminationType $tn .
}
关于xml - SPARQL:将变量与文字组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9282846/