等效类的SPARQL select实例

时间:2018-12-13 14:39:57

标签: sparql protege

我正在尝试创建SPARQL查询,该查询返回的个人是等效类表达式的实例(因此在语义Web上模仿了protégé的一些推理技巧)。谁能帮我弄清楚该怎么做?我有一个名为“ violation”的类,其中包含等效的类限制。现在,我想找到满足此限制条件的个人。

这是我到目前为止的查询:

SELECT distinct ?Carmovement ?person ?restriction ?message
WHERE {?Carmovement carmovement:has_driver ?person .
       ?Carmovement rdf:type ?restriction . #rdf:type is no succes for getting instances
?object owl:equivalentClass ?restriction .
?object violin:message ?message}`

该查询没有给出任何结果,因为我使用了“ rdf:type”,我想知道如何以一种方式评估实例是否满足类限制条件。

示例类别限制:

owl:equivalentClass [ rdf:type owl:Class ;
owl:intersectionOf ( 
<http://desibo.frsf.utn.edu.ar/ontologies/2012/9/CarMovement.owl#Car_Movement>
                   [ rdf:type owl:Restriction ;
                     owl:onProperty <http://desibo.frsf.utn.edu.ar/ontologies/2012/9/CarMovement.owl#has_driver> ;
                     owl:allValuesFrom <http://desibo.frsf.utn.edu.ar/ontologies/2012/9/CarMovement.owl#BarredPerson>
                   ]
                 )
                ] ;

我希望有人拥有“ BarredPerson”类型的“ has_driver”属性。

0 个答案:

没有答案