【问题标题】:How to retrieve all classes connected by an object property given some other class?给定其他类,如何检索由对象属性连接的所有类?
【发布时间】:2015-08-17 10:24:43
【问题描述】:

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

<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 和推理器可用于查询。

【问题讨论】:

    标签: rdf semantic-web owl owl-api reasoning


    【解决方案1】:

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

    【讨论】:

    • 填充符是作为类出现在限制中的内容,在这种情况下,capabilityB 和capabilityC 是填充符。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-07-19
    • 1970-01-01
    • 1970-01-01
    • 2015-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多