簡體   English   中英

如何使用 SPARQL 構造 owl:Restriction

[英]How to use SPARQL to CONSTRUCT owl:Restriction

我正在嘗試對我的本體中的某些實例創建 OWL 限制。 這些實例通過rdf:type關系關聯到類,而它們應該是某種貓頭鷹限制。 為了解決這個問題,我創建了一個CONSTRUCT語句:

PREFIX myontology:<http://myontology.org/myonto/>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
CONSTRUCT {
  ?entity rdf:type ?owlRestriction .
  ?owlRestriction a owl:Restriction .
  ?owlRestriction owl:onProperty myontology:someRelation .
  ?owlRestriction owl:someValuesFrom ?someClass .
}

WHERE {
  ?owlRestriction a owl:Restriction .
  ?entity a ?class .
  ?class rdfs:subClassOf* myontology:someSuperClass .
}

但是,當我運行它時,創建的限制包括myontology:someSuperClass下的每個子類。 我如何更改上述查詢,以便只有通過rdf:type與我的實例直接相關的類才能更改為限制?

謝謝您的幫助!

CONSTRUCT查詢適當地創建了owl:Restriction關系:

PREFIX myontology:<http://myontology.org/myonto/>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
CONSTRUCT {
  ?entity a [rdf:type owl:Restriction ;
           owl:onProperties myontology:myrelation;
           owl:someValuesFrom ?class] .
  
}

WHERE {
  ?entity a ?class .
  ?class rdfs:subClassOf* myontology:someSuperClass .
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM