使用反向链接推理器缺少类型继承?

时间:2017-09-07 11:02:18

标签: owl reasoning

我正在学习推理和知识工程,我编写了以下示例:

@prefix : <http://example.org#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@base <http://www.w3.org/2002/07/owl> .

[ rdf:type owl:Ontology
 ] .

:value rdf:type owl:DatatypeProperty ;
   rdfs:range xsd:string .

:humiditySensor rdf:type owl:Class ;
            rdfs:subClassOf :sensor .

:location rdf:type owl:Class .

:room rdf:type owl:Class ;
  rdfs:subClassOf :location .

:sensor rdf:type owl:Class.

:temperatureSensor rdf:type owl:Class ;
               rdfs:subClassOf :sensor .

:temp1 rdf:type owl:NamedIndividual ,
            :temperatureSensor ;
    :room 201 ;
   :value 29 .

我试图推断temp1属于传感器类型。当我向Eye推理器(向后链接)提出以下查询时,我得不到任何结果,即即使subClassOf是传递的,也不推断temp1属于传感器类型的事实:

@prefix : <http://example.org#>.
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.

{
    ?x a :sensor.
    ?x :value ?y.
}
=>
{
    ?x :value ?y.
}.

如果我手动编写一些规则来表达subClassOf的这种传递属性,它将起作用。但是,证明中的CWM推理器(正向链接)正确表明temp1属于传感器类型,没有附加规则。

这是因为前向和后向链接的区别吗?

我希望我有意义。

0 个答案:

没有答案