为什么推理不能很好地进行 [英] why inference is not working well

查看:84
本文介绍了为什么推理不能很好地进行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有两种本体,我将它们结合成一个大本体

I have two ontologies which i join them together in one big ontology

这是大本体论

  <!-- http://www.MusicSemanticOntology/mso#r1 -->

    <owl:NamedIndividual rdf:about="http://www.MusicSemanticOntology/mso#r1">
        <rdf:type rdf:resource="http://semanticrecommender.com/rs#Rates"/>
        <rs:about rdf:resource="http://music.org/musicontology/mo#5th_Symphony"/>
        <rs:createdOn rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime">1956-06-25T04:00:00-05:00</rs:createdOn>
        <rs:ratesBy rdf:datatype="http://www.w3.org/2001/XMLSchema#float">1.0</rs:ratesBy>
    </owl:NamedIndividual>
</rdf:RDF>

如您所见,实例r1来自Rangs,它具有createdOn且具有rateBy谓词

as you see, the instance r1 is from Rangs and it has createdOn and has ratesBy predicate

我上了这个课:

<!-- http://semanticrecommender.com/rs#Likes -->

<owl:Class rdf:about="http://semanticrecommender.com/rs#Likes">
    <rdfs:subClassOf>
        <owl:Class>
            <owl:intersectionOf rdf:parseType="Collection">
                <rdf:Description rdf:about="http://semanticrecommender.com/rs#Rates"/>
                <owl:Class>
                    <owl:unionOf rdf:parseType="Collection">
                        <owl:Restriction>
                            <owl:onProperty rdf:resource="http://semanticrecommender.com/rs#ratesBy"/>
                            <owl:hasValue rdf:datatype="http://www.w3.org/2001/XMLSchema#float">0.8</owl:hasValue>
                        </owl:Restriction>
                        <owl:Restriction>
                            <owl:onProperty rdf:resource="http://semanticrecommender.com/rs#ratesBy"/>
                            <owl:hasValue rdf:datatype="http://www.w3.org/2001/XMLSchema#float">0.9</owl:hasValue>
                        </owl:Restriction>
                        <owl:Restriction>
                            <owl:onProperty rdf:resource="http://semanticrecommender.com/rs#ratesBy"/>
                            <owl:hasValue rdf:datatype="http://www.w3.org/2001/XMLSchema#float">1.0</owl:hasValue>
                        </owl:Restriction>
                    </owl:unionOf>
                </owl:Class>
            </owl:intersectionOf>
        </owl:Class>
    </rdfs:subClassOf>
</owl:Class>

当我运行reaonsoner时,为什么r1不能像表单类一样?尽管其rangeBy的值为1,并且具有相关性,并且具有非强制的createdOn谓词,并且about的值(即5th_syphony)来自类型Recommendable

why the r1 is not being form class likes when i run the reaonsoner? though the value of its rangeBy is 1 and it has the relattion about, and it has the un mandatory createdOn predicate and the value of about (which is the 5th_syphony) is from type Recommendable

推荐答案

由于没有足够的信息,因此无法推断r1的类型为Likes.

It doesn't infer that r1 is of type Likes because it does not have sufficient information to do so.

您已将类Likes定义为您的限制的子类.这意味着您已经为类成员资格定义了必要的条件(即 if 如果某物是Likes的实例,则 then 必须具有必需的属性值),但您还没有定义这些条件也足够(即,如果某些东西具有这些属性值,则 then >它必须是Likes的实例).具有指定的ratesBy值而不是Likes类的实例是完全有效的.解决此问题的方法是将其定义为owl:equivalentClass而不是rdfs:subClassOf.

You have defined your class Likes as a subclass of your restrictions. This means that you have defined necessary conditions for class membership (that is, if something is an instance of Likes, then it must have the necessary property values), but you haven't defined that these conditions are also sufficient (that is, if something has these property values, then it must be an instance of Likes). It is perfectly valid for something to have the specified ratesBy values and yet not be an instance of the Likes class. A fix for this is to define it as an owl:equivalentClass instead of a rdfs:subClassOf.

这篇关于为什么推理不能很好地进行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆