Rdf 理解扩展和通用限制用例(Pizza本体用例)

Rdf 理解扩展和通用限制用例(Pizza本体用例),rdf,semantic-web,owl,ontology,description-logic,Rdf,Semantic Web,Owl,Ontology,Description Logic,下面是一个来自Pizza本体指南的简单问题。请帮我澄清我对此事的疑虑。我指的是页码,因为我不能在这里写出整段。 第61页:有两个重要的注释,说明如果创建了多个限制,那么它相当于两个单独限制的交集。因此,此语句仅适用于包含类不相交的个体。图4.49 e、 g 只有奶酪才有配料 hasTopping仅限蔬菜Topping 应解释为 仅限hasTopping(奶酪面和蔬菜面) 这不可能是真的,因为奶酪顶和蔬菜顶是不相交的 因此,在注释中,它被写为 仅限hasTopping(奶酪面或蔬菜面) 如果这是真

下面是一个来自Pizza本体指南的简单问题。请帮我澄清我对此事的疑虑。我指的是页码,因为我不能在这里写出整段。 第61页:有两个重要的注释,说明如果创建了多个限制,那么它相当于两个单独限制的交集。因此,此语句仅适用于包含类不相交的个体。图4.49 e、 g

只有奶酪才有配料
hasTopping仅限蔬菜Topping

应解释为

仅限hasTopping(奶酪面和蔬菜面)

这不可能是真的,因为奶酪顶和蔬菜顶是不相交的

因此,在注释中,它被写为

仅限hasTopping(奶酪面或蔬菜面)

如果这是真的, 那么练习19(图4.25,第45页)应该会导致错误。我们已经分别宣布了两项扩展限制。 e、 g.在定义玛格丽塔比萨饼时,使用了floowing语句

有一些奶酪配料
有一些蔬菜配料

因此,结果应该是2类的交集,这不可能是真的

有一些奶酪配料
有一些蔬菜配料

这些表达式的交集并不矛盾。一个人可以有多个浇头。例如,比萨饼可以有一个奶酪面,也可以有一个蔬菜面。然后它将是这两种类型的实例,因此也是它们相交的实例

(地产部分1类)和(地产部分2类)

不等于

(部分物业(1类和2类))

这可以从另一个例子中看出(如果上面的例子还不够)

人与环境亚类;∃ hasBodyPart.Ear
人与环境亚类;∃ 手是身体的一部分

每个人(模损伤、出生缺陷等)至少有一只耳朵和一只手。这并不意味着手是耳朵,或者耳朵是手

总而言之,你是对的

∀p、 C⊓∀p、 D≡ ∀p、 (C⊓D)

但通常情况并非如此

∃p、 C⊓∃p、 D≡ ∃p、 (C⊓D)

但是,如果某个东西的值既是C又是D,那么它的值是C,值是D,所以我们有这个子类关系:

∃p、 (C⊓D)和SQQ子条款;∃p、 C⊓∃p、 D

作为另一个例子,考虑不相交的类<强>母亲< /强>和<强>父< /强>。类表达式

(有父母或母亲)

是一类有母亲的事物。类表达式

(有父母或父亲)

是一类有父亲的事物。这里显然有一个非空的十字路口,因为有些东西既有父亲也有母亲。相交表达式是通过将这些表达式与和连接得到的:

(有父母有母亲)和(有父母有父亲)

这与类表达式不同,也不等效:

(有父母(母亲和父亲))

所有的描述逻辑运算实际上只是逻辑和集合论的一种方便语法。类表达式(仅限p C),或DL表示法中的∀ p、 C,表示仅通过属性p与C元素相关的个体集合。即

(只有p和C)≡ {x:∀y[p(x,y)&rightarrow;y&in;C]}

类似地,(p some C)是通过属性p与C的某些元素相关的个体集合。即

(p和C)≡ {x:∃y[p(x,y)&wedge;y&in C]}

现在你可以考虑交叉点。 (仅p C)和(仅p D)
≡ {x:∀y[p(x,y)&rightarrow;y&in;C]}∩ {x:∀y[p(x,y)&右箭头;y&in;D]}
≡ {x:∀y[p(x,y)&rightarrow;y&in;C]&wedge;∀y[p(x,y)&rightarrow;y&in;D]}
≡ {x:∀y[p(x,y)&右箭头;(y&in;C&wedge;y&in;D)]}
≡ {x:∀y[p(x,y)&右箭头;y&in;(C)∩ D) ]}
≡ (仅p(C&sqcap;D))

但是,对于存在限制,您不会得到完全相同的缩减:

(一些C)和(一些D)
≡ {x:∃y[p(x,y)&wegde;y&in;C]}∩ {x:∃y[p(x,y)&wegde;y&in;C]}


你不能进一步减少这个,因为第一个存在式中的y不一定等于第二个存在式中的y。

@Joshua Taylor这样做,这意味着在引申限制中,这个概念是无效的。但从protege指南中,他们提到了一个重要的注释,指出“当使用多个语句(用于任何限制)时,总描述被视为各个限制的交叉点”。这是否意味着这是他们在指南中所说的错误的一点吗?@aditya他们的观点是正确的。当有多个超类型时,就有了这些超类型的交集。重要的是“(p only A)和(p only B)”等同于“(p only(A和B))”,但“(p some A)和(p some B)”并不等同于“(p some(A和B))”。@Joshua Taylor我仍然感到困惑。因为当你说这句话是正确的时候“(p some A)和(p some B)”并不等同于“(p some(A和B))”。这本身与“当使用多个语句(针对任何限制)时,总描述被视为各个限制的交叉点”的说法相矛盾。请帮助我理解为什么这个语句对扩展类型限制无效?类表达式“(p some A)”和类表达式“(p some B)”的交集是通过在它们之间加上“and”得到的,即类表达式“((p some A)和(p some B))”。该类表达式不是