2011-09-27 77 views
1

我对OWL本体有一个问题,我正在做。我有一个类,它实际上是一个ID类和我想有实例:第一,第二,第三OWL本体:代表越来越多的数字,如第一,第二,第三

第一溶液,我已想出正在创建个人{第一,第二,第三等等},但是我必须写出大量的个人。

其他解决方案是创建一个数据属性,将与我的班级类型为“整数”连接。

第二种解决方案看起来比较合适,但事情是,我不能代表词“first”,只是1

你知不知道我该怎么做了多少?

回答

0

你可以创建一个类,是唯一由一个整数标识,像这样(在Turtle语法)序数:

:hasPosition a owl:DatatypeProperty, owl:FunctionalProperty ; 
    rdfs:range xsd:integer . 
:Ordinal a owl:Class ; 
    rdfs:subClassOf [ 
     a owl:Restriction ; 
     owl:onProperty :hasPosition ; 
     owl:someValuesFrom :integer 
    ] ; 
    owl:hasKey (:hasPosition) . 

注(在OWL 2介绍)使用owl:hasKey这意味着价值:hasPosition标识一个唯一的实例。该属性是功能性的,因此一个实例不能有两个不同的位置。

相关问题