2016-05-23 7 views
0

特定のowlクラスに複数の制限を設定するにはどうすればよいですか?OWLクラスに複数の制限を使用する方法

例: 与えられたコースは、少なくとも1で撮影したが、最大10人の学生する必要があります。

 :Course a owl:Class; 
     owl:equivalentClass [a owl:Restriction; 
     owl:onProperty :takenBy; 
     owl:minCardinality 1] . 

    :Student a owl:Class . 

    :takenBy a rdf:Property; 
    rdfs:domain :Course; 
    rdfs:range :Student . 

これは、コースは、少なくとも1人の学生によって取られなければならない制限を設定しますが、どのようにしてくださいまた、制限owl:maxCardinality 10?を適用します。

答えて

2

これにはowl:intersectionOfを使用できます。

:Course a owl:Class; 
    owl:equivalentClass [ 
      owl:intersectionOf [ a owl:Restriction ; 
           owl:onProperty :takenBy; 
           owl:minCardinality 1] ; 
           [ a owl:Restriction ; 
           owl:onProperty :takenBy; 
           owl:maxCardinality 10] 
      ] 
    ]. 
+0

素晴らしい:)単純に言っても有効でしょうか。[a owl:Restriction; owl:onProperty:takenBy; owl:minCardinality 1、owl:maxCardinality 10]。 ? –

+0

私はそうは思わない、それぞれの制限は別々のIIRCである必要があります。 –

関連する問題