[英]How to query implicit properties of owl:equivalentclass
我想查詢一個包含由owl:equivalentclass
對象持有的隱式屬性的本體。 我該如何實現?
本體持有這樣的三元組:
<plantURI> rdf:type <http://purl.obolibrary.org/obo/FLOPO_0004148>
。
類<http://purl.obolibrary.org/obo/FLOPO_0004148>
具有以下定義:
<owl:Class rdf:about="http://purl.obolibrary.org/obo/FLOPO_0004148">
<owl:equivalentClass>
<owl:Restriction>
<owl:onProperty rdf:resource="http://purl.obolibrary.org/obo/BFO_0000051"/>
<owl:someValuesFrom>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<rdf:Description rdf:about="http://purl.obolibrary.org/obo/PO_0009046"/>
<owl:Restriction>
<owl:onProperty rdf:resource="http://purl.obolibrary.org/obo/RO_0000053"/>
<owl:someValuesFrom rdf:resource="http://purl.obolibrary.org/obo/PATO_0000320"/>
</owl:Restriction>
</owl:intersectionOf>
</owl:Class>
</owl:someValuesFrom>
</owl:Restriction>
</owl:equivalentClass>
<rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string">flower green</rdfs:label>
</owl:Class>
但是,我不想這樣簡單地查詢URI:
SELECT * { ?s rdf:type <http://purl.obolibrary.org/obo/FLOPO_0004148> }
但是我有時只想查詢其隱式屬性之一,例如屬性<http://purl.obolibrary.org/obo/PATO_0000320>
(“綠色”)-查找所有以綠色表示的植物。
因此,最佳查詢如下所示:
SELECT * {
?s ?p <http://purl.obolibrary.org/obo/PATO_0000320>
}
這給了我對象,因為對象隱式地擁有此屬性。
這可能涉及在Virtuoso中進行推理。 但是,幾個小時后,我無法提出任何解決方案來在SPARQL中執行此操作。
Virtuoso提供兩種形式的推理和推理。 1.內置-基於固定規則,涉及owl:equivalentClass,owl:equivalentProperty,owl:inverseOf,owl:sameAs,owl:InverseFunctionalProperty,owl:SymmetricProperty,rdfs:subClassOf,rdfs:subPropertyOf(開源版和商業版均支持此功能)
現在出現的只是需要owl:equivalentClass推理,因此您可以查看以下內置的推理和推理示例:
啟用等效類推理
DEFINE input:inference 'urn:owl:equivalent:class:inference:rules'
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX bmo: <http://purl.org/bmo/ns#>
PREFIX fibo: <https://spec.edmcouncil.org/fibo/ontology/FND/AgentsAndPeople/People/Person>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
SELECT DISTINCT ?s
WHERE {
?s a fibo:person .
}
LIMIT 20
等效類推理已禁用(注意DEFINE輸入:推理編譯注釋已注釋掉)
# DEFINE input:inference 'urn:owl:equivalent:class:inference:rules'
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX bmo: <http://purl.org/bmo/ns#>
PREFIX fibo: <https://spec.edmcouncil.org/fibo/ontology/FND/AgentsAndPeople/People/Person>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
SELECT DISTINCT ?s
WHERE {
?s a fibo:person .
}
LIMIT 20
實時查詢結果頁 (應為空)
來自我們的Github存儲庫的 示例源代碼文檔 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.