为什么将owl:Restriction用作own:EquivalenceClass的属性? [英] Why use owl:Restriction as own:EquivalenceClass's property?

查看:182
本文介绍了为什么将owl:Restriction用作own:EquivalenceClass的属性?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我刚刚开始学习语义网,并对限制类有疑问.我挖了一段时间,但还没有找到任何答案.任何帮助将不胜感激! 从教科书中,我看到了定义限制类的示例,它们都是要定义一个匿名owl:Restrictionbnode并将该bnode与属性owl:equivalentClass链接起来.

I just start to learn Semantic Web and have a question about restriction class. I dug a while but haven't found any answer yet.. Any help would be much appreciated! From text book, I see examples of define restriction class, they are all about to define a anonymous owl:Restriction class bnode and link this bnode with property owl:equivalentClass.

示例:

example:restrictionClass owl:equivalentClass [
    rdf:type owl:Restriction;
    owl:onProperty example:resProp;
    owl:someValuesFrom example:resValue.
]

我的问题是我们可以直接定义一个限制类吗?喜欢:

My question is can we define a restriction class directly? Like:

 example:restrictionClass rdf:type owl:Restriction;
                         owl:onProperty example:resProp;
                         owl:someValuesFrom example:resValue.

定义匿名owl:Restriction有什么好处?

推荐答案

不,您不能.您看到的RDF是OWL公理的编码,例如: EquivalentClasses(C ObjectSomeValuesFrom(p D)).它被编码为:

No, you can't. The RDF you're seeing is the encoding of the OWL axiom like: EquivalentClasses(C ObjectSomeValuesFrom(p D)). It gets encoded as:

:C owl:equivalentClass [
   rdf:type owl:Restriction;
   owl:onProperty :p;
   owl:someValuesFrom :D .
]

现在,假设您还拥有公理 EquivalentClasses(C ObjectSomeValuesFrom(r E)).编码为:

Now, suppose you also had the axiom EquivalentClasses(C ObjectSomeValuesFrom(r E)). That gets encoded as:

:C owl:equivalentClass [
   rdf:type owl:Restriction;
   owl:onProperty :r;
   owl:someValuesFrom :E .
]

现在,如果您可以应用所需的缩写,您将得到:

Now, if you could apply the abbreviation that you want, you'd get:

:C rdf:type owl:Restriction ;
   owl:onProperty :p ;
   owl:onProperty :r ;
   owl:someValuesFrom :D ;
   owl:someValuesFrom :E .

现在有歧义.以下哪个C等于?

Now there's ambiguity. Which of the following would C be equal to?

  • ObjectSomeValuesFrom(p D)
  • ObjectSomeValuesFrom(p E)
  • ObjectSomeValuesFrom(r D)
  • ObjectSomeValuesFrom(r E)

仅凭RDF,您无话可说.您实际上需要对 EquivalentClasses 公理进行编码.

From the RDF alone, you don't have a way to tell. You actually need to encode the EquivalentClasses axioms.

要解决注释中的问题:我使用C,p和D来使文本更短.您最初的RDF代码段是公理的RDF编码

To address questions from the comments: I used C, p, and D to make the text shorter. Your original RDF snippet is the RDF encoding of the axiom

EquivalentClasses(
   示例:restrictionClass
    ObjectSomeValuesFrom(例如:resProp示例:resValue)
)

EquivalentClasses(
    example:restrictionClass
    ObjectSomeValuesFrom(example:resProp example:resValue)
)

那是

example:restrictionClass owl:equivalentClass [
    rdf:type owl:Restriction;
    owl:onProperty example:resProp;
    owl:someValuesFrom example:resValue.
]

编码. example:restrictionClass 在两个地方都是相同的IRI.整个空白节点是类表达式 ObjectSomeValuesFrom(example:resProp example:resValue).然后 owl:equivalentClass 只是将两者关联起来.请注意,表达式是不同的;它们表示的类是相同的.在 OWL 2 Web本体语言中给出了从OWL本体到RDF的映射. :映射到RDF图(第二版) .具体来说,请参见 2.1没有注释的公理的翻译<您将在其中找到规则的地方:

encodes. example:restrictionClass is the same IRI in both places. The entire blank node is the class expression ObjectSomeValuesFrom(example:resProp example:resValue). Then owl:equivalentClass just relates the two. Note that expressions aren't the same; the classes that they denote are the same. The mapping from OWL ontologies to RDF is given in OWL 2 Web Ontology Language: Mapping to RDF Graphs (Second Edition). Specifically, have a look at Table 1 in 2.1 Translation of Axioms without Annotations where you'll find the rules:

EquivalentClasses( CE1 ... CEn )
------------------------------------
T(CE1) owl:equivalentClass T(CE2) .
...
T(CEn-1) owl:equivalentClass T(CEn) . 

ObjectSomeValuesFrom( OPE CE )
------------------------------
_:x rdf:type owl:Restriction .
_:x owl:onProperty T(OPE) .
_:x owl:someValuesFrom T(CE) . 

沿相反方向行驶时,可以阅读RDF并重建公理.但是支持该映射使您可以执行您正在谈论的缩写,并且拥有两个等效类公理.您将最终得到模棱两可的RDF,因为您将拥有两个两个 owl:onProperty三元组和两个owl:someValuesFrom三元组.

When you go in the reverse direction, you can read in the RDF and reconstruct your axiom. But support that the mapping let you do the abbreviation that you're talking about, and you had two equivalent class axioms. You'd end up with ambiguous RDF, since you'd have two owl:onProperty triples, and two owl:someValuesFrom triples.

也许算术示例会有所帮助.我们知道 4 2 + 2 1 + 3 都是表示相同数字的表达式.这样我们就可以得到公理:

Maybe an example from arithmetic would help. We know that 4, 2+2, and 1+3 are all expressions that denote the same number. So we can have the axioms:

  • 4 = 2 + 2
  • 4 = 1 + 3

现在假设我们在RDF中使用类似以下内容的代码进行编码:

Now suppose that we encode that in RDF with something like:

:four :equals [ rdf:type :sum ; :left :two ; :right :two ] .
:four :equals [ rdf:type :sum ; :left :one ; :right :three ] .

很好,我们可以从中重建 4 = 2 + 2 4 = 1 + 3 .现在,假设我们尝试将这些属性移动到:four ,而不是与:equals 相关的空白节点.我们最终会得到:

That's nice, and we can reconstruct 4 = 2+2 and 4 = 1+3 from it. Now suppose we tried to move those properties to :four, rather than a blank node related by :equals. We'd end up with:

:four rdf:type :sum .
:four :left  :two .
:four :right :two .
:four :left  :one .
:four :right :three .

但是这应该代表什么公理?您可以通过四种方式从:four 左右选择.应该对以下哪个进行编码?

But what axioms is this supposed to represent? You have have four ways of picking a left and right from :four. Which of the following is it supposed to encode?

  • 4 = 2 + 2
  • 4 = 2 + 3
  • 4 = 1 + 2
  • 4 = 1 + 3

这篇关于为什么将owl:Restriction用作own:EquivalenceClass的属性?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆