【问题标题】:Understanding Extential and Universal restriction use case (Pizza ontology use case)理解外延和通用限制用例(披萨本体用例)
【发布时间】:2015-06-17 15:55:12
【问题描述】:

这是 Pizza 本体指南中的一个简单问题。请帮助我澄清我对此的疑问。我指的是页码,因为我不能在这里写下整个段落。 来自第61页:有2个重要说明,即如果创建多个限制,则相当于两个单独限制的交集。因此,这种说法只对包含类的个体不脱节是正确的。图 4.49 例如

只有 CheeseTopping
hasTopping only VegetableTopping

应该解释为

hasTopping only(CheeseTopping 和 VegetableTopping)

这不可能是真的,因为 CheeseTopping 和 VegetableTopping 彼此不相交。

因此在注释中它被写成

hasTopping only (CheeseTopping OR VegetableTopping)

如果这是真的, 然后练习 19,(图 4.25,第 45 页),应该会导致错误。正如我们已经分别声明了两个广泛的限制。 例如在定义 Margherita Pizza 时,使用了以下语句

有一些 CheeseTopping
hasTopping some VegetableTopping

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

【问题讨论】:

    标签: rdf semantic-web owl ontology description-logic


    【解决方案1】:

    有一些 CheeseTopping
    hasTopping some VegetableTopping

    这些表达式的交集并不矛盾。一个人可以有多个浇头。例如,披萨可以有一种奶酪配料,也可以有一种蔬菜配料。那么它将是这两种类型的一个实例,因此也是它们交集的一个实例。

    (某些 Class1 的属性)和(某些 Class2 的属性)

    不等于

    (属性一些(Class1 和 Class2))

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

    人类 ⊑ ∃ hasBodyPart.Ear
    人类⊑ ∃ hasBodyPart.Hand

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

    所以,回顾一下,你是对的

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

    但通常情况并非如此

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

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

    ∃p.(C ⊓D) ⊑ ∃p.C ⊓ ∃p.D

    作为另一个例子,考虑不相交的类 MotherFather。类表达式

    (有一些妈妈)

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

    (有一些父亲)

    是有父类的事物。显然有一个非空的交叉点,因为有些东西既有父亲又有母亲。交集表达式是通过将这些表达式与 and 连接得到的:

    (hasParent 一些母亲)和(hasParent 一些父亲)

    这是不同的,不等同于类表达式:

    (hasParent some (Mother and Father))

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

    (p only C) ≡ {x : ∀y [p(x,y) → y∈ C]}

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

    (p some C) ≡ {x : ∃y [p(x,y) ∧ y &in C]}

    现在您可以考虑交叉点。

    (仅 p C)和(仅 p D)
    ≡ {x : ∀y [p(x,y) → y∈ C]} ∩ {x : ∀y [p(x,y) → y∈ D]}
    ≡ {x : ∀y [p(x,y) → y∈ C] &楔; ∀y [p(x,y) → y∈ D]}
    ≡ {x : ∀y [p(x,y) → (y ∈ C ∧ y ∈ D)]}
    ≡ {x : ∀y [p(x,y) → y∈ (C ∩ D)]}
    ≡ (p only (C ⊓ D))

    但是,存在限制的减少并没有完全相同:

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

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

    【讨论】:

    • @ Joshua Taylor 这样做意味着在扩展限制的情况下,这个概念是无效的。但是从 protege guide 中,他们作为重要说明提到了“当使用多个语句(对于任何限制)时,总描述被视为各个限制的交集”。这是否意味着他们在指南中陈述的观点是错误的。
    • @aditya 他们的观点是正确的。当你有多个超类型时,你就有了这些超类型的交集。重要的部分是“(p only A) and (p only B)”等价于“(p only (A and B))”,但是“(p some A) and (p some B)”是不等价于“(p some (A and B))”。
    • @ Joshua Taylor 我仍然很困惑。因为当你说这个陈述是正确的时候,“(p some A) and (p some B)”并不等同于“(p some (A and B))”。这本身与“当使用多个语句(对于任何限制)时,总描述被视为各个限制的交集”的陈述相矛盾。请帮助我理解为什么此语句对 Extential 类型限制无效?
    • 类表达式“(p some A)”和类表达式“(p some B)”的交集就是在它们之间加上“and”得到的,即类表达式“ ((p 一些 A) 和 (p 一些 B))”。该类表达式与类表达式“(p some (A and B))”不同。另一个例子“(hasParent some Mother) and (hasParent some Father)”是一个非常合理的类表达,它是一类既有父亲又有母亲的事物。和“(hasParent some (Father and Mother))”不一样。
    • @Joshua Taylor 这些操作背后的数学原理是什么?另外,通用限制的情况如何?因为上面你说过:万一限制∀p.C⊓∀p.D≡∀p.(C⊓D),万一外延限制∃p.(C⊓D)⊑∃p.C⊓∃p.D...... .
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-28
    • 1970-01-01
    相关资源
    最近更新 更多