2015-09-26 124 views
0

我是OWL是新手,我已经定义使用OWL DL的节点定义一个节点,作为使用OWL本体

<Declaration> 
    <Class IRI="#node"/> 
</Declaration> 
<Declaration> 
    <ObjectProperty IRI="#leftChild"/> 
</Declaration> 
<Declaration> 
    <ObjectProperty IRI="#parent"/> 
</Declaration> 
<Declaration> 
    <ObjectProperty IRI="#rightChild"/> 
</Declaration> 
<InverseObjectProperties> 
    <ObjectProperty IRI="#parent"/> 
    <ObjectProperty IRI="#leftChild"/> 
</InverseObjectProperties> 
<InverseObjectProperties> 
    <ObjectProperty IRI="#parent"/> 
    <ObjectProperty IRI="#rightChild"/> 
</InverseObjectProperties> 
<FunctionalObjectProperty> 
    <ObjectProperty IRI="#leftChild"/> 
</FunctionalObjectProperty> 
<FunctionalObjectProperty> 
    <ObjectProperty IRI="#parent"/> 
</FunctionalObjectProperty> 
<FunctionalObjectProperty> 
    <ObjectProperty IRI="#rightChild"/> 
</FunctionalObjectProperty> 
<ObjectPropertyDomain> 
    <ObjectProperty IRI="#leftChild"/> 
    <Class IRI="#node"/> 
</ObjectPropertyDomain> 
<ObjectPropertyDomain> 
    <ObjectProperty IRI="#parent"/> 
    <Class IRI="#node"/> 
</ObjectPropertyDomain> 
<ObjectPropertyDomain> 
    <ObjectProperty IRI="#rightChild"/> 
    <Class IRI="#node"/> 
</ObjectPropertyDomain> 
<ObjectPropertyRange> 
    <ObjectProperty IRI="#leftChild"/> 
    <Class IRI="#node"/> 
</ObjectPropertyRange> 
<ObjectPropertyRange> 
    <ObjectProperty IRI="#parent"/> 
    <Class IRI="#node"/> 
</ObjectPropertyRange> 
<ObjectPropertyRange> 
    <ObjectProperty IRI="#rightChild"/> 
    <Class IRI="#node"/> 
</ObjectPropertyRange> 

`

和我想定义的概念为根,分支广告离开,从而以根,枝和叶的形式推断和分离节点,因为根将没有父节点,节点的父节点至少有一个孩子,节点只有父节点和没有子节点,或者孤儿节点没有父节点儿童。

回答

0

如果您希望此层次结构与本体中的子类层次结构匹配,可以使用SubClassOf公理连接祖先和子级。那么,你的根将是那些唯一的祖先是猫头鹰的人:事情是,你的叶子将是唯一的后裔是猫头鹰的那些:什么都没有,你的分支将是所有剩余的阶级。