问题标签 [reasoning]
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.
rdf - 文字的推理和数据类型
^^xsd:string
在 Turtle-RDF 中,省略字符串文字的数据类型扩展是很方便的。但是当我尝试用 StarDog 进行推理时,http://www.stardog.com/,只有:YYY
带有扩展名的人"green"^^xsd:string
被发现是:GreenButton
推理结果:
处理它的最佳方法是什么?
java - 使用 OWLAPI 加载本体文件时出现 UnloadableImportException
我正在开发一个 Maven 插件来使用 OWL-API v3.4.3 和 HermiT 1.3.8.4 验证 OWL 本体。一些 OWL 本体是专有的,因此在 Web 上不可用。
查看文档,我正在使用loadOntologyFromOntologyDocument()
加载 OWL 文件来执行验证:
当本体不导入任何专有本体时,这可以正常工作,UnloadableImportException
否则会返回错误。我见过人们使用addIRIMapper
在本体 URI 和定义实体的物理文件之间创建链接,但我认为它不适用于我的情况(主要是因为文件名未知)。
有没有办法告诉 OWL API 忽略导入?如果有,我可以遍历文件夹中的文件并利用OWLOntologyMerger
来验证所有本体。
properties - OWL 推理:推断属性的充要条件
我们试图让推理器(例如 Protege 中的 HermiT)来推断可以使用更具体的子属性而不是断言的一般属性。
课程:
特性:
如果我们断言以下三元组:
推理者可以推断(除其他外):
但是当我们反过来看它并断言时:
我们希望推理者推断:
我们似乎无法让 Protege 和 HermiT 得出这个结论并推断出三元组。
我们缺少什么?条件不是它推断该知识的必要和充分条件吗?
xml - OWL 2 本体一致性检查
我正在尝试将 SBVR 规则更改为本体(OWL 2),然后使用 Hermit Reasoner 对它们进行一致性检查。然而,即使在规则不一致从而本体不一致的情况下,Hermit Reasoner 也显示本体是一致的。我不知道哪里出错了。
我得到的本体(OWL 2)如下:
对应的SBVR规则和词汇如下:
词汇
信用卡
租车
car_rental is_insured_by credit_card
规则
car_rental is_insured_by at_least 3 credit_card 是必要的;
car_rental is_insured_by at_most 2 credit_card 是必要的;
SBVR 规则明显对比,因此不一致。我想知道本体是否也不一致,如果是,为什么推理器不起作用。在我看来确实如此,但我不知道为什么隐士推理者会这么说。
我已将 Hermit.jar 添加到我的 java 代码中并在其上运行推理器。
代码是
java - Java中OWL 2本体不一致的解释
我试图找出一个本体是否不一致,如果不一致,那么打印哪些是导致不一致的类/公理。我得到了关于不一致检查的正确结果,但是在打印不一致背后的公理列表时我被卡住了。我尝试了stackoverflow问题中提到的一种方法,但它不起作用。
我检查了一下,问题是没有解释列表存储在 解释变量中。你能指出我哪里出错了。
输出如下
一致性:真/假(正确结果)
计算不一致的解释
owl - 在 Protege 中加载本体时出错
我正在尝试在Protege 3.5中加载 OWL 2.0 本体。但是,每次我尝试时都会出错。
错误如下:
Jena Parse 错误消息:prolog 中不允许内容异常类 org.xml.sax.SAXParseExceotion:prolog 中不允许内容。
我的 OWL2 文件有以下代码
当我从 Java 代码运行它们时,本体很好,因为 Hermit Reasoner 和 Pellet Reasoner 可以正常工作。你能告诉我为什么会出现错误消息以及如何解决它。
owl - 用 Stardog 推理机解决爱因斯坦之谜?
是否有可能用Stardog推理机解决爱因斯坦的谜语(又名斑马谜题)?即以下查询不会产生预期的结果einsteins_riddle_en:Old_Gold
java - 如何通过 owlapi 连接到推理机 RacerPro 并且没有连接错误?
我尝试连接到推理赛车手。但我收到连接错误。我知道有很多关于以下错误的线程。我读了大部分。但我无法解决这个问题。这是我的代码:
但我收到以下错误:
由于以下行而生成错误:
我在 Intellij 的 lib 下有 owlapi-bin.jar 和 racer.jar。我认为必须在我的计算机上打开作为 Racer Reasoner 的服务器。因此,我在我的电脑上打开了 Racer 和 RacerPorter。非常感谢您的帮助。
owl - Protege 标记本体不一致,但 Hermit 和 Pellet Reasoner 没有
我正在尝试对不一致的本体进行一致性检查,而 Pellet 和 Hermit Reasoner 并没有给出不一致的结果。然而,Protege 成功地标记了不一致的类。具体来说,我将 SBVR 规则更改为 OWL 2.0。所以我的规则是 car_rental is_insured_by at_least 3 credit_card 是必要的;car_rental is_insured_by at_least 5 credit_card 是必要的;
对应的本体是
Hermit 和 Pellet 将本体标记为一致,而 Protege 将两个类标记为不一致。
现在,如果我将我的 SBVR 规则如下
car_rental is_insured_by at_most 3 credit_card 是必要的;car_rental is_insured_by at_least 5 credit_card 是必要的;
对应的本体是
这次 Hermit 和 Pellet 都工作得很好,Protege 也是如此。
我也附上我的隐士代码以供参考,
我对这种行为不知所措。
python - 如何使用 FuXi 在本体中找到与给定实例具有特定关系的实例?
我在 Protege 中开发了一个本体,它将在其中携带我的数据(作为本体的实例)以及它们之间的关系(我根据我的问题在这里开发它)。
实例化的本体文件可以在这里找到。现在我想在我用 Python 开发的另一种算法中使用它。
我的目标是遍历我的本体中的个体,并使用本体A-box中关于他们之间关系的知识,即
如果一条街道由两条车道组成。这些在本体中或推理的信息可以帮助其他算法(用python编写)实现其目的。A ccordingly,我有以下两个问题:
- 有谁知道如何使用 FuXi 找到与给定实例有特殊关系的实例?例如,在上面封闭的本体中,我想找到 arc_003,它使用 arc_002 构建 detail_part_001。他们之间还有一些其他的关系。
- 教我钓鱼;有人知道一些带有FuXi代码示例的表达性和解释性文件吗?FuXi 文档并没有真正的帮助,而且对我来说很复杂。