以文本方式查看主题

-  计算机科学论坛  (http://bbs.xml.org.cn/index.asp)
--  『 Semantic Web(语义Web)/描述逻辑/本体 』  (http://bbs.xml.org.cn/list.asp?boardid=2)
----  本体能实现属性间关系的有效表达吗?  (http://bbs.xml.org.cn/dispbbs.asp?boardid=2&rootid=&id=31755)


--  作者:xinxing
--  发布时间:5/4/2006 11:42:00 AM

--  本体能实现属性间关系的有效表达吗?
节假日好冷清喔。来个帖子长点人气。^_^
若有属性A,则必有属性B。该必要条件关系如何表达?
属性A和B都是xsd:date型,如何表达属性A的时间必然早于属性B的时间呢?
两个想来简单的关系,我在Protege中却没有看到有类似的owl词汇可以表达。在owl中好像大多是对一个属性进行限制,对属性的关系描述很少,少有的描述是“transitive”、“inverse”等,可以实现多个属性之间关系的表达,但其他属性间的关系就无法表达,这样owl要表现的本体智能化体现不出来呀。
初学本体,是不是我思路错了。请高手指教!打破我这数月来的思维障碍。谢谢。
顺祝大家节日快乐!
--  作者:superc_7
--  发布时间:5/4/2006 3:06:00 PM

--  
的确,在描述逻辑中属性的构造子远没有类的构造子多
好像是因为复杂属性在计算方面会带来很多麻烦

rdfs中有subPropertyOf属性可以声明一个属性是另一个属性的子属性
这个在OWL Full中可以使用
至于属性之间其他复杂的关系
OWL好像支持的不多


--  作者:xinxing
--  发布时间:5/4/2006 8:43:00 PM

--  
有什么办法可以实现以上属性间关系的有效表达呢?望高手不吝赐教!
--  作者:wolfel
--  发布时间:5/4/2006 9:18:00 PM

--  
可能只能用rule吧,Rule的提出也是为了弥补DL在这个表达能力方面的欠缺。
--  作者:wason21cn
--  发布时间:5/4/2006 11:15:00 PM

--  
在DL中是可以表示role的隶属关系的,这个叫role hierarchy, 至于本体中就要看怎么表示了。
--  作者:xinxing
--  发布时间:5/5/2006 12:09:00 PM

--  
大家还是没有说到确切处。能否具体点。或者哪位高手给个简要的示例帮助我下。如rule如何定义……谢谢!
--  作者:xinxing
--  发布时间:5/9/2006 11:52:00 AM

--  
怎么没有高手指点下吗?等待ing……
--  作者:MerryZhang
--  发布时间:5/9/2006 2:08:00 PM

--  
xinxing,这个问题问得相当地好,说明你是一个爱开动脑筋思考的人。
同意二楼的观点,属性之间的关系过分复杂,的确会增加计算复杂性。属性主要是用来描述和限制类的。
--  作者:xinxing
--  发布时间:5/9/2006 4:25:00 PM

--  
本体可以看作<概念,关系,函数,公理,实例>组成的五元组。
1)其中,公理代表永真断言,是定义在概念和属性上的限定和规则。
    这里的规则究竟如何定义呢?规则其实就是描述属性之间的一种关系。但没有看过具体的例子,好迷糊。
2)概念之间的关系通常有:part-of,kind-of,instance-of,attribute-of四种。而特定领域在应用中还可以根据具体情况定义相应的关系,如何定义呢?
    时间紧+脑袋笨。求助高手s!我提问中的属性关系通过rule如何定义,哪位高手给个详细点的指点如何?感觉大家都是蜻蜓点水般说下就匆匆离去。
--  作者:chris
--  发布时间:5/9/2006 4:48:00 PM

--  
“公理”在dl中就是:subclassof,subpropertyof,disjointwith,functionalproperty等
“关系”在特定领域中,你就直接在property tab中creat不就行了,然后定义其domain,range和
restriction不就行乐
加“rule"要看你用什么推理机,才能选择一种语言,现在推行的似乎是swrl
问一下:你是用protege建本体吗
--  作者:river_hh
--  发布时间:5/9/2006 5:02:00 PM

--  
OWL的特长是描述概念间的层次关系或分类结构(hierarchy,taxonomy)。

Q1.  以下是引用xinxing在2006-5-4 11:42:00的发言:
若有属性A,则必有属性B。该必要条件关系如何表达?

A1. 这个在OWL中是不能描述的。但是OWL能表达某个概念(或类)的必有属性。例如假定概念“Person”的必有属性是hasParent,则“Person”可以定义为:
Person=\exist hasParent.Person
上述表示式是利用开方世界假设(OWA)来体现概念的必有属性。

Q2. 以下是引用xinxing在2006-5-4 11:42:00的发言:
属性A和B都是xsd:date型,如何表达属性A的时间必然早于属性B的时间呢?

A2. 这个在OWL中是不能描述的。但可以考虑采用DL+时序算子的方式描述。
参考文献
A Temporal Description Logic for Reasoning about Actions and Plans,
A Survey of Temporal Extensions of Description Logics

Q3. 以下是引用xinxing在2006-5-4 11:42:00的发言:
两个想来简单的关系,我在Protege中却没有看到有类似的owl词汇可以表达。在owl中好像大多是对一个属性进行限制,对属性的关系描述很少,少有的描述是“transitive”、“inverse”等,可以实现多个属性之间关系的表达,但其他属性间的关系就无法表达,这样owl要表现的本体智能化体现不出来呀。

A3. OWL是在表达能力和推理复杂度之间找了trade-off,即在保证判定性的条件下尽可能的丰富表达能力。这就是逻辑。


--  作者:MerryZhang
--  发布时间:5/9/2006 5:32:00 PM

--  
OWL可以分为三种:OWL Lite, OWL Full, OWL DL
在不同的情况下选择不同的表示,也可以和其他结合起来。
--  作者:river_hh
--  发布时间:5/9/2006 5:35:00 PM

--  
以下是引用superc_7在2006-5-4 15:06:00的发言:
rdfs中有subPropertyOf属性可以声明一个属性是另一个属性的子属性
这个在OWL Full中可以使用
至于属性之间其他复杂的关系
OWL好像支持的不多

subPropertyOf在OWL Lite和OWL DL中也可以使用的。OWL DL与OWL Full的区别在于:
OWL DL不支持RDF的Reification,而OWL Full支持。也就是说OWL Full支持Classes as Property values。在OWL DL中一个对象属性的取值只能是个体不能是概念(或类),但OWL Full允许属性的取值是概念(或类)。W3C上有篇文章介绍了如何用OWL DL来表达Classes as Property values。

Representing Classes As Property Values on the Semantic Web, http://www.w3.org/TR/swbp-classes-as-values/.

好像有点误会superc_7的意思,误以为superc_7指subPropertyOf仅能在OWL Full。Sorry



--  作者:wolfel
--  发布时间:5/9/2006 7:33:00 PM

--  
表示属性间关系,使用Rule的话就考虑用SWRL吧,KOAN2支持SWRL的推理。

此外还有一些其他RULE的原型系统,比如DR-DEVICE,NLP-DL,但是尚未称为W3C标准,而且不能下载。

OWL之所以不能支持对属性的构造,是因为它必须要保证可判定性。对属性过强的支持会使得OWL的模型丧失tree-model特性,而正是这种特性保证了OWL-DL/LITE的可判定性。因此,人们才提出使用规则来弥补这种表达能力上的欠缺(实际上规则的提出还有很多别的原因,这只是其中的一种)。SWRL是在本体层构建Horn规则,虽然它的表达能力也很有限,但是也在一定程度上弥补了这个不足。SWRL之上更强的规则如何定义,目前也在研究之中。


--  作者:river_hh
--  发布时间:5/9/2006 8:14:00 PM

--  
以下是引用wolfel在2006-5-9 19:33:00的发言:
实际上规则的提出还有很多别的原因

wolfel,列举几条来听听。。。


--  作者:wolfel
--  发布时间:5/9/2006 8:18:00 PM

--  
规则与很多具体应用领域具有比较好的对应关系,从工程角度来看建模更加直观,

此外,对于非单调推理的支持,规则也比本体处理得更好。


--  作者:river_hh
--  发布时间:5/9/2006 8:28:00 PM

--  
以下是引用wolfel在2006-5-9 20:18:00的发言:
规则与很多具体应用领域具有比较好的对应关系,从工程角度来看建模更加直观,

此外,对于非单调推理的支持,规则也比本体处理得更好。


基本同意,有一些具有Logic Programming背景的人正在试图将DL与LP结合,利用LP的Negation as Failure的特性实现非单调推理。但有一个问题是开放世界假设和封闭世界假设的矛盾。


--  作者:wolfel
--  发布时间:5/9/2006 8:33:00 PM

--  
这方面的工作太多了。确实存在这个矛盾,有人尝试解决这个矛盾,但是在逻辑程序中引入无穷论域以后做得不是很好,还有些人使用DL表示Web Service中的policy又不得不使用模态算子开启封闭世界假设,总之这个矛盾实在是有点尴尬。

其实在本体层之上构建规则,如果是异构方法的话倒也不必非要顾及开放世界假设,因为在规则层做的推理可能恰恰需要封闭世界的。这个要根据具体的应用需求决定。至少我现在看到的很多不错的工作都没有完全局限于这个问题。


--  作者:jpz6311whu
--  发布时间:5/9/2006 9:07:00 PM

--  
Q2. 以下是引用xinxing在2006-5-4 11:42:00的发言:
属性A和B都是xsd:date型,如何表达属性A的时间必然早于属性B的时间呢?

A2. 这个在OWL中是不能描述的。但可以考虑采用DL+时序算子的方式描述。
参考文献
A Temporal Description Logic for Reasoning about Actions and Plans,
A Survey of Temporal Extensions of Description Logics

-----------------
但是即使是用“DL+时序算子”成功描述了这样的情况,有没有相应的api来解析和操作它呢?
jena似乎不支持这样的描述,没办法编程啊?


--  作者:river_hh
--  发布时间:5/9/2006 9:24:00 PM

--  
以下是引用wolfel在2006-5-9 20:33:00的发言:
其实在本体层之上构建规则,如果是异构方法的话倒也不必非要顾及开放世界假设,因为在规则层做的推理可能恰恰需要封闭世界的。这个要根据具体的应用需求决定。至少我现在看到的很多不错的工作都没有完全局限于这个问题。

说到同构和异构,我想稍稍反驳一下你的观点中的一部分。


--  作者:xinxing
--  发布时间:5/9/2006 9:55:00 PM

--  
是的。是用Protege。
--  作者:chris
--  发布时间:5/10/2006 12:35:00 PM

--  
看了前面的一些帖子,他们都有威望阿,都好牛啊
讨论的问题好高深阿
xingxing,你还没有开始的话,我建议你不要选jena推理机,它好像很多都不支持啊
我们做就是用jena,害的我现在还不知道用什么加规则好
owl和swrl描述能力都很有限,真搞不懂为什么搞出个本体来
郁闷
--  作者:xinxing
--  发布时间:5/10/2006 3:22:00 PM

--  
啊。听了chris的话大受打击。是呀,我接触本体不久,感觉它的作用于受到的热捧是有好大差距。那我这些简单功能都很难实现的话,语义网的智能化不是成了共产主义了?
--  作者:superc_7
--  发布时间:5/11/2006 4:26:00 PM

--  
以下是引用xinxing在2006-5-9 16:25:00的发言:
本体可以看作<概念,关系,函数,公理,实例>组成的五元组。
1)其中,公理代表永真断言,是定义在概念和属性上的限定和规则。
     这里的规则究竟如何定义呢?规则其实就是描述属性之间的一种关系。但没有看过具体的例子,好迷糊。
2)概念之间的关系通常有:part-of,kind-of,instance-of,attribute-of四种。而特定领域在应用中还可以根据具体情况定义相应的关系,如何定义呢?
     时间紧+脑袋笨。求助高手s!我提问中的属性关系通过rule如何定义,哪位高手给个详细点的指点如何?感觉大家都是蜻蜓点水般说下就匆匆离去。

这是《语义网简明教程》中的东西吧?
看了描述逻辑之后感觉上述说法都存在问题啊
或者说描述逻辑表示知识的方式和这里所说的不太一样
DL中最根本的就是概念和关系还有实例,可以考虑加规则
而概念间最基本的关系只有subClassOf


--  作者:superc_7
--  发布时间:5/11/2006 4:31:00 PM

--  
以下是引用river_hh在2006-5-9 17:35:00的发言:
[quote]以下是引用superc_7在2006-5-4 15:06:00的发言:
  rdfs中有subPropertyOf属性可以声明一个属性是另一个属性的子属性
  这个在OWL Full中可以使用
  至于属性之间其他复杂的关系
  OWL好像支持的不多
[/quote]

subPropertyOf在OWL Lite和OWL DL中也可以使用的。OWL DL与OWL Full的区别在于:
OWL DL不支持RDF的Reification,而OWL Full支持。也就是说OWL Full支持Classes as Property values。在OWL DL中一个对象属性的取值只能是个体不能是概念(或类),但OWL Full允许属性的取值是概念(或类)。W3C上有篇文章介绍了如何用OWL DL来表达Classes as Property values。

Representing Classes As Property Values on the Semantic Web, http://www.w3.org/TR/swbp-classes-as-values/.

好像有点误会superc_7的意思,误以为superc_7指subPropertyOf仅能在OWL Full。Sorry

嗯……说实话我知道OWL Full肯定可以用,Lite和DL能不能我也忘了,懒得查……
现在主要兴趣不在OWL上,OWL都快忘了……






--  作者:icebuddy
--  发布时间:7/19/2006 5:36:00 PM

--  
看了一下大家讨论的,觉得有收获,继续吧
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
109.375ms