当前位置: 首页 > 知识库问答 >
问题:

DL查询解析器对某些查询返回空

陈毅
2023-03-14

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

共有1个答案

罗和煦
2023-03-14

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

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

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

OWLReasonerFactory ReasonerFactory=new结构性ReasonerFactory();

通过

OWLReasonerFactory reasonerFactory=新的推理机。ReasonerFactory()

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

 类似资料:
  • 问题内容: 桌子: 我的查询: 我收到“ MySQL子查询返回多个行”错误。 我知道此查询可以使用以下查询的解决方法: 然后使用php循环遍历结果并执行以下查询以获取和回显它: 但是我认为可能会有更好的解决方案? 问题答案: 简单的解决方法是在子查询中添加一个子句: 一个更好的选择(就性能而言)是使用联接:

  • 一般来说,我对python和编程都是新手。这段代码最终将在更大的应用程序中使用。我为任何错误提前道歉。我正在尝试从postgresql数据库中的表进行简单查询。唯一的结果是没有。尽管我知道那里有数据。提前感谢您的帮助。

  • 我正在使用JDBC创建一个数据库,其中包含表和。两者都有一个名为 以下是我创建和填充表的SQL语句: 我试图运行以下查询: 或 或 使用 但是我没有得到任何结果。 这两个问题都可以解决。 SQLite数据库服务器显示相同的问题: 它与Firefox中的SQLite Manager一起工作。

  • 问题内容: 如何获取使用SQL Server的SQL查询返回的列数? 例如,如果我有如下查询: 它应该返回表A1中的总列数+表A2中的总列数。但是查询可能会更复杂。 问题答案: 这是一种方法: 您可以通过创建视图来执行类似的操作。

  • 我的查询参数如下所示: 我必须接受这个查询参数,因为它进入了我的spring控制器,并且必须向solar查询以获取数据。 首先使用regex进行以下转换:(abcbcd)+----------segment1 最后名称:ABC+...............Segment2 电子邮件:ABC+...............Segment3 我有一门课叫 类Queryobj{ 私有字符串字段; 值=

  • 我正在建立一个图书馆数据库。我想编写一个查询,返回每个类别的前5本书,这意味着它必须返回每个类别借阅次数最多的5本书以及借阅次数。 查询涉及以下表: Book(ISBN, title, pubYork, numpage, pubName) borrows(memberID, ISBN, Copnr,date_of_borrowing,date_of_return) belongs_to(ISBN,