问题标签 [stardog]

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 投票
0 回答
11 浏览

swrl - Stardog 在使用 SWRL 规则对图进行合理查询时引发 ConcurrentModificationException

尝试在模型中执行带有推理的查询时,出现此错误:000012: com.complexible.stardog.plan.eval.operator.OperatorException: Uncaught error during query evaluation: ConcurrentModificationException

本体模型有 2 个 SWRL 规则并且是一致的,因为它在 Protege 中运行良好(带有内置的颗粒推理器)。模型已导入stardog rdf 模型和查询

失败并显示上述错误消息。

通过删除 SWRL 规则,查询运行良好,但模型当然不再代表所需的域。通过将 SWRL 规则翻译成 stardog 原生规则,错误再次出现。

推理级别设置为 DL,因为 SL 意味着目标应用程序的处理时间太长。更改推理选项中的 sameAs 标志不会改变行为。按照 Stardog 文档中的一般建议,将推理级别设置为 SL将解决此简化模型的问题,但如前所述,将导致在最终目标应用程序中使用不切实际。

您能帮我找出根本原因和可能的解决方案吗?有没有人在处理 SWRL 规则时遇到过同样的问题?

下面是海龟格式的相关模型,以便在测试图上轻松复制问题。

衷心感谢任何可以帮助我的人。