【问题标题】:Topology query in geosparqlgeosparql 中的拓扑查询
【发布时间】:2018-05-16 08:57:11
【问题描述】:

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

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

前缀 geosparql:http://www.opengis.net/ont/geosparql# 前缀苏:http://www.example.org/su#

选择 ?x ?y 在哪里 { ?x a su:面积; geosparql:hasGeometry ?xgeo 。 ?y a su:Park ; geosparql:hasGeometry ?ygeo 。 ?xgeo geosparql:sfWithin ?ygeo 。 }

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

【问题讨论】:

    标签: sparql ontology protege geosparql


    【解决方案1】:

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

    两者之间有区别 http://www.opengis.net/ont/geosparql#sfWithinhttp://www.opengis.net/def/function/geosparql/sfWithin

    实际上,我还不明白如何在 Protégé 中继续使用此声明,对此我深表歉意。

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

    【讨论】:

    • 其实用在一个SPARQL FILTER中,这个语句调用了一个外部的Java函数,实现了RCC8、9DE-IM,……就像我说的,GraphDB实现了这样的功能。
    猜你喜欢
    • 1970-01-01
    • 2020-12-18
    • 2017-10-11
    • 1970-01-01
    • 1970-01-01
    • 2018-07-19
    • 2011-08-19
    • 2011-03-29
    • 2023-03-16
    相关资源
    最近更新 更多