geosparql

时间:2017-12-02 11:02:49

标签: sparql ontology protege geosparql

我启发了this篇文章,并使用geosparql本体创建了一个本体论。创建了名为Area和Park的两个类作为geosparql的Feature类的子类。 3个区域实例和1个Park实例被添加到本体中。然后,创建几何实例(asWKT)作为Geosparql的Polygon类的子类。几何实例通过hasGeometry对象属性(The created ontology and instances)与Park和Area实例相关联。

我尝试进行拓扑查询以找出Park实例中的哪些Area实例。所以,我使用Protégé4.3的sparql查询插件运行了以下查询。

PREFIX geosparql:http://www.opengis.net/ont/geosparql# PREFIX su:http://www.example.org/su#

SELECT?x?y 在哪里{ ?x su:Area; geosparql:hasGeometry?xgeo。 苏:公园; geosparql:hasGeometry?ygeo。 ?xgeo geosparql:sfWithin?ygeo。 }

没有结果返回但我知道Park实例中有两个Area实例。我没有发现问题。我不使用geosparql和protégé查询拓扑关系吗?

1 个答案:

答案 0 :(得分:1)

问题是你没有导入sfWithin实体的“好用”。

之间存在差异 http://www.opengis.net/ont/geosparql#sfWithinhttp://www.opengis.net/def/function/geosparql/sfWithin

实际上,我还不明白如何在Protégé中继续这个陈述,我很抱歉。

如果你真的需要使用这样的拓扑查询,你可以改用GraphDB,这为GeoSPARQL实现了一个很好的工作插件。