我已经下载了Twinkle sparql查询工具,但在编写我从mondial手册here获得的以下查询时,我收到错误:
prefix mon: <http://www.semwebtech.org/mondial/10/meta#>
prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
SELECT ?N ?P
FROM <file:mondial.n3>
WHERE {?X rdf:type mon:Country . ?X mon:name ?N . ?X mon:population ?P .
FILTER (?P > 10000000) }
ORDER BY DESC(?P)
查询异常错误:
com.hp.hpl.jena.query.QueryException: Unexpected error executing query
错误在于工具,有关如何解决这个问题的任何建议吗?
答案 0 :(得分:1)
尝试从命令行启动Twinkle。发生错误时,应用程序会将有关错误的更多详细信息记录到标准输出中,因此请确保您已看到它。
(例如,问题可能就像Twinkle找不到file:mondial.n3
引用的文件一样简单 - 当前工作目录可能不是您所期望的;因此您可能想要提供一个文件:带有绝对路径的URI等。)
答案 1 :(得分:0)
Mondial数据集有多大?
Twinkle在引擎盖下使用ARQ并将数据加载到内存数据集中以便查询它,因此您可能尝试加载太大的数据集并遇到Twinkle隐藏的OOM错误。
您可以尝试使用标准JVM args启动Twinkle时增加JVM堆大小,但如果数据集特别大,则无法在没有大量RAM的情况下将其加载到JVM中。此外,对于大型数据集,内存数据集的查询性能会很差。