3

我们可以将限制定义为命名类吗?我的意思是,而不是使用这个:

:myclass owl:equivalentClass 
         [ rdf:type owl:Restriction ;
           owl:onProperty :hasAge ;
           owl:cardinality "2"^^xsd:nonNegativeInteger ] . 

使用这个:

:myclass rdf:type owl:Restriction ;
         owl:onProperty :hasAge ;
         owl:cardinality "2"^^xsd:nonNegativeInteger.  

那样行吗?

4

2 回答 2

4

是的,这绝对没问题。这可能有点不寻常,但 AFAIK 在 OWL 规范中没有任何内容强制限制是匿名的。事实上,按照您的建议命名它们可以更轻松地重用多个类中的限制。

于 2012-01-21T07:11:26.423 回答
0

是的,您可以给限制命名,只需声明一个命名类等同于限制。OWL 文档中有很多示例,请参见例如

在哪里可以找到类似的示例

EquivalentClasses(
    :HappyPerson 
    ObjectAllValuesFrom( :hasChild :HappyPerson )
)

EquivalentClasses(
    :NarcisticPerson 
    ObjectHasSelf( :loves ) 
)

EquivalentClasses(
    a:DogOwner
    ObjectSomeValuesFrom( a:hasPet a:Dog )
)
于 2012-02-02T12:46:50.110 回答