如何在Protege中建模的Ontology中设置属性的域和范围

时间:2015-02-10 09:02:09

标签: ontology protege

我使用Protege 5.0.0开发本体。本体的一部分如图所示:

http://imgur.com/Yq6EF3i

对于给定的Ontology,我创建了类OperatingRange,OperatingPowerRange和ValueRange。此外,还创建了属性hasOperatingProperty,hasValue和其他属性。我面临以下问题:

  • 对于ssn:hasOperatingProperty,我使用OpertingRange类作为域,使用ssn:OperatingPowerRange类作为range.Now,根据图,我应该将ssn:hasOperatingProperty设置为ssn的域:hasValue?我尝试做同样的事情,但Protege没有显示任何选项。
  • 上图中某些属性下面写的“可以”和“全部”是什么意思?
  • 对于unitOfMeasure属性,我应该将ssn:hasvalue设置为域和单位:Volt作为范围?

1 个答案:

答案 0 :(得分:0)

我相信模式:

'propertyName'
can be
one of
'className'

是一种表示限制的方法,它是类表达式,应该理解为:至少存在一个属性为'propertyName'的对象属性断言,并且该断言中的个体是'className'的实例。

'可以'和'其中一个'被解读为'可以是'之一' - 意味着存在量化。 '可以''全部'是通用量化。

关于unitOfMeasure,除非第二个属性(在您的情况下为hasValue)是注释属性,否则您不能将属性作为另一个属性的域。使用单位:Volt作为范围听起来是正确的。

编辑:要回答评论,你需要添加一个类表达式做域。在Protege中,您可以通过单击域选项卡,选择限制类型,它所处的属性以及您希望填充的类型(可以是Thing)来执行此操作。请参阅图片以供参考。

Protege snapshot