保护数据类型限制

时间:2016-03-27 08:36:47

标签: owl protege restriction

我已经在我的本体中填充了定义其他小时的数据。现在,我想对特定数据类型(小时)进行限制,该数据类型定义为int并且值为0-23。限制将根据白天和夜晚的小时划分设置,例如(小时最小6英尺)和(小时最大17英尺)当天和定义为对象属性isDay,但问题是推论没有发生。 先感谢您, 埃利奥特

1 个答案:

答案 0 :(得分:1)

您可以创建:DayEvent类作为:Event的子类,然后对要指定为日期插槽的范围声明对dataType属性:hour的限制,例如6< = DayEvent小时< = 17,这样:

:DayEvent rdf:type owl:Class ;

      owl:equivalentClass [
                     rdf:type owl:Restriction ;
                     owl:onProperty :hour ;
                     owl:someValuesFrom [ rdf:type rdfs:Datatype ;
                                     owl:onDatatype xsd:integer ;
                                     owl:withRestrictions ( 
                                                 [ xsd:minInclusive 6]
                                                 [ xsd:maxInclusive 17]
                                                )
                                         ]
                          ] ;

      rdfs:subClassOf :Event .

然后,具有指定范围内的值的dataType属性:hour的所有个体将被推断为:DayEvent的成员。

这至少可以与Protégé4.3和5一起使用,包括Remioners HermiT,FaCT ++和Pallet。

等效的类定义将使用Protégé语法,如下所示:hour some xsd:integer[>= 6 , <= 17]

相关问题