在Prolog程序中,我执行以下SPARQL查询,该查询告诉我,对于给定名称,是否有一些人具有此名称(因此,如果发现超过50次出现,我将此名称视为人的正确名称):
?- sparql_query('select COUNT(*) where {?place a dbpedia-owl:Place ; rdfs:label "Pescara"@it.}', Row, [ host('dbpedia.org'), path('/sparql/')]).
false.
问题是今天输出总是 FALSE ,这很奇怪,因为直到昨天,它运行良好!现在我也尝试将其执行到Virtuoso endpoint,但是应用程序没有启动,并且今天给出了以下错误消息:
Virtuoso 08C01错误CL ...:群集无法连接到主机4 22204错误111
也许这种奇怪的行为取决于一些DBpedia的问题?或者它可能是别的吗?有人有类似的问题吗?
答案 0 :(得分:5)
您可以在网络浏览器中看到的答案是重要的部分;当您尝试连接服务器时,服务器似乎已关闭或不可用。查询似乎运行得很好并返回1
。
select COUNT(*) where {
?place a dbpedia-owl:Place ;
rdfs:label "Pescara"@it.
}
如果您严格依赖于能够运行实时查询,则应考虑downloading所需的DBpedia数据的可能性,并在本地SPARQL端点(例如Fuseki)中托管。