以文本方式查看主题

-  W3CHINA.ORG讨论区 - 语义网·描述逻辑·本体·RDF·OWL  (http://bbs.xml.org.cn/index.asp)
--  『 Web Services & Semantic Web Services 』  (http://bbs.xml.org.cn/list.asp?boardid=10)
----  服务能力"匹配度"的探讨  (http://bbs.xml.org.cn/dispbbs.asp?boardid=10&rootid=&id=45948)


--  作者:timothy
--  发布时间:4/24/2007 10:07:00 PM

--  服务能力"匹配度"的探讨
看到论坛上很多对服务的能力匹配有些问题,我也没有很好的解释清楚,因此,就这个问题今天写个文档系统地把个人观点,一点意见写下,抛砖引玉,争取和各位做一个讨论.
   源自文章: Semantic Matching of Web Services Capabilities , 感兴趣的读者可在google上搜一下就可以下载得到.
为了阅读方便,我也对原文做了点翻译,比较难理解的地方我就加点注释,供探讨之用.附作者邮箱:  yong_li@yahoo.com.cn
下面是对服务请求和服务广告之间输出能力的匹配算法(姑且叫做算法一):
算法一:
OutputMatch(outputsRequest , outputsAdvertisement) {
globalDegreeMatch = Exact
forall outR in outputsRequest do  {
   degreeMatch = maxDegreeMatch(outR,outA)
   if (degreeMatch = fail)  return fail
   if (degreeMatch<globalDegreeMatch)
      globalDegreeMatch = degreeMatch
retur sort(recordMatch)
}
}
根据上面的匹配算法,对服务之间的匹配度进行了一个定义,如下:
算法2
   degreeOfMatch(outR,outA)
      if outA=outR  then return exact
      if outR subclassOf outA  then  return exact
      if outA subsumes outR  then return  plugIn
      if outR subsumes outA   then return subsumes
  otherwise fail
匹配度被认为是本体树中的最小距离。我们根据算法2所示规则区分4种匹配度,其中outR是请求的一个输出,outA对应广告的一个输出。度数指派的合理性如下面描述。
Exact   如果outR = outA,则outR和outA是相等的,该匹配标记为精确。第二个语句更加复杂,如果 outR subclassOf outA,该结果仍然是exact,这基于这样一个假设:提供者广告outA,将outA委托提供给outA的直接子类。这如文章中图5中给出的本体片段所示,提供者广告car,可以把其能力委托提供给它的直接子类sedan,station wagon和SUV.
注释:第二种情况可以这样理解:outR是outA的子类, outA把责任委托给了其子类,因此能在outA 中找到一个输出匹配到outR,根据前面的匹配算法1,因此其匹配是精确的.]

Plug in  如果outA包含outR(一般来说父类包含了子类,但是这里指除了这种关系,并不是直接的父子包含关系), 而outA是一个集合,该集合包含了outR,或者换句话说,outA能塞紧outR位置。例如服务提供了vehicles,它能被其他服务使用来指望替代station wagons。在这种情况下,该规则承认存在outR和outA的一种微弱关系,在上面精确的例子中:我们能期望广告了一个输出为vehicle的服务提供多种类型的car,但是我们不能期望它总是提供SUV类型的车子。(比上面的直接子类关系要弱)

Subsumes 如果outR包含outA,则提供者没有完全满足该请求。请求者可以使用提供来完成它的目标,但是可能需要修改它的计划或执行其他的请求来完成它的任务。
注释: 简单来说:outR包含了outA,就是服务请求需要提供多个输出值,而输出为outA的广告服务只能提供其中的一部分输出值,所以它只能满足服务请求的部分请求.

Fail  当在广告和请求之间确认没有包含关系时就发生失败。


--  作者:admin
--  发布时间:4/24/2007 11:26:00 PM

--  
这是SWS matching的经典文章了。请问你的观点是?
--  作者:timothy
--  发布时间:4/25/2007 9:40:00 AM

--  
我的观点是对别人比较疑惑的地方说出自己对这个匹配度的理解!!!供大家讨论和质疑!
--  作者:pig-can
--  发布时间:5/2/2007 10:09:00 AM

--  
恩,谁能保证这个assumption一定成立?outR is a subclassof outA, then the result is still exact, under the assumption that by advertising outA the provider commits to provide outputs consistent with every immediate subtype of outA....

我认为这个地方存在一些疑点~~


[此贴子已经被作者于2007-5-2 21:26:53编辑过]

--  作者:pig-can
--  发布时间:5/2/2007 10:15:00 AM

--  
在作者给出的:station wagons-->car-->vehicles中,vehicles 被 station wagons 所subsume。而 station wagon 是 car的subclass。subclass 只是 subsume的一个特例,即一层的subsume关系。
--  作者:timothy
--  发布时间:5/6/2007 2:28:00 PM

--  
我觉得应该可以这样理解!!!

我曾经也对这个问题很疑惑.其实这里的子父类关系不是我们在面向对象中的子父类关系,
而是层次关系中的包含关系!
如:
     --person
       -----men
       -----women
   那么这里的person类就是父类,而women和men都是其子类.
   不能如面向对象里面的,子代父,这里就会导致用person的地方,可以用women 或men 代替,这里就把person的范围缩小了!!
   而正确的理解就是一种"包含"关系,即 subsume, 就相当于person包含了women和men,既概念person 所表示的行为可以委托(commit)到他的子类women "和" men .即"advertising outA the provider commits to provide outputs consistent with every immediate subtype of outA"


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