OWL,按数据属性定义类

时间:2015-02-24 15:22:58

标签: rdf owl rdfs

为了我的单身学习目的而学习OWL。我试图根据必要的子类自动对个体进行分类。足够的条件。

现在,我有一款智能手机,它有个人" x"它有一个数据属性" hasCores" " 4整数"。

现在我尝试将其自动归类为快速智能手机"。我尝试通过制作新课程"快速智能手机"作为"智能手机"的子类。例如(相当于(智能手机和(hasCores min 2整数))。

但是这并没有看到数据属性值,对于这个实例是4,但是它会查看" hasCores"的数量。个人拥有的财产。因此,如果我将2个hasCore属性添加到它的工作原理。但是我只需要1个hasCore属性,并让理由器查看hasCore属性的值。这甚至可能吗?

提前致谢。

1 个答案:

答案 0 :(得分:3)

  

现在,我有一款智能手机,它有个人“x”   数据属性“hasCores”“4 integer”。

我希望你的意思是

:x :hasCores "4"^^xsd:integer

其中值是数据类型的文字,其中数据类型 xsd:integer

您实际上想要的这里是数据类型方面推理。并非所有的reasoners都必须支持它,但它在OWL语言中得到支持。你基本上使用像

这样的东西
  

FastSmartphone equivalentClass 智能手机(仅限hasCores xsd:整数[> 4]

my answerEncoding mathematical properties in RDF中有这种表达方式的直接示例:

enter image description here

现在,您可以通过两个方向进行推理。您可以执行一些必要的条件,这将使您进行一致性检查。

  

FastSmartphone subclassOf hasCores xsd:整数[> = 4]

这意味着如果某些东西被断言为FastSmartphone,那么无论它拥有多少个核心,该值必须至少为4。它仍然可能没有这样的价值,如果你想阻止它,你可能会做类似的事情

  

智能手机 subClassOf hasCores min 1

现在,如果您希望能够说明,例如,智能手机有五个内核,从而推断它是一个FastSmartphone,那么您需要另一个方向:

  

hasCores 某些 xsd:整数[> = 5] 智能手机 subClassOf FastSmartphone

(您可能希望,但是没有声明核心数量的智能手机也将是FastSmartphone。)

但是,如果您尝试定义快速智能手机作为至少拥有四个核心的智能手机,那么您只需说:

  

FastSmartphone equivalentClass 智能手机 hasCores 一些 xsd:整数[> = 4]

相关