我很好奇,在课堂描述中混合sublassof和等效频道,以及推理者的行为方式。

具体而言,如果我对同一类具有等效频道和次级主张,那么是否需要满足等价频率和次级条件才能在该类别中分类,或者只有等效频道?

还是这是不良的做法?

例如(省略声明):

ObjectPropertyRange(:format :Bar)
ObjectPropertyRange(:format owl:Thing)
EquivalentClass(:Foo ObjectSomeValuesFrom(:format :Bar))
SubClassOf(:Foo :Sna)

我想确保在下面的情况下 :x 被归类为 :Foo, ,因为满足了等价级和子类别的主张:

ClassAssertion(:x :Sna)
ObjectPropertyAssertion(:format :x :someBar)

:y 不是,因为子类不满足:

ClassAssertion(:y :NotASna)
ObjectPropertyAssertion(:format :y :someOtherBar)

谢谢,

乔纳森

有帮助吗?

解决方案

我不完全理解您的问题,但我会尝试澄清一些事情。首先,以下公理似乎与您的问题无关(第二个是多余的,因为 owl:Thing 是任何财产的范围):

ObjectPropertyRange(:format :Bar)
ObjectPropertyRange(:format owl:Thing)

另一件事是 EquivalentClasses- 轴可以看作是句法糖 SubClassOf- 轴,例如

EquivalentClasses(C1 C2)

在逻辑上等同于

SubClassOf(C1 C2)
SubClassOf(C2 C1)

因此您可以重写您的 EquivalentClasses 作为:

SubClassOf(ObjectSomeValuesFrom(:format :Bar) :Foo)
SubClassOf(:Foo ObjectSomeValuesFrom(:format :Bar))

这可能会简化理解您本体论所做的何种需要。

现在,如果您说:

ClassAssertion(:x :Sna)
ObjectPropertyAssertion(:format :x :someBar)

我假设您想说:

ClassAssertion(:x :Sna)
ClassAssertion(:someBar :Bar)
ObjectPropertyAssertion(:format :x :someBar)

这需要 :x 既是 :Foo:Sna, ,这肯定是可能的,因为 :Foo:Sna.

当你说

ClassAssertion(:y :NotASna)
ObjectPropertyAssertion(:format :y :someOtherBar)

我认为你的意思是:

ClassAssertion(:y :NotASna)
ClassAssertion(:someOtherBar :Bar)
DisjointClasses(:NotASna :Sna)
ObjectPropertyAssertion(:format :y :someOtherBar)

这是逻辑上的不一致之处,因为 :y 是一个 :Foo (这是一个子类 :Sna),但同时 :y 被认为是与 :Sna.

还请注意,我们没有使用

SubClassOf(:Foo ObjectSomeValuesFrom(:format :Bar))

随后是 EquivalentClasses-公理。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top