您好我有一个SPARQL查询,其中包含where子句
...
optional {
?v foo:thing ?something .
$dontgetthis
?v bar:somethingelse ?otherthing .
...
}
...
现在,除了一件事,我得到了大部分内容。我没有得到$dontgetthis
。这是什么意思? $dontgetthis
未在查询中的任何其他位置使用。
答案 0 :(得分:4)
美元符号是SPARQL中的合法变量前缀,因此您可以使用$v
之类的变量,但这似乎不是正在发生的事情。你可以在WHERE中拥有一个可选项,因此像这样的查询是合法的:
prefix foo: <>
prefix bar: <>
select * where {
optional {
?v foo:thing ?something .
?v bar:somethingelse ?otherthing .
}
}
我想知道你在$dontgetthis
里面看到的查询是否是一个字符串,其中$dontgetthis
将由其他代码替换为其他代码。它本身不是合法的SPARQL。