簡體   English   中英

使用 OWL 本體通過推理進行類傳播

[英]Class propagation via inference using OWL ontology

我正在嘗試編寫一個本體,它將在連接的節點之間傳播某些類。 這種連接可以由任何屬性完成。 傳播應該在這些屬性的域的方向上。

例如:

Node A -(any property)-> Node B
Node B -(rdfs:type)-> Sensitive Element

在這里我們可以看到兩個節點Node ANode B通過一些屬性any property連接。 Node BSensitive Element 通過連接到敏感元素Node B ,我想推斷Node A也是敏感元素:

Node A -(rdfs:type)-> Sensitive Element

這個三元組是我試圖推斷的那個三元組。 你可以看到我已經在any property的域的方向上傳播了Sensitive Element類。

是否有可能編寫一個可以實現這種推理三重的 OWL 本體?

額外信息:

  • 作為推理引擎,我使用 Apache Jena 及其所有默認值
  • 為方便起見,我想從推理而不是 SPARQL 查詢中獲得這樣的結果

如果您的知識庫中有一對個體:NodeA:NodeB ,那么您可以推斷:

:NodeA  owl:topObjectProperty  :NodeB .

假設你的規則成立,並且存在敏感元素,那么每件事都是敏感元素。 這可能不是您想要的。

OWL 本體告訴您有關它所描述的宇宙的一些信息,但它沒有定義宇宙。 這意味着,如果您不描述 A 和 B 之間的關系,並不意味着它們之間沒有關系。 事實上,根據 OWL 語義的定義方式,任何 2 個實體之間總是存在關系。 即使owl:topObjectProperty在 OWL 中不存在(在 OWL 1 中就是這種情況),A 和 B 之間也可能存在未命名的關系。

您最可能想要的是表達僅使用命名屬性的規則。 例如,為此,您可以使用 SPARQL 構造或基於 RDFS 的規則語言。

另一種選擇是為每個命名屬性定義一個公理。 這些公理可以很容易地以編程方式添加。 准確地說,對於每個命名屬性ppp ,添加:

[]  a  owl:Restriction;
   owl:onProperty  ppp
   owl:someValuesFrom  :SensitiveElement;
   rdfs:subClassOf  :SensitiveElement .

這樣做的好處是您可以調整哪個屬性使事物敏感或不敏感。

暫無
暫無

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

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