例如,我有三個類:Flock,Bird,Velocity。我也有兩個屬性:hasMember(域是Flock,範圍是Bird)和hasAttribute(域是Bird,範圍是Velocity)。現在我想添加一個EquivalentClass限制到Flock類作爲定義。讓我們考慮一個非常簡單的定義:在一羣中,所有的鳥都有相同的速度。如何在OWL中表達這一點?我們可以在OWL限制中使用owl:sameAs嗎?
回答
警告:這個答案實際上是不正確的,請看看評論,看看爲什麼。
問題:「我們可以在OWL限制中使用owl:sameAs
嗎?」答案是否定的,不在OWL(2)本體中。但是,您可以在OWL Full本體中執行任何您喜歡的操作(即,根據基於OWL RDF的語義解釋的RDF圖)。然而,這與你的問題的細節無關,你想談談雞羣中鳥類的速度。
在OWL 2 DL的限制範圍內,您的問題有一個解決方案。引入財產flockVelocity
並使財產鏈hasMember o hasAttribute
成爲flockVelocity
的子財產。使flockVelocity
成爲一個功能屬性,你就完成了。或者,您可以在flockVelocity
上定義基數限制。在烏龜:
:hasMember a owl:ObjectProperty;
rdfs:domain :Flock;
rdfs:range :Bird .
:hasAttribute a owl:ObjectProperty; # why not :hasVelocity?
rdfs:domain :Bird;
rdfs:range :Velocity .
:flockVelocity a owl:ObjectProperty, owl:FunctionalProperty;
owl:propertyChainAxiom (:hasMember :hasAttribute) .
完成。如果你不關心在OWL DL中並允許自己完全自由地使用OWL,那麼可以使用空白節點而不是:flockVelocity
,這樣就不必引入假的屬性名稱。
謝謝安託萬。我嘗試了財產鏈。但是,如果我將flockVelocity作爲功能屬性運行HermiT,則會發生內部推理錯誤:「推理期間發生錯誤:非簡單屬性'<...#flockVelocity>'或其相反出現在基數限制'ObjectMaxCardinality (1 <...#flockVelocity><...#Velocity>)''「所以我將基數限制添加到Flock類,但它沒有幫助。 – deerls
@deerls,請參見[11.2關於公理關閉的限制](https://www.w3.org/TR/owl2-syntax/#The_Restrictions_on_the_Axiom_Closure),「對簡單角色的限制」和「對屬性層次結構的限制」段落。 –
Aaaah,你是對的,我錯了!由於斯坦尼斯拉斯提到的原因,我的本體論不在OWL 2 DL中。但是,有可能通過基數限制來獲得期望的結果。讓我編輯我的答案。 –
- 1. 如何/我們可以在Cloudant中使用複製時應用「限制」嗎?
- 2. 我們可以使用OWL API在子類之間創建ObjectProperty嗎?
- 3. 我們可以限制在我們的設備中安裝.apk文件嗎?
- 4. 我們可以限制MySQL中表中的行數嗎?
- 5. 我們可以使用itext Android在PDF中繪製PieChart嗎?
- 6. 我們可以在控制器laravel中使用helper嗎?
- 7. 我們可以在我們的matlab程序中使用「點」嗎?
- 8. 我們可以限制SQL Report Builder中的某些功能嗎?
- 9. 我們可以限制mxGraph中的縮放級別嗎?
- 10. 我們可以限制Z3中實項的精度嗎?
- 11. 可以在Protege OWL查詢中使用正則表達式嗎?
- 12. 我們可以限制後臺按鈕的功能嗎?
- 13. 我們可以限制luigi任務的吞吐量嗎?
- 14. 我們可以限制APScheduler只運行100次嗎?
- 15. 我們可以限制我們的數據庫不自動增長嗎?
- 16. 我可以在iOS上限制NSOperation/Thread的CPU使用率嗎?
- 17. 我們可以通過使用命名查詢限制記錄嗎?
- 18. 我們真的可以使用Static來限制全局變量的範圍嗎?
- 19. 我們可以使用JasperReports和AngularJS嗎?
- 20. 我們可以使用AJAX和XHTML嗎?
- 21. 我們可以使用RadControles在Asp.net MVC中使用嗎?
- 22. 我們可以在tcsh別名中使用可選參數嗎?
- 23. 我們可以在php中創建無限的會話嗎?
- 24. 我們可以授予在Oracle中查看SELECT權限嗎?
- 25. 我們可以在winston中設置無限maxFiles嗎?
- 26. 我們可以自動複製* .dll.config嗎?
- 27. 現在我們可以在DjEng中使用GAE中的ORM嗎?
- 28. 我們可以在cfgrid中製作可摺疊的行嗎?
- 29. 限制人們可以在foswiki中使用的變量數量
- 30. 我們可以在android中使用svg圖像嗎?如果我們可以使用然後如何在android
作爲一種解決方法,您可以將'Flock'屬性'hasAttribute'聲明爲域,並編寫簡單的SWRL規則。 –
謝謝斯坦尼斯拉夫。我知道它可以用規則來表達。我只是想知道,如果只有OWL公理可以做到這一點。 – deerls
OWL是無變量的,也就是說,除非具有可以使用的特定值,否則無法對特定類的所有個體的速度做出聲明。因此,SWRL存在。 – AKSW