首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RDF4J支持GeoSPARQL吗?

RDF4J支持GeoSPARQL吗?
EN

Stack Overflow用户
提问于 2016-09-15 16:12:01
回答 1查看 561关注 0票数 2

我使用的是RDF4J工作台:

代码语言:javascript
复制
System Information
Application Information
Application Name    RDF4J Workbench
Version 2.0.1
Runtime Information
Operating System    Windows 8.1 6.3 (amd64)
Java Runtime    Oracle Corporation Java HotSpot(TM) 64-Bit Server VM (1.8.0_101)
Process User    Greg
Memory
Used    203 MB
Maximum 3463 MB

虽然我可以在github上的GeoSPARQL存储库中看到对RDF4J的引用,但目前似乎还没有实现它。我在清除的“具有RDFS+SPIN支持的内存存储库”存储库上运行了这个SPARQL更新查询,以便在RDF4J工作台上设置一个测试:

代码语言:javascript
复制
PREFIX geo: <http://www.opengis.net/ont/geosparql#>
PREFIX sf: <http://www.opengis.net/ont/sf#>
PREFIX sxxicci: <http://www.disa.mil/dso/a2i/ontologies/PBSM/Interface/SXXIComplianceCheckIndividuals#>

INSERT DATA
{
     sxxicci:aPolygon geo:asWKT "Polygon((0.5 -0.5, 0.5 0.5, -0.5 0.5, 0.5 -0.5))"^^sf:wktLiteral .
}

这将导致存储库中有一个事实。

现在,我尝试使用以下查询查找与文字多边形的重叠,该查询应该找到我在上面设置的一个事实:

代码语言:javascript
复制
PREFIX geo: <http://www.opengis.net/ont/geosparql#>
PREFIX geof: <http://www.opengis.net/def/function/geosparql/>
PREFIX sf: <http://www.opengis.net/ont/sf#>

SELECT DISTINCT * 
WHERE 
{
     ?bGeom geo:asWKT ?bWKT . 
     FILTER (geof:sfIntersects(?bWKT, "Polygon((1 0, 1 1, 0 1, 1 0))"^^sf:wktLiteral))
}

此查询以HTML形式给出一个错误结果,我已经呈现了该结果:

这似乎表明

  1. 我在设置这个测试时做错了什么(如果是,什么?)或
  2. RDF4J不支持GeoSPARQL (至少不支持geof:sfIntersects函数)

1和/或2或其他什么?

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2017-01-12 21:59:59

我在maven应用程序中使用RDF4J API也遇到了类似的问题,问题是GeoSPARQL函数是在rdf4j-query代数-geosparql包中定义的;默认情况下不包括这个包。将其添加到POM之后,查询将按预期工作。

我不太熟悉应用程序服务器,但是快速查看一下部署在Tomcat上的rdf4j工作台,就会发现lib/目录中缺少的库。一旦我手动添加并重新加载应用程序,空间查询就会正确地解析和执行。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39515776

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档