实例和子类之间的主要区别是什么?

时间:2016-04-17 20:12:54

标签: owl ontology protege

这个问题是关于 Ontologies ,我正在实施一个关于无线传感器作为设备的潜在物理攻击的本体。

我创建了类 Modification_Attack ,意思是在传感器本身中进行修改的攻击。我创建了 Programming_Modification 作为这个类的一个实例,这是逻辑的,它是一个更好的子类,还是一个实例或一个子类?

1 个答案:

答案 0 :(得分:1)

  

实例和子类之间的主要区别是什么?

这个问题并不是OWL本体所独有的;它出现在面向对象的程序设计和数学中的集合论中。类是其成员的集合。如,

人≡{person 1 ,person 2 ,...}

假设您有另一个类:

TallPerson≡{person 63 ,person 102 ,...}

如果A的每个元素也是B的元素,则A类是B类的子类:

(A⊆B)≡(x∈A→x∈B)

因此,例如,如果 TallPerson 的每个成员也是的成员,那么 TallPerson 的子类人即可。

  

我创建了类Modification_Attack,意思是修改的攻击   传感器本身。我创建了Programming_Modification作为实例   这个类,这是合乎逻辑的,它是一个更好的子类还是两个   实例也不是子类?

这是您需要做出的选择。这实际上取决于上下文以及您打算如何使用本体。如果您在野外观察攻击并尝试对它们进行分类,您可能需要一个子类,但是您需要 Programming_Modification 实例。也就是说,你会想要这样的东西:

编程_修改≡{攻击 24 ,攻击 89 ,...}

但是,如果您有其他类型的用例,您希望将 Programming_Modification 作为单个实体进行讨论,那么它可能更适合成为个人。< / p>