【发布时间】:2016-06-23 16:47:41
【问题描述】:
我已经使用 TopBraid Composer Maestro 版本 5.1.1 在 OWL/RDF 本体中成功生成和测试了 SPIN 约束(使用 SPARQL ASK 查询)。我现在想在 Sesame 中测试这些 SPIN 约束。如何将我在 TopBraid COMposer Maestro Edition 中编写的 OWL 本体中包含的 SPIN 约束、类定义、属性定义和测试个体放入 Sesame?
我正在使用 Sesame OpenRDF 工作台:
System Information
Application Information
Application Name OpenRDF Workbench
Version 4.1.2
Runtime Information
Operating System Windows 8.1 6.3 (amd64)
Java Runtime Oracle Corporation Java HotSpot(TM) 64-Bit Server VM (1.8.0_91)
Process User Greg
Memory
Used 357 MB
Maximum 3463 MB
我的约束、类、属性和示例个体包含在 TopBraid Composer Maestro Edition 下的一个 RDF 文件中。
我尝试使用 Sesame Open RDF 工作台Modify/Add 命令拉入由 TopBraid Maestro Edition 生成的 RDF 文件,但我收到一个似乎与空白节点相关的错误:
javax.servlet.ServletException: org.openrdf.repository.RepositoryException: org.openrdf.repository.RepositoryException: org.openrdf.sail.SailException: org.openrdf.query.QueryEvaluationException: Multiple statements for pattern: _:node1alqlr2eix590 http://spinrdf.org/sp#where null
也许我没有正确地从 TopBraid Composer Maestro Edition 导出?我在 TopBraid Composer Maestro 版中使用了 RDF 文件的通用导出到文件系统,并使用了 Sesame OpenRDF 工作台添加 RDF 文件/RDF 数据文件命令,导致上述错误消息。
抢占一些对我的特殊情况没有帮助的可能答案方向:
- 我特别想使用 SPIN 构造函数和约束,而不是 SWRL 或其他规则语言。
- 虽然我在 TopBraid Composer Maestro 版中取得了成功,并感谢我从 TopQuadrant 获得的帮助,但我无法负担在与其他计算机交互时使用我的 SPIN 构造函数和约束所需的 TopBraid Live 许可证。 (TopBraid Composer Maestro Edition 有一个 SPARQL 端点,但该端点只能通过 localhost 从主机访问。)我还想确定 Sesame 实现是否对 SPIN 约束和构造函数施加了一些与 TopBraid 工具相同的限制。
【问题讨论】:
-
您是否选择了具有 SPIN 推理的 Sesame 存储库类型?见Sesame server support for SPIN。
-
是的,Scott,我选择了支持 SPIN+RDFS 的内存存储。我的意思是在我的问题中包含它,但它没有出现。错误消息引用了 Sail,它提供了 SPIN 的 Sesame 实现,我相信。另请注意,我尝试导入的 RDF 文件相对较小,总共不到 2000 个事实,因此在内存中应该不是问题。
-
Sesame / RDF4J 中的 SPIN 支持仍处于测试阶段,您很有可能发现了一个错误。您能否提交一份包含相关详细信息的错误报告(包括导致问题的实际 RDF/SPIN 文件)?
-
感谢 Jeen Broekstrat。这项工作是为国防部服务的。虽然它没有分类,但我仍然应该从本体中取出一些东西,并确保它仍然存在同样的问题。我可以保留其中一个约束,而不必担心泄露我不应该泄露的内容。然后,假设问题仍然存在,我可以提交错误报告。如果问题不存在,这本身就是一个重要线索。
-
感谢 TallTed 重新格式化。下次提交时,我会尝试将其格式化得更好。我还不熟悉问题格式化工具。
标签: sparql rdf sesame topbraid-composer spin-rdf