如何将数据与owl对象属性关联以链接个人

时间:2015-08-20 11:16:27

标签: rdf semantic-web owl ontology reasoning

我有以下本体论

    <owl:Class rdf:about="http://www.semanticweb.org/POC#Person"/>
    <owl:Class rdf:about="http://www.semanticweb.org/POC#Vehicle"/>
    <owl:ObjectProperty rdf:about="http://www.semanticweb.org/POC#drives"/>

    <owl:Class rdf:about="http://www.semanticweb.org/POC#Driver">
        <owl:equivalentClass>
            <owl:Class>
                <owl:intersectionOf rdf:parseType="Collection">
                    <rdf:Description rdf:about="http://www.semanticweb.org/POC#Person"/>
                    <owl:Restriction>
                        <owl:onProperty rdf:resource="http://www.semanticweb.org/POC#drives"/>
                        <owl:someValuesFrom rdf:resource="http://www.semanticweb.org/POC#Vehicle"/>
                    </owl:Restriction>
                </owl:intersectionOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>

实际数据存储在关系数据库中。 (它将来也可能来自对象数据库。)我想将数据与上述本体类相关联,并对其进行推理以找出所有驱动程序。

我能够将人和车与数据库中的表连接起来。如何将数据与“驱动器”相关联,“驱动器”存储在具有car id和person id作为外键的单独表中,以关联人员和车辆的个人?

1 个答案:

答案 0 :(得分:2)

嗯,我明白了。基本上我需要添加一个三重&#34; POC#person / 1 POC#驱动器POC#vehicle / 7 &#34;。我可以用我的多对多表来做到这一点。将来如果数据存储在对象数据库中,我可以以类似的方式使用引用。