资源描述
(附件3:外文译文二)International Journal of Semantic ComputingVol. 3, No. 3 (2009) 383394 World Scientific Publishing Company问题,解决方案和语义计算PHILLIP C.-Y. SHEU, and C. V. RAMAMOORTHY,Institute for Semantic ComputingUniversity of California, IrvineUniversity of California, Berkeleypsheuuci.edu语义计算无论在广度和深度上都对语义Web进行了扩展。它将几个计算技术连接并整合成一个完整统一的的主题。本文中通过对一种新的模式,能够进行“问题驱动”的搜索SemanticS讨论了语义计算的本质,给互联网带来了新的发展阶段。关键词:语义计算,搜索引擎,解决问题。1.存在的问题及对策 商业世界主要关于的是需求和供给。在大多数情况下的需求触发供给,并在某些情况下,供给创造需求。一个更普遍的观点是需求是问题,供应则是解决问题的方法。 互联网提供了一个全球性的基础设施来连接问题和解决方案。例如在易趣上拍卖取得了伟大的成绩。一个基于关键字的搜索引擎如谷歌可能被视为一个特殊的解决问题的能手,解决了这个问题:找出包含用户所提供关键字的文件。问题/回答(QA)系统(例如,3),可以被看作是另一个特殊的解决问题的能手:(基于系统所收集到的文件)寻找问题的答案。基于关键字的搜索引擎和QA问答系统都能出色地完成他们试图解决的问题。但是,从解决问题的角度来看,他们的效率是远远不够的。我们很容易发现并不是每个问题都能用我们津津乐道的这两个战略解决。任何一个计算机科学家都可能很容易地列出以下单子:(1) 计算问题和其他数学问题。解决这些问题要求计算参与。已进行了一些初步的尝试(例如,Wolfram|Appha, (2) 数据库的搜索问题,如找出在超市中超过2块钱一斤的苹果。Deep webs 经常自己运作而且他们之间没有连接(并不是因为他们不能连接,而是因为他们不想连接)。(3)综合问题如建立一个程序,输入一组数据,并以递增顺序返回它们。自动合成仍然很困难并且是需要完成的一个目标。(4) 推理问题,如可以从这一事实推出什么?像自动合成,自动推理可能很难。(5)数据分析问题,比如在这一系列图像中它们的共同点是什么?我们可能采取很多办法来解决这个问题,但这不是通过搜索引擎或QA系统能解决的。(6)“个人”问题,比如我知道某甲和某乙,他们不喜欢对方,我怎样才能把他们和谐共处?这可能不是一个科学问题,很可能要根据经验,社会因素等来解决。我们的主要观点并不是将所有的问题分类。实际上我们感兴趣的是去和将问题与解决方案相匹配。互联网提供基础设施来连接问题和解决的办法,但我们可能还没有充分利用这个基础设施。到目前为止,它已经在商品贸易中发挥了作用。如果我们可以将这个概念延伸,将货物看做问题,将买家看做解决问题的办法,互联网将会有一个崭新的时代。2. 衔接问题及解决方案在支持将问题和解决方法贸易化中,有几个因素可能会被视为基础设施成功的重要因素:(1)人(供应商)愿意提供解决问题的方案。具体来说,他们可从交易中获益。(2)人们(消费者)愿意提交问题。如果解决方案一应俱全,消费者可以从解决方案中受益。那些没有解决方案的问题可能有助于今后的发展。(3) 基础设施要适应各种供应商和消费者,使对于问题有解决方案的人愿意作为一个供应商,而那些有问题要解决的人愿意使用这个基础设施。(4)供应商通常会保护“知道如何”的解决方案。(5)一个解决方案并不一定是一个工具,在许多情况下解决方案仅涉及内容(如文字,图像,视频,过程,硬件,软件等)和知识。(6)需要建立一个机制来验证解决方案,并分享消费者关于解决方案的反馈。 从技术上讲,第四个因素表明,基础设施利用了一个服务系统一个或多个解决方案被打包作为服务。服务的优点是从消费者得到的反馈可以被隐藏在内部。此外,为实现我们的目标有三个必要的组成部分:(1) 问题的说明(2)解决方案的说明(3)将问题与解决方案配套 如果我们喜欢容纳数量庞大的问题和解决办法,显然关键词不足以用来描述问题和解决的办法,如建议的因素1,2,3和5。3.描述的SCDL解决方案 对于一个解决方案(服务)来说重要的不是它如何运作而是它能起到什么作用。我们把它叫做解决方案(服务)的能力。语义能力描述语言(SCDL)是类似SQL的描述语言,被用来描述一个解决方案(服务)的能力,客观支持自动服务组合。服务的SCDL语法类似于SQL中,如下列通用的形式表示:选择输出(O1,Om),汇总输出(f1(A1),fd(Ad)从输入(I1,Im),变量(R1,Rn),其他变量(S1,,Sk)其中P(输入,输出,其他变量)GROUP BY(H1,Hj) 其中O1,Om是输出对象。f1(A1),fd(Ad)是可能的聚集功能,I1,Im是输入对象,R1,Rn是一定范围内的变量,S1,Sk可能是从投入和范围变量派生的量,H1,Hj组成输出对象的变量,P(输入,输出,其他变量)是一个公式描述的是输入,输出和其他变量之间的关系。 SCDL允许输入变量,它允许在WHERE子句中将功能作为一项条件被列入。另外,SCDL允许“指数变量”,一个指数变量域可能包含现有的所有子集,它允许指数变量变化(我们之后将看到一些例子)。相应的代数表达式如下:WS(I1, . . . , Im;O1, . . .,Om) = (H1,.,Hj )G(f1A1,.,fdAd)(p(R1 Rn S1 Sk) 例如,如果有一个工具,可以像卫星或星形结构一样能检测出图像的BLOB集群,他/她可以把工具打包作为一项服务如以下的SCDL描述:S1-SCDLSELECT iFROM INPUT setof-image datain,setof-string s = satellite,starimage:dataset i,setof-blob:2i.blobs()cINPUT string:s tWHERE i.contain(c) and c.islike(t)如上,图像数据集i是一个形象类型的对象,其域为数据集,setof-string s=satellite,star ,s是satellite,star 的字符串;ST表示,t是一个字符串,其域是S,setof-blob:2i.blobs()c,c是i的blob集群,如果C在图象i内,则条件i.包含(C)是正确的;如果C是像卫星或星形的结构,则条件c.islike(S)是正确的。 “服务输入的是图像数据集,输出的是包含一个或多个像卫星或星形结构的BLOB集群的图像。 如果该工具不仅可以检测任何像卫星或星形结构的BLOB结构也可以注释它们,它可以打包成一个服务如以下的SCDL描述:S2-SCDLSELECT annotate(c)FROM INPUT setof-image datain, setof-string s = satellite,star image:datain i, setof-blob:2i.blobs()c INPUT string:s tWHERE i.contain(c) and c.islike(t)另一个例子是,如果一个人有一个工具可以检测图像中不重叠的BLOB集群,它可以打包成一个服务如以下的SCDL描述:S3-SCDLSELECT iFROM INPUT setof-image datain, image:dataset i, setof-blob:2i.blobs()c setof-blob:2i.blobs()sWHERE i.contain(c) and i.contain(s) and not overlap(c,s)一个服务并不一定是一个工具,它也可能是内容。试想,例如,有人搜集了有关奥巴马的不同事件的视频剪辑的情况下,它可以打包成一个服务如以下的SCDL描述:SELECT vFROM setof-image dataset = my-dataset, video:dataset v event e, INPUT string:sport,political,academic activityWHERE v.contain-event(e) and agent(e,President Obama) andcategory(e,activity)除了工具和内容,还可能是服务。例如,关于可能知道如何培养狗。它可以打包成一个服务如以下的SCDL描述:SELECT g = trained(k)FROM INPUT dog k, VAR dog gWHERE *如上,k是等待受训的狗,g是训练后的狗? *是一个通配符指定“任意条件的k和g.”注意,服务并不一定要在网上呈现; SCDL仅仅是一个规范的语言。最后,SCDL可以被扩展到包括用来描述服务范围很广的元变量。例如,给定4个帐户,客户,分行和存款,以下的SCDL表达式指定,它可以采取任何SQDL查询,从这些对象的属性中选择任意关系的组合,但这些条件不能超过4。S4-SCDLSELECT META selectFROM META fromWHERE META whereMETA IF member(t,select) THEN member(t.path, path(account) union path(branch) union path(customer) union path(depositor)META IF member(t,from) THEN member (t.domain, account, branch, customer, depositor)META IF member(t,where) AND member(s,t.arguments) AND isa(s,variable) THEN member(s.path, path(account) union path(branch) union path(customer) union path(depositor)META IF member(t,where) THEN member(t.predicate,=,!=,=,=)META cardinality(where) = 4 以上,select, from and where是定义为集的元变量。关于元变量有五个制约。第一个约束条件,基本上是说元变量select可以是任何合法的属性;第二个约束是元变量from可以是四类对象中的任何一个变量,第三和第四个制约是说,元变量where可以是两个属性之间或属性与常数之间的任何关系,只要属性是合法的并且比较关系是理性的;最后第五个约束是说条件的数量不能超过四个。 更多的例子用来显示SCDL是如何被用来描述在第一部分中谈到的每种类型的问题的服务能力可以再27中找到。请注意,SCDL表达可能是可执行文件,而在实践中往往是不切合实际的。语言是用来描述解决方案能力的唯一方法。通过比较在SCDL表示的服务能力和问题的描述,比较的结果是具有决定性的。4.在SQDL中描述问题SQDL类似于SCDL,除了所有输入变量被实例化为一个常数。在SQDL中的一个查询如下:SELECT objects, object attributes and/or functionsFROM object classes WHERE conditions现在“Show all blob clusters of the images in dataset md-232that are structured like a satellite or a star” 可以在SQDL描述为:SQDL1SELECT iFROM image:cmd-232 im, setof-blob:2im.blobs()sb string: satellite,startWHERE im.contain(sb) and sb.islike(t)另一个例子是,“Show all blob clusters of the images in dataset cmd-232 that are structured like a satellite or a star and do not overlap with a given blob structure” 可以在SQDL描述为:SQDL2SELECT iFROM image:cmd-232 im, setof-blob:2im.blobs()sb setof-blob:2im.blobs()sc string: satellite,startWHERE im.contain(sb) and sb.islike(t) and not overlap(sb,sc)以上,SQDL1可以被第四部分中的S1解决。然而解决SQDL2必须将S1和S3结合才能解决。5. SNL - 连接人和描述 SCDL和SQDL对于普通用户似乎都很难理解。需要一种更简单的语言让消费者和供应商来组织他们的语言。结构化的自然语言(SNL)28是一种自然语言子集,其表现力可以通过对象关系代数(ORA)来描述。它可以证明,SQDL表示的任何查询也可以在ORA中表达,但是反过来却是不正确的的。这可能是一个必要的权衡,我们一定要鼓励更多的消费者和供应商来加入这个新的基础设施中(第二部分中的第三个因素)。 ORA的世界是由输入的各种对象所组成的。通过联系各个对象,我们可以定义一个谓词和操作。这些谓词和操作(统称方法)可以在一种独特的查询语言中被用来操作或检索数据。这为使得许多在关系模型中不能表的的抽象的概念或域作为查询的一部分提供了方法。 ORA的详细信息可以在28找到。 一个在SNL中表达的句子如以下形式: Verb noun(s) where adjectivesSNL的句子,可能是由naive用户在不了解任何低层次概念的基础上,将简单的多层次概念组和而成的,如“join”和“selection”。假设,例如,一个人希望找出被临床诊断为阿尔茨海默氏症疾病同时患有糖尿病并且具有特定遗传标记(如APOE)的病人的数量。这个句子包括了一个名词(patients),3个形容词/谓词(“with clinical diagnosis of AD”, ”having diabetes”, “having ApoE genotype results available”)和一个动词(“find”)。 在第四部分谈到的SQDL1可以在SNL中描述为:SNL1 Show (VERB) blobs of images in cmd-232 (NOUN) that have blobsstructured like a satellite or a star (ADJECTIVE)And the SNL expression for SQDL2 is:SNL2 Show (VERB) blobs of images in cmd-232 (NOUN) that have blobsstructured like a satellite or a star (ADJECTIVE) an not overlap with other blobstructure (ADJECTIVE)6. 问题与解决方案的匹配SemanticServices.Net是一个问题驱动的搜索服务,需要将用户的问题在SNL/ SQDL中进行描述,并尝试确定一个或多个服务来匹配这个问题的描述。服务发现可以分成以下做两个阶段进行:服务注册和服务匹配。 服务注册:为了被发现,服务需要提前注册。服务提供商需要提供服务的信息,包括服务网址,命名空间和SCDL描述等。服务匹配:当用户提供了一个SQDL描述(从一个SNL句中转换而来),SQDL 和SCDL匹配器将处理SQDL描述和可用的SCDL描述之间的匹配性。匹配的过程包括两部分组成。第一部分是接口匹配 - 匹配器将每个注册的SQDL描述的接口与SCDL描述的接口进行匹配。第二部分是谓词匹配 - 匹配器将每个注册的SQDL描述与SCDL描述进行匹配服务。根据适当的统一30,如果一项服务具有解决这个问题的能力,那么这个匹配就形成了。7.语义计算 作为在SECS 3-6举例说明的语义计算系统是一个搜索引擎。我们定义“语义计算”作为一个领域,解决了推导和计算内容的语义匹配和自然表达用户的意图,以帮助检索,管理,操纵甚至创造内容,“内容”可能是任何东西,包括视频,音频,文本,流程,服务,硬件,网络,社区等,它汇集了有关这些学科连接与计算人类(往往隐约制定)意图的内容。该连接可以是双向的:检索,利用和操纵现有的内容,根据用户的目标(“用户意味着什么”);创建,重新安排和管理与作者的意图相匹配的内容(“做什么作者的意思是”)。 如图1所示,作为1中描述结构的修改,语义计算技术可分为五个层次:(1) 语义分析,分析和转换,如像素和文字信号(内容)的含义(语义);它提供语义集成及语义应用的信息资源。(2)语义集成,在一个统一的模型中集成来自不同资源中的内容和语义;语义分析层,以不同的格式和集成这些信息之前,都可以使用。(3)语义的服务,即利用解决具体问题的内容和语义。语义服务已开发的几种形式:网络搜索,包括自动问答(Q / A)2,3和信息检索;多媒体数据库,一个基于内容的检索4;语义合成,这是语义分析的反向;(4)集成服务,集成了不同的服务,提供更强大服务。服务集成提供不同的服务之间的互操作方法。(5)语义接口,允许用户访问和操作各种来源的内容和语义。标准的图形用户界面(GUI)如浏览,菜单树和联机帮助技术的吸引力远不如下一代应用程序。因此,新的标准接口,如作为自然语言接口,多模态的自然语言界面以及可视化界面,变得越来越重要。 除了上述讨论的五个层次,还包含安全架构和管理机制。由于大多数信息是通过网络发送和接收网络的,多层次的安全机制是必需的。管理层提供了语义计算架构的整体管理。它可以构建一个控制信息提供语义分析和语义综合信息知识仓库。它也负责监督不同的信息源之间的语义冲突的解决。在顶部水平,管理之间不同的服务和不同的互操作接口。 本文所讨论的搜索引擎是语义计算例子的一个架构。它采用统一语言的SCDL来整理解决方案并整合一个统一的模式 - 服务。 另一方面SNL/ SQDL提供了一个标准和语义接口用来解释用户的意图。8. 讨论 对于一个复杂的问题,不是由一个单一的服务就能解答的,理想化的话,SemanticServices.NET可以识别一组服务,可以解决问题并且合成一个组件服务之间的工作流程。 为了组成异构系统,已经做了很多相关的Web服务组合的研究用来提供平台和语言,如通用描述,发现和集成(UDDI)“16,Web服务描述语言(WSDL),17,简单对象访问协议(SOAP)18和OWL - S19本体的一部分(ServiceProfile和ServiceGrounding)。这样的平台和语言试图通过标准的方法定义服务发现,描述和调用。其他举措,如用于Web服务(BPEL4WS)20的业务流程执行语言和OWL - S ServiceModel集中在代表工作流程的服务组合。两个主要技术是基于流的基础组成的(如EFlow21,综合服务定义语言(CSDL)22,多态的processModel(PPM)23和AI基础的成分,如情景演算25)和以规则为基础的规划24,25。 尽管所有这些努力,自动服务组合,仍然有很长的路要走去了。自动服务合成的一个主要障碍是服务细节的缺陷。虽然WSDL和OWL - S的只能暴露签名(即,服务名称,输入和输出)服务,但是不揭示服务的性质,SCDL是一个业务流程的语言,有足够的能力公开服务细节以及其签名。一个关系服务的自动合成多项式方法在26中可以找到。 我们所作出的一个重要假设是,消费者和供应商通过SNL接口共享相同的术语沟通。在第2部分谈到的因素6,一个中性的组织在确保公平和有效率的沟通平台中可能发挥关键的作用。 公用计算15和云计算5-14 的最新进展可能进一步促进互联网从共享大量内容解决问题的转型,大量的软件许可可以转换成软件服务。SemanticServices.Net,语义计算基础设施和实施,可以帮助云计算更迅速地发展。 最后,我们希望本文所述的解决问题的服务可能实现最终的目标,每项服务都可以是平等的,是它的能力最后决定它是否可以被客户所接受。9. 参考文献Editorial Preface, Int. J. Semantic Computing 1(1) (2007) 19.2 J. Heflin and J. Hendler, Searching the web with SHOE, in Artificial Intelligence forWeb Search, papers from the AAAI Workshop, WS-00-01, 2000, pp. 3540.Problems, Solutions, and Semantic Computing 3933 E. Brill, S. Dumais and M. Banko, Analysis of the AskMSR question-answeringsystem, in Empirical Methods in Natural Language Processing Conference, 2002.4 V. S. Subrahmanian, Principles of Multimedia Database Systems (Morgan Kaufmann,1998).5 Twenty Experts Define Cloud Computing, SYS-CON Media Inc, http:/cloudcomputing.sys- 2008.6 I. Foster, Y. Zhao, I. Raicu and S. Lu, Cloud Computing and Grid Computing 360-Degree Compared.7 M. Armbrust, A. Fox, R. Griffith, A. D. Joseph, R. H. Katz and A. Konwinski et al,Above the Clouds: A Berkeley View of Cloud Computing.8 D. Cheng, PaaS-onomics: A CIOs Guide to using Platform-as-a-Service to LowerCosts of Application Initiatives While Improving the Business Value of IT, technicalreport, LongJump, 2008.9 Amazon Elastic Compute Cloud (Amazon EC2), 2009.10 Oracle Cloud Computing Center, 2009.11 Amazon Simple Storage Service (Amazon S3), 2009.12 Google App Engine, 2009.13 Microsoft Windows Azure, 2009.14 B. Hayes, Cloud computing, Commun. ACM 51(7) (2008) 911.15 J. W. Ross and G. Westerman, Preparing for utility computing: The role of IT architectureand relationship management, IBM Systems Journal 43(1) (2004).16 D. Box et al., Simple Object Access Protocol (SOAP) 1.2, http:/www.w3.org/TR/SOAP/ 2007.17 D. Martin et al., OWL-S 1.2 Draft Release, owl-s/1.2/ 2006.18 T. Andrews et al., Business Process Execution Language for Web Services(BPEL4WS) 1.1, ws-bpel, 2003.19 F. Casati, S. Ilnicki and L. Jin, Adaptive and dynamic service composition in eflow,Proceedings of 12th Int. Conf. Advanced Information Systems Engineering (CAiSE),Stockholm, Sweden, June 2000.20 F. Casati, M. Sayal and M.-C. Shan, Developing e-Services for Composing e-Services,Proceedings of 13th Int. Conf. Advanced Information Systems Engineering (CAiSE),Interlaken, Switzerland, June 2001.21 H. Schuster, D. Georgakopoulos, A. Cichocki and D. Baker, Modeling and composingservice-based and reference process-based multi-enterprise processes, Proceedingsof 12th Int. Conf. Advanced Information Systems Engineering (CAiSE), Stockholm,Sweden, June 2000.22 A. Hibner and K. Zielinski, Semantic-based dynamic service composition and adaptation,Proceedings of IEEE SCW, 2007.23 S. R. Ponnekanti and A. Fox, SWORD: A developer toolkit for Web service composition,Proceedings of 11th World Wide Web Conference, Honolulu, Hawaii, 2002.24 D. B. Claro, P. Albers and J.-K. Hao, A framework for automatic composition ofRFQ Web services, Proceedings of IEEE SCW, 2007.25 S. McIlraith and T. C. Son, Adapting golog for composition of semantic Web services,Proceedings of 8th Int. Conf. on Knowledge Representation and Reasoning (KR2002),Toulouse, France, April 2002.26 Q.Wang and P. C.-Y. Sheu, Relational service composition, submitted to IEEE TransData and Knowledge Engineering, 2009.394 P. C.-Y. Sheu & C. V. Ramamoorthy27 P. C.-Y. Sheu, SCDL for different problems, technical report, Department of EECS,University of California, Irvine, 2009.28 P. C.-Y. Sheu, A. Kitazawa, C. Ishi, K. Kaneko and F. Xie, From SemanticObjectsto structured natural language, Int. J. Semantic Computing 1(3) (2007) 359375.29 P. C.-Y. Sheu and A. Kitazawa, From SemanicObjects to semantic software engineering,Int. J. Semantic Computing 1(1) (2007) 1128.30 N. J. Nilsson, Artificial Intelligence A New Synthesis (Morgan Kaufmann, 1998).(附件4:外文原文二)International Journal of Semantic ComputingVol. 3, No. 3 (2009) 383394 World Scientific Publishing CompanyPROBLEMS, SOLUTIONS, AND SEMANTIC COMPUTINGPHILLIP C.-Y. SHEU, and C. V. RAMAMOORTHY,Institute for Semantic ComputingUniversity of California, IrvineUniversity of California, Berkeleypsheuuci.eduSemantic Computing extends Semantic Web both in breadth and depth. It bridges,and integrates, several computing technologies into a complete and unified theme. Thisarticle discusses the essences of Semantic Computing with a description of SemanticServices.Net, a new paradigm that enables “Problem-driven” search that may offer a newstory to the Internet.Keywords: Semantic computing; search engine; problem solving.1. Problems and SolutionsThe commercial world is mostly about demands and supplies. In most cases demandstrigger supplies, and in some cases supplies create demands. A more general conceptfor needs may be problems, and that for supplies may be solutions.The Internet has provided a global infrastructure to connect problems withsolutions. For example eBay has done a great job on auctions. A keyword-basedsearch engine such as Google may be considered as a special problem solver thatsolves the problem: Find (Web) documents that contain the keywords provided by theuser. A Question/Answering (Q&A) system (e.g., 3) may be considered as anotherspecial problem solver that solves the problem: Find answers for the question (basedon the documents collected by the system).Both keyword-based search engines and Q&A system have done an excellentjob for the problems they try to solve. But from the view point of Problem Solving,they are far from being sufficient. It can be easily seen that not every problem fallsinto the two general categories we talked about. Any computer scientist may easilycome up the following list:(1) Computational Problems and other Mathematical Problems. Solving such problemsrequire computation to be involved. Some initial attempts have been made(e.g., Wolfram|Appha, but lots more need tobe done in this space.383384 P. C.-Y. Sheu & C. V. Ramamoorthy(2) Database Search Problems such as Find the supermarkets carrying apples at lessthan 2 dollars a pound. Deep webs usually work by themselves and they arenot connected (not because they cannot be, but perhaps because they do notwant to be).(3) Synthesis Problems such as Build a program that takes a set of numbers andreturns them in increasing order. Automatic synthesis in general in hard andremains to be a goal to be accomplished.(4) Reasoning Problems such as What can be derived from this set of facts? Likeautomatic synthesis, automatic reasoning may be hard.(5) Data Analysis Problems such as What are the common patterns shown in thisset of images? There are a lot of approaches we may take to solve this problem;but this is not a problem addressed by search engines or Q&A systems.(6) “Personal” Problems such as I know person A and person B but they dont likeeach other, how can I put them to work? This may not be a scientific problemand its solution may very much reply on experiences, social considerations, etc.Our main point is not to classify all the problems. What actually interests usis matching problems with solutions. The Internet does provide us with an infrastructureto connect problems and solutions, but we may have not fully utilized thisinfrastructure. So far it has been useful for trading. If we can extend the concept oftrading from goods to problems and buyers to solutions, we may have a new storyfor the Internet.2. Bridging Problems and SolutionsSeveral factors may be considered important to the success of an infrastructure thatsupports the ”trading” between problems and solutions:(1) People (Providers) have to be willing to provide solutions. Specifically they haveto benefit from the trading.(2) People (Consumers) have to be willing to submit problems. If solutions arereadily available, consumers can benefit from the solutions. Problems withouta solution may contribute to the development of a solution for them later.(3) The infrastructure has to accommodate providers and consumers of all sizes sothat anybody who has a solution for some problem is willing to be a provider,and anybody who has a problem to solve is likely to use the infrastructure.(4) Providers usually like to protect the ”know how” of a solution if possible.(5) A solution does not necessarily have to be a tool; in many cases a solution onlyinvolves content (such as text, image, video, process, hardware, software, etc.)and knowledge.(6) A mechanism may be needed to validate the solutions and to share the feedbackfrom consumers on the solutions.Technically the fourth factor suggests that the infrastructure employ a servicearchitecture one or more solutions are packaged as a service. An advantage ofProblems, Solutions, and Semantic Computing 385a service is that the internals can be hidden from the consumers. In addition, toaccomplish our goal three components are necessary:(1) Description of Problems(2) Description of Solutions(3) Matching Problems with SolutionsApparently keywords are not sufficient to describe problems and solutions if we liketo accommodate massive number of problems and solutions at a fine granularity, assuggested by factors 1, 2, 3, and 5.3. Describing Solutions in SCDLWhat is important for a solution (service) is not how it works; rather it is what itcan do. We call it the capability of the solution (service). Semantic CapabilityDescription Language (SCDL) is an SQL-like description language that maybe utilized to describe the capability of a solution (service), with an objective tosupport automatic service composition. The syntax of SCDL for a service is similarto that of SQL, as expressed in the following generic form:SELECT outputs (O1, . . .,Om), aggregated-outputs (f1(A1), . . . , fd(Ad)FROM inputs (I1, . . . , Im), variables (R1, . . . , Rn), other variables (S1, . . . , Sk)WHERE p (inputs, outputs, other variables)GROUP BY (H1, . . .,Hj)where O1, . . .,Om are output objects. f1(A1), . . . , fd(Ad) are possible aggregationfunctions, I1, . . . ,
展开阅读全文