问题标签 [geosparql]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1191 浏览

sparql - 如何使用 geosparql 计算两点之间的距离

我正在尝试使用计算两点之间的距离geosparql。我有如下图所示的对象(相同的属性,不同的值):

在此处输入图像描述

我正在执行该查询sparql

在不增加距离的情况下,我能够得到以下结果:

在此处输入图像描述

但此刻我添加距离我得到空行。任何想法?

笔记:

  • 我需要计算两个 wifipoints(NYWifiFree103 和 NYWifiFree105)之间的距离,它们每个都有一个点。

  • 我正在stardog 中执行该查询。

**编辑**

我简化了查询:

当我设置geof:distance两个硬编码wktLiteral时,我会返回正确的距离,但使用 Points 不会返回任何内容。

0 投票
1 回答
286 浏览

sparql - 无法使用 GeoSparqrl 和 sfWithin 函数找到点是否在多边形内

我需要编写一个查询来检查确定的点是否在多边形内。

我正在尝试使用 GeoSparql,但没有产生预期的结果。

如果我执行一个简单的查询,就像它:

结果是:

但是,如果我将下面的过滤器添加到查询中,它不会返回任何内容。但问题是:点在多边形内

0 投票
1 回答
217 浏览

java - RDF4J 和 GEOSparql 空间函数不起作用(或未实现)

我正在使用 RDF4J,因为我被宣传的 GEOSPARQL 实现(我在其他 RDF 框架中没有找到)抓住了。我遵循了基本指南和教程,但不幸的是,我基本上无法执行任何广告查询。

我阅读并遵循了http://docs.rdf4j.org/programming/#_geosparql上的所有文档,以及http://graphdb.ontotext.com/documentation/standard/geosparql-support.html上的所有示例,以及https://portal.opengeospatial.org/files/?artifact_id=47664。似乎在 SPARQL 查询中起作用的唯一空间函数是geof:distance,所有其他的都不会产生任何结果。

因此,我最终深入研究了包org.eclipse.rdf4j.query.algebra.evaluation.function.geosparql中的代码,以了解有些类和接口我可能应该实现和扩展,例如SpatialAlgebra,、。看起来许多功能没有完全(或部分)在空间逻辑中实现。显然,有一个返回很多. 无论如何,理解什么是让 GEOSPARQL 正常工作的正确程序是一团糟(并且没有记录)。他们只说你可以实现你自己的,但之后如何使用它是一个谜。SpatialSupportSpatialSupportInitializerDefaultSpatialAlgebranotSupportedSpatialSupportInitializer

从文档中,显然还有一种使用其他 SAIL 的方法,但同样,对此一无所知。

任何人都可以为我提供一些指导,或者至少是一段代码,其中显示了如何实际传递给引擎 a SpatialAlgebraor SpatialSupportor SpatialSupportInitializer,这不是默认的吗?或者是否有任何现有的 SAIL 实现了所有这些方法,我该如何使用它?谢谢。

PS:我其实是依赖2.4.0 M2版本的RDF4J,里面好像没有org.eclipse.rdf4j.query.algebra.evaluation.function.geosparql包(我手动导入的)。我也尝试使用 2.3.1 版本,但我遇到了同样的问题。

0 投票
1 回答
60 浏览

rdf4j - RDF4J 2.4.0-M3 GeoSPARQL 查询不工作

您好我正在使用最新版本的 RDF4J 2.4.0-M3,我正在尝试执行以下查询:

预期结果如下:

已使用 GraphDB v8.5 和 RDF4J 2.4.0-M3 加载了相同的数据集,已验证存储库。

我收到的java错误如下: java error execution query of RDF4J repo

我为 BOM 和 rdf4j-queryalgebra-geosparql 使用了正确的依赖项。

我的数据集包含 POINT、POLYGON、MULTIPOLYGON。

任何帮助将不胜感激。

0 投票
1 回答
956 浏览

sparql - 如何过滤 SPARQL 查询中的简单主题

我想我被 SPARQL 的基础所困。有人可以帮忙吗?

我只是想过滤所有包含 RDS 数据库“Mountain”的主题。

查询导致错误:

0 投票
0 回答
90 浏览

lucene - 支持 Lucene 的 RDF4J 中的空间 SPARQL 查询

我正在空间查询上测试 RDF4J。我已经在 Appache Tomcat 9.0.12 上部署了 RDF4J Server 和 Workbench 应用程序。我当前的数据集有 853 个 LineStrings 和 88 个 Polygons 表示为 WKT 字段。但是查询的性能因我正在使用的存储库类型而异。以下是 SPARQL 查询。

查询运行良好,结果返回 567 作为任何多边形内的线串对象的计数。

问题在于返回结果所需的时间。如果存储库是简单内存或本机类型,则此查询执行时间在不同迭代中介于 10 到 40 秒之间。但是,如果存储库是使用 Lucene 创建的,则此查询的执行时间会超过 30 分钟。

从 RD4J 的文档中,我了解到使用 lucene 应该有一个用于 asWKT 字段的空间索引,因此我希望空间连接能够在更短的时间内与 Lucene 一起运行。但相反似乎使用 lucene,相同的查询性能呈指数级下降。

我从两者测试了相同的场景:工作台 aap 以及 Eclipse 项目中的 API。在这两种情况下,当涉及 Lucene 时,查询性能都会下降太多。

谁能告诉我我在这里缺少什么?

此致

0 投票
1 回答
133 浏览

sparql - 是否可以仅从 SPARQL 中的查询中推断出有关本体的新知识?

是否可以仅从 SPARQL 中的查询中推断出有关本体的新知识?

我有一个关于使用 SPARQL 语言关于本体的问题。到目前为止,我一直认为 SPARQL 相当于关系数据库中的 SQL 语言,也就是说,使用 SPARQL 只能查阅本体中明确存在的数据,而无法访问可以访问的数据。被推断,将推断的责任留给推理者。

但是,我阅读了一些文档,从中我推断出 SPARQL 确实有能力推断本体中的隐式和非显式知识。我的推断是真的吗?也就是说,是否可以通过 SPARQL 查询推断知识而不需要推理器?如果答案是正确的,那么使用推理器比使用 SPARQL 有什么优势?

问候,曼努埃尔普埃布拉。

0 投票
1 回答
127 浏览

geospatial - GraphDB 8.6.1 Free - 地理空间谓词不适用于运行时,但适用于 Workbench

我正在使用一个没有启用规则集的仓库。Query_1使用geof:sfIntersects()Query_2使用geo:sfIntersects谓词。在 Workbench v8.6.1 中,Query_1 可以正确执行,而 Query_2 不能正确执行,不返回任何行,如文档中所述。启用 GeoSPARQL 插件后,使用 Workbench 两个查询都能正确执行,但 Query_2 更快。在 Java POM 中使用 Runtime v8.6.1,我尝试在启用 GeoSPARQL 插件的情况下针对 repo 执行 Query_1 和 Query_2。Query_1 正确执行(与 Workbench 一样),但 Query_2 未正确执行,不返回任何行(好像 GeoSPARQL 插件已禁用!)。我有证据表明 GeoSPARQL 插件已启用,因为如果我使用 Workbench 重复相同的任务,两个查询都会成功,同时/storage/GeoSPARQL/v2/config.properties具有以下内容:

java 选项正确指向-Dregister-external-plugins=/home/tioannid/graphdb-free-8.6.1 /lib/plugins

查询_1:

Query_2 日志:

如果此功能仅适用于 Workbench,那将是一种浪费……

问候

0 投票
1 回答
86 浏览

graphdb - 未在 graphdb 中计算的面积

在此处输入图像描述我需要计算面积,但出现错误查询评估错误:未知函数' http://www.opengis.net/def/function/geosparql/area'(HTTP状态 500)通过图像中的以下查询

但它适用于stardog,请看图片

感谢您提前回复

0 投票
1 回答
90 浏览

plugins - 通过 RDF4J API 配置/启用 GeoSPARQL 插件

我正在尝试自动创建必须启用 GeoSPARQL 插件的 GraphDB 存储库。为此,我发送了 2 个 INSERT 语句,第一个用于配置索引和准确性,第二个用于启用插件。但是 conn.prepareUpdate(QueryLanguage.SPARQL, enablePluginStatement).execute() 操作“似乎”异步运行。而不是等到索引操作完成(就像从 Workbench 运行相同的 INSERT 查询时发生的那样),它几乎立即继续执行以下语句,即关闭存储库。当我通过 Netbeans 调试器执行相同的代码时,相同的单个语句需要更多时间才能完成并且确实完成了正确的索引。关于这个或类似问题的任何见解?