【发布时间】:2017-01-27 10:59:32
【问题描述】:
我正在为 geosparql 苦苦挣扎,尤其是 geo:Within。
我可以在以下位置找到的文档:open gis documentation 声明它需要 geo:SpatialObject 并且 geo:Feature 是 geo:SpatialObject 的一种类型。我有许多功能,它们的位置都有点。当我跑步时
SELECT Distinct * WHERE {
?g geo:asWKT ?gWKT .
}
我返回了 25 个点,所有这些点都应该在下面定义的(相当大的)多边形中。
然而
SELECT * WHERE {
?g geo:asWKT ?gWKT .
FILTER geof:within( ?g ,"POLYGON(51.45, -0.115,51.52,-0.08)"^^geo:wktLiteral ) .
}
导致“内部服务器错误”。
任何想法我做错了什么?我是 GeoSPARQL 的新手,但对标准 SPARQL 相当熟悉。
【问题讨论】:
-
您是否启用了对多边形的支持?如此处所述:docs.stardog.com/#_enhanced_polygons
-
我确实做到了。我还用我的多边形定义修复了错误,现在是
SELECT Distinct ?g WHERE { ?g geo:asWKT ?gWKT . FILTER (geof:within( ?g ,"POLYGON((-0.05 51.1 , 0.25 51.1 ,-0.05 52,0.25 52 ))"^^geo:wktLiteral )) } -
进一步说:我相信我已经启用了对多边形的支持,但我做错了。为了他人的利益:jts-core jar 文件需要位于名为
ext的文件夹中,您需要在stardog 安装目录中的服务器下创建该文件夹