OWL限制 - 定义仅包含具有特定属性值的属性的类

Dev*_*s50 8 rdf owl restriction restrictions

我目前正在玩OWL,特别是有限制.我正在尝试创建执行以下操作的查询:

假设我有一个类'Cinema',它有一个属性'movies'(包含'Movie'类型的对象)."电影"类包含名为"genre"的属性.现在我想创建一个只有类型为'action'的电影的ActionCinemas类.

我真的不知道该怎么做.我正在考虑用交叉点或基数来做某事,但我不确定.

有人能帮我一把吗?

Jee*_*tra 11

您需要allValuesFrom限制和hasValue限制的组合,例如:

龟语法:

 my:ActionCinema a owl:Class ;
      rdfs:subClassOf my:Cinema,
                      [ a owl:Restriction; 
                        owl:onProperty my:hasMovie ;
                        owl:allValuesFrom [ a owl:Restriction ; 
                                            owl:onProperty my:hasGenre ;
                                            owl:hasValue my:Action ]
                      ] .
Run Code Online (Sandbox Code Playgroud)

曼彻斯特OWL语法:

Class: ActionCinema
   SubClassOf: Cinema that hasMovie only ( hasGenre value Action )
Run Code Online (Sandbox Code Playgroud)