所以我正在阅读this,并说:
作为必要和充分条件的一个例子,请看一下 以下定义:
:RedThing a owl:Class ; owl:equivalentClass [ a owl:Restriction ; owl:onProperty :color ; owl:hasValue red^^<http://www.w3.org/2001/XMLSchema#string> ]
我对此的解释是,如果某些东西是红色的,那么该东西必须是RedThing
。另外,如果某个东西是RedThing
,那么它必须是红色。
当我将此代码段添加到Protege时,我写道:
:test_subject :color red^^<http://www.w3.org/2001/XMLSchema#string>
然后推理者推断出以下内容:
:test_subject rdf:type :RedThing
这涵盖了限制定义的必要部分,即如果某些内容是红色的,则该内容必须是RedThing
。
当我将以下内容添加到本体时(再次使用Protege):
test_subject_2 rdf:type :RedThing
然后推理者应该推断出以下内容:
:test_subject_2 :color red^^<http://www.w3.org/2001/XMLSchema#string>
因为这是条件的充分部分。即如果某事物是RedThing
,那么它必须是红色。
但不推断。我在这里缺少什么?