3

我现在正在阅读使用 Protege 教程构建本体的指南,该教程处理著名的 Pizza 示例。有两件事我特别不明白。

American/AmericanHot/Margherita/Soho(以及本体中 NamedPizza 类中提到的所有子类)不应该是 Pizza 类的个体吗?我的意思是很自然地认为他们是披萨类的个体。为什么他们认为这些是子类而不是个体。他们打算如何从中产生个体?(如 Margherita1、Margherita2 等等……如果是这样,他们为什么不在个体选项卡中创建任何这样的个体)?

为什么他们只将闭包公理应用于 NamedPizza 的子类而不应用于其他子类?

4

1 回答 1

1

可以以不同的方式对本体进行建模,我认为您建议的方式应该会产生正确的本体。您可以使用与 OOP 中相同的规则来定义子类。如果该类具有唯一的属性或关系,请定义一个新类,否则实例应该没问题。

于 2010-12-28T17:09:44.537 回答