以文本方式查看主题

-  W3CHINA.ORG讨论区 - 语义网·描述逻辑·本体·RDF·OWL  (http://bbs.xml.org.cn/index.asp)
--  『 Semantic Web(语义Web)/描述逻辑/本体 』  (http://bbs.xml.org.cn/list.asp?boardid=2)
----  能否把objectproperty的range定义成owl:Class  (http://bbs.xml.org.cn/dispbbs.asp?boardid=2&rootid=&id=70225)


--  作者:dulm
--  发布时间:12/8/2008 1:00:00 PM

--  能否把objectproperty的range定义成owl:Class
因为我定义的person本体 有一个interestIn属性。

比如我有Architecture, 子类ChineaseArchitecture

我要把interestIn的range定义成owl:Class,而不是Architecture或ChineaseArchitecture的具体类。定义person的individule的时候才将interestIn指向Architecture。

这样我就可以通过 ?a interestIn ?b, ?c owl:type ?d -> ?a mayWantSee ?c
这条规则来判断用户是否想看某一个实例。

从rdf语法是讲得通的,因为类就是owl:Class的实例。

但是protege里面好像建不出,只能手工加入,不放心所以上来问一下大家,这样做是否可以。

3x


--  作者:iamwym
--  发布时间:12/8/2008 2:30:00 PM

--  
以下是引用dulm在2008-12-8 13:00:00的发言:
因为我定义的person本体 有一个interestIn属性。

比如我有Architecture, 子类ChineaseArchitecture

我要把interestIn的range定义成owl:Class,而不是Architecture或ChineaseArchitecture的具体类。定义person的individule的时候才将interestIn指向Architecture。

这样我就可以通过 ?a interestIn ?b, ?c owl:type ?d -> ?a mayWantSee ?c
这条规则来判断用户是否想看某一个实例。

从rdf语法是讲得通的,因为类就是owl:Class的实例。

但是protege里面好像建不出,只能手工加入,不放心所以上来问一下大家,这样做是否可以。

3x


不可以,类不是owlclass的实例,owl:class是用来定义某个entity的rdf:type的predicate

你完全可以把range放在architecture,我看不出为什么不能这么做,或者,range定义成owl:thing就可以


--  作者:dulm
--  发布时间:12/8/2008 4:55:00 PM

--  
OWL定义里面
<rdfs:Class rdf:ID="Class">
  <rdfs:label>Class</rdfs:label>
  <rdfs:subClassOf rdf:resource="&rdfs;Class"/>
</rdfs:Class>


A Semantic Web Primer 3.5.1
rdfs:Class, the class of all classes。


定义类的时候不都是以<owl:class> 这样开头的么。rdf的语法提到不是以<rdfs:resourse>开头,而是以<rdf:xxx>开头的就等于rdfs:type是xxx。

为什么类不是<owl:class>的实例啊?


你完全可以把range放在architecture。

如果我把range定义为architecture,那我比如建一个人“bob”那他的interestIn必须指向具体的一幢楼比如“世贸大厦”,这样就不能表达出“bob”感兴趣的是所有建筑物。
而且一个人的兴趣是很多的,我想让interestIn能指向任意一个本体的任意类,这样可以根据程序的需要构建本体。
当然我可以直接把interestIn直接写成string,那样就失去语义了。

3x


W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
39.063ms