2015-11-14 291 views
3

在RDF/RDFS/OWL中,如何判斷實體是純粹實例還是類?我明白,類實體也是實例,因爲它們是「類」實體的實例和其他類的子類。但是,我相信有些實體只是一個類的實例,而不是類本身。如何判斷資源/實體是類還是實例

現在,我想告訴的時候,唯一的辦法就是純粹的一個實例是看(即實體的RDF數據中)的發言與rdf:type謂詞,尋找與rdfs:subClassOf的任何陳述沒有或相當的謂詞。

但是,尋找沒有語句不是確保某個事物真正是一個類或一個實例的好方法。

有沒有更好的方法來辨別實體是類還是純實例?希望在鼻子下面可能會有一些東西。

回答

4

在OWL中,必須聲明一個類,無論是在使用它的本體中,還是在導入它的某個本體中。沒有聲明公理就是違反配置文件 - 這意味着本體在OWL Full中正式存在(例如,不能保證推理者能夠有效地使用它)。

不幸的是,實踐中使用的本體經常有違規行爲,所以這不是一個完全令人滿意的標準。

個人在OWL,RDF或RDFS中都沒有此限制。所以,缺少一個實體的類型斷言(或者只存在一個斷言)可以很好地表明你正在與一個人打交道。

除了在subClassOf公理中出現以外,類還可以出現在equivalent,disjointWith或作爲限制的填充部分(在OWL中)。

爲了使問題更加複雜化,支持類和個人之間的雙關語 - 也就是說,同一個IRI可以聲明爲一個類和一個個體。所以,有可能 - 也是有效的 - 本體中的一個類被用作另一箇中的個體。

+0

當你說一個類必須被聲明爲這樣的時候,你的意思是說它的RDF必須包含一個三元語句,其中的對象是'class'? – LazerSharks

+0

是的 - 請參閱表7以瞭解規範https://www.w3.org/TR/owl2-mapping-to-rdf/#Parsing_of_the_Ontology_Header_and_Declarations – Ignazio

相關問題