OWL 对象属性双向

Posted

技术标签:

【中文标题】OWL 对象属性双向【英文标题】:OWL object property bidirectionel 【发布时间】:2018-12-09 20:21:33 【问题描述】:

我需要说一个对象属性是双向的。我知道我们可以使用 inverseOf 属性来链接 2 属性,但是可以说 objectProperty 的 inverseOf 是他自己吗?

<owl:ObjectProperty rdf:about="http://www.co-ode.org/ontologies/ont.owl#isLinkedTo">
    <owl:inverseOf rdf:resource="http://www.co-ode.org/ontologies/ont.owl#isLinkedTo"/>
</owl:ObjectProperty>

或者我必须这样做:

<owl:Class rdf:about="http://micorr.ig.he-arc.ch/vocab#artefacts_alloy">
    <rdfs:subClassOf>
        <owl:Restriction>
            <owl:onProperty rdf:resource="http://www.co-ode.org/ontologies/ont.owl#isLinkedTo"/>
            <owl:allValuesFrom rdf:resource="http://micorr.ig.he-arc.ch/vocab#artefacts_metal"/>
        </owl:Restriction>
    </rdfs:subClassOf>
</owl:Class>

<owl:Class rdf:about="http://micorr.ig.he-arc.ch/vocab#artefacts_metal">
    <rdfs:subClassOf>
        <owl:Restriction>
            <owl:onProperty rdf:resource="http://www.co-ode.org/ontologies/ont.owl#isLinkedTo"/>
            <owl:allValuesFrom rdf:resource="http://micorr.ig.he-arc.ch/vocab#artefacts_alloy"/>
        </owl:Restriction>
    </rdfs:subClassOf>
</owl:Class>

感谢您的帮助。

【问题讨论】:

为什么不可能?你听说过reflexivity吗? 顺便问一下,sparql 标签的原因是什么?为什么没有owl 标签? 【参考方案1】:

您确实可以使属性与自身相反,这很好。然而,表达关系是双向的更明确的方式是定义属性为对称

<owl:SymmetricProperty rdf:about="http://www.co-ode.org/ontologies/ont.owl#isLinkedTo"/>

【讨论】:

谢谢,这正是我想要的。

以上是关于OWL 对象属性双向的主要内容,如果未能解决你的问题,请参考以下文章

VUE双向绑定原理

Vue的双向数据绑定原理

Vue / Vuex:双向计算属性 - 未定义不是重新加载的对象

007-ant design 对象属性赋值,双向绑定

解决vuejs 创建数据后设置对象的属性实现不了双向绑定问题

解决vuejs 创建数据后设置对象的属性实现不了双向绑定问题