簡體   English   中英

OWL 財產限制與 SHACL

[英]OWL Property Restrictions vs. SHACL

鑒於OWL 屬性限制SHACL之間的選擇,是否有任何理由再選擇 OWL 方法?

特別是在基數約束方面,我想知道是否認為 SHACL 取代了 OWL。 語法看起來與我的隨意檢查相似。

我可能錯過了 OWL 基數約束的目的。 作為本體的一部分,它們應該促進推理(與驗證不同的關注點)。 但是基數約束如何促進推理呢?

OWL 和 SHACL 之間的差異如下表所示。

貓頭鷹 沙克
基於開放世界假設 基於封閉世界假設
為推理而設計 專為驗證而設計
計算成本低(典型問題是可判定的) ?
很多推論幾乎“開箱即用” 必須手動定義很多約束
作為 RDF 的文檔很有用

至於 OWL 中的基數約束,這些約束允許在某些情況下在某些方面關閉世界,以獲得額外的推論。

基數約束的邏輯在 OWL 和 SHACL 中是相反的。 非正式地:

在 SHACL 中,

ex:PersonShape
    a sh:NodeShape ;
    sh:targetClass ex:Person ;
    sh:path ex:parent ;
    sh:minCount 1 .`

意味着如果某人是一個人,那么他/她必須至少有一個父母。

在貓頭鷹,

ex:Person owl:equivalentClass [ rdf:type owl:Restriction ;
                                 owl:onProperty ex:parent ;
                                 owl:minCardinality "1" ] . `
                        

意味着如果某人至少有一個父母,那么他/她就是一個人。


來自TopBraid 營銷材料

SHACL 與 RDF Schema 和 OWL 有何不同? RDFS 和 OWL 是為“開放世界”而設計的,在這個世界中,數據可以從語義網上的許多地方組裝起來。 多年來,這個設計目標引起了很多挫折,因為它甚至無法檢查最明顯的完整性約束,例如屬性是否具有一定數量的值。 相比之下,SHACL 假設一個“封閉的世界”,符合典型業務用戶的期望。 此外,OWL 已經針對某種類型的分類問題進行了優化,但它不能用於執行數據驗證所需的常規操作,例如數學計算或文本操作。 SHACL 更具表現力。 此外,它與 SPARQL 無縫集成以表達幾乎任意條件。 順便說一句,使用 SHACL 語句增量擴展 RDFS 或 OWL 模型是完全沒問題的,支持這兩個世界。

另見: http : //spinrdf.org/shacl-and-owl.html

根據我的經驗,大多數 OWL 用戶並沒有真正理解或不關心 OWL 的實際語義(開放世界假設等)。 在許多情況下,使用 OWL 基數限制是因為別無選擇。 然而,正如其他地方所指出的,owl:maxCardinality 1 的語義與大多數人的預期相反:這意味着如果屬性有兩個值,那么這些值被假定為相同的 (owl:sameAs)。 在 SHACL 中,sh:maxCount 1 表示如果該屬性有兩個值,則需要刪除其中之一。

繼續使用 OWL 而支持 SHACL 的主要原因是 OWL 具有更長的歷史(即更多的工具、可重用的本體和示例),並且以防萬一您想使用 OWL (DL) 推理。 但如果您需要傳統的封閉世界語義,請使用 SHACL。 請注意,SHAACL 和 OWL 可以混合使用,例如在一個文件中定義類和屬性,然后在另一個文件中定義 OWL 限制並在另一個文件中定義 SHACL 約束。

根據我的經驗,OWL 推理很少使用,並且復雜的 OWL 構造(包括RestrictionunionOf )不是很有用。

甚至rdfs:domain/range也會導致重用問題,因為它們是單態的:將它們與多個值一起使用,這會帶來麻煩。

所以我們 Ontotext 最近一直在使用基於示例的模型、非提交schema:domain/rangeIncludes和形狀來表達類和道具如何一起使用。

我認為 OWL 完全基於開放世界假設這一事實使其非常獨特。 在某些用例中,您將來自許多不同來源的需要此獨特功能的許多數據集匯集在一起​​。 對於任何給定的事實,可能總會有來自不同來源的不同意見。 在您的“數據結構”(或企業知識圖譜)中對“真相的多個版本”的基本支持至關重要,甚至更強大:它是企業范圍用例的最重要的推動因素。 對於心電圖,我們需要以 OWL 為核心。 形成所有數據的“無偏見”表示,不強迫任何特定的封閉世界觀,推斷所有正確的事實。 洋蔥圈中有很多翻譯語言,例如 SHACL(嚴格的上下文特定的封閉世界對象形狀)、SPARQL(圖表 2 表格)、R2RML(表格 2 圖表)等等。

暫無
暫無

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

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