带有 unionOf (n3) 的 OWL 类实例



假设我有一个OWL类,如下所示:

:picture    rdf:type owl:Class ;
            owl:unionOf(:creator :theme :title :date) .

有了:creator:theme:title:date owl:ObjectPropertyowl:DataProperty

例如:

:creator    rdf:type owl:ObjectProperty ;
            rdfs:comment "The creator of this picture." ;
            rdfs:domain :picture ;
            rdfs:range foaf:Person .

如何创建此图片类的实例?

(我了解如何创建简单事物的实例,例如:<http://dbpedia.org/resource/Paris> rdf:type :location .将是一个位置的实例)

如果你想描述可能包含属性的类 :creator:theme:title:date你应该只描述所有属性的域(不需要在图片类中做额外的定义):

:picture a owl:Class .
:creator rdfs:domain :picture ;
         rdfs:range foaf:Person .

等等。

如果要描述必须包含这些属性的类,则应添加基数约束:

:picture a owl:Class ;
         rdfs:subClassOf [
             a owl:Restriction ;
             owl:onProperty creator ;
             owl:minCardinality "1"^^<http://www.w3.org/2001/XMLSchema#int>
         ]
         rdfs:subClassOf [
             a owl:Restriction ;
             owl:onProperty theme ;
             owl:cardinality "1"^^<http://www.w3.org/2001/XMLSchema#int>
         ]
         ... etc ...

在这两种情况下,实例的定义如下所示:

:monaLisa a :picture ;
          :creator :LeonardoDaVinci ;
          ...
          :date "1503-01-01"^^<http://www.w3.org/2001/XMLSchema#date>

例如,您可以从本文档中了解有关限制的更多信息。

相关内容

  • 没有找到相关文章

最新更新