0

我正在用 Java 编写 DL 查询解析器。当我给出一个类名作为输入时,代码给出了正确的输出,但是当我给出像“hasColor value Red”或“hasSugar value Dry”这样的查询时,它什么也不返回。我正在使用 OWLAPI。

4

1 回答 1

2

假设您使用此代码作为示例。

您似乎正在使用默认的结构推理器。您应该启用更复杂的推理器,例如HermiT

首先,下载 jar 并将其添加到您的类路径中,然后替换第 178 行:

OWLReasonerFactory reasonerFactory = new StructuralReasonerFactory();

经过

OWLReasonerFactory reasonerFactory = new Reasoner.ReasonerFactory();

它应该工作!如@Joshua在评论中提到的,请查看此答案以获取有关此解决方案的更多详细信息

于 2013-10-15T20:54:28.193 回答