0

假设本体中有几个类定义:

<owl:Class rdf:about="&ontX;A">
    <rdfs:label>A</rdfs:label>
    <rdfs:subClassOf>
        <owl:Restriction>
            <owl:onProperty rdf:resource="&ontY;hasCapability"/>
            <owl:someValuesFrom rdf:resource="&ontY;CapabilityB"/>
        </owl:Restriction>
    </rdfs:subClassOf>
    <rdfs:subClassOf>
        <owl:Restriction>
            <owl:onProperty rdf:resource="&ontY;hasCapability"/>
            <owl:someValuesFrom rdf:resource="&ontY;CapabilityC"/>
        </owl:Restriction>
    </rdfs:subClassOf>
</owl:Class>

如何检索给定类的所有功能。在上面的示例中,对于给定的 A 类,应返回 CapabilityB 和 CapabilityC。

&ontY;CapabilityB 和 &ontY;CapabilityC 是另一个本体中的类。本体不能改变。

OWL API 和推理器可用于查询。

4

1 回答 1

2

编写一个 OWLObjectVisitor 收集输入类的超类中提到的所有一些值限制的填充物,然后获取每个填充物的所有子类,这些将是与这些限制兼容的能力类。

于 2015-08-17T12:07:17.267 回答