OWL-DL;确定表达是否合法

时间:2015-04-06 10:08:01

标签: owl description-logic

在SHOIN(D)中,它等同于OWL-DL使用的DL族; 这个表达是否合法:

F ⊑ (≤1 r. D) ⊓ (¬ (=0 r. D))

其中F,D是概念,r是一个角色。我想表达的是,F的每个实例最多只与D到r的一个实例相关,而不是与零实例相关。

一般来说,如何判断某些表达是合法的。河吨。 DL的具体变化?我认为使用变体的BNF语法可能就是我的目标。

1 个答案:

答案 0 :(得分:1)

一种简单的方法是检查是否可以在Protege中编写它。 您可以在Protege中编写的大多数内容都是合法的OWL-DL。在Protege中你可以写:

  

F SubClassOf ((r max 1 D)而不是(r 完全 0 D))< / p>

当然,说某些东西最多只有1个值,而不是一个就完全相同,它说的恰好是1:

  

F SubClassOf r 完全 1 D

但是你可以在Protege中做一些不合法的OWL-DL。找出这些是什么的更直接的方法是标准,特别是§11 Global Restrictions on Axioms in OWL 2 DL。通常,您可能遇到的唯一问题是尝试使用不允许的复合属性。

如果您不想手动检查,则可以尝试将本体上传到OWL Validator并选择 OWL2 DL配置文件