1

我创建了应用程序,它与 openrdf sesame 和 owlim 模块一起使用。最近,我需要更新 owlim 的许可证密钥(我收到了最新 owlim 版本的密钥),所以我也不得不更新 sesame。

应用程序是用 sesame 2.6.0 和 owlim 4.3 构建的,现在更新到 sesame 2.6.8 和 owlim 5.2

我对使用 owlim 模块的 sparql 查询有疑问。

PREFIX geo: <http ://www.w3.org/2003/01/geo/wgs84_pos#>
PREFIX opgeo: <http ://something.com/OPropertiesGeo#>
PREFIX opnet: <http ://something.com/OPropertiesNet#>
PREFIX omgeo: <http ://www.ontotext.com/owlim/geo#>

SELECT  (?doorwayID as ?address) ?longitude ?latitude ?mobile ?streetName ?houseNumber WHERE {

    ?doorwayID geo:long ?longitude . 
    ?doorwayID geo:lat ?latitude . 
    ?doorwayID opnet:mobile ?mobile .  
    ?specialzoneID geo:lat ?centerlat . 
    ?specialzoneID geo:long ?centerlong . 
    ?specialzoneID geo:radius ?radius . 
    ?doorwayID omgeo:nearby(?centerlat ?centerlong ?radius) . 
    ?doorwayID opgeo:street ?streetID . 
    ?streetID opgeo:name ?streetName . 
    OPTIONAL { ?doorwayID opgeo:houseNumber ?houseNumber . } 

}

这应该选择附近函数中定义的区域中的每个点 - ?doorwayID omgeo:nearby(?centerlat ?centerlong ?radius)。,问题是结果集是空的。

我认为这与我之前的帖子(http://stackoverflow.com/questions/11780014/sparql-delete-queries-stop-working-after-update/11787809#11787809)有关,但经过两个小时的尝试和谷歌搜索后,我仍然没有找到正确的解决方案:-/

4

1 回答 1

2

升级后,您是否使用以下方法重新创建了地理空间索引:

前缀 ontogeo:http ://www.ontotext.com/owlim/geo# INSERT DATA { _:b1 ontogeo:createIndex _:b2。}

?

于 2012-08-04T08:46:30.910 回答