ebook img

Tools for Composite Web Services: A Short Overview PDF

10 Pages·0.262 MB·English
by  Hull R.Su J.
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Tools for Composite Web Services: A Short Overview

Tools for Composite Web Services: A Short Overview(cid:3)(cid:3) (cid:3) Richard Hull Jianwen Su BellLabsResearch DepartmentofComputerScience LucentTechnologies UCSantaBarbara [email protected] [email protected] ABSTRACT describingemergingframeworksforstudyingcompositeser- vices,andidentifyingemergingtoolsandtechniquesforboth Webservicestechnologiesenable(cid:13)exibleanddynamicinter- automated design and analysis of composite web services. operationofautonomoussoftwareandinformationsystems. The focus of this short survey is on the foundations of A central challenge is the development of modeling tech- composition and related issues. From this perspective, it is niquesandtoolsforenablingthe(semi-)automaticcomposi- worthwhile to understand the overall process of designing tionandanalysisoftheseservices,takingintoaccounttheir composite services. Fig. 1 shows the key elements in the semanticandbehavioralproperties. Thispaperpresentsan overview of the fundamental assumptions and concepts un- Goals derlying current work on service composition, and provides asamplingofkeyresultsinthearea. Italsoprovidesabrief tour of several composition models including semantic web Activities services, the \Roman" model, and the Mealy/conversation model. 1. INTRODUCTION Discovery, Orchestration, Information Sharing Self-description Monitoring (Messaging) Theweb services paradigm promises to enablerich, (cid:13)ex- ible, and dynamic interoperation of highly distributed and Figure 1: Anatomy of Web Service Composition heterogeneousweb-hostedservices. Substantialprogresshas already been made towards this goal (e.g., emerging stan- typical design process. It is not surprising that the design dards such as SOAP, WSDL, BPEL) and industrial tech- processissimilartoplanningstudiedinarti(cid:12)cialintelligence nology (e.g., IBM’s WebSphere Toolkit, Sun’s Open Net (e.g., [42]). In this case, activities that may contribute to Environment and JiniTM Network technology, Microsoft’s accomplish the overall goal need be discovered and orches- .Net and Novell’s One Net initiatives, HP’s e-speak, BEA’s trated. Theorchestration hastobeconstrainedbythe(cid:13)ow WebLogic Integration). Several research e(cid:11)orts are already of available information, which is generally agreed to be in underwaythatbuildonor takeadvantageof the paradigm, theformofmessages. Notethatmonitoringiscloselyrelated including the DAML-S/OWL-S program [14, 36, 24], and toorchestration;speci(cid:12)cmodelsofthelattermaydetermine automata-basedmodelsforwebservices[8,26,7]. Butthere howandtosomedegreewhattomonitor. Interestingly,the isstillalongwaytogo,especiallygiventheostensiblelong- design process embodies elements from all four task groups termgoalofenablingtheautomated discovery, composition, listed above. enactment, and monitoring of collections of web services Fig. 2 illustrates three dimensions that \measure" Web working to achieve a speci(cid:12)ed objective. A fundamental service description/composition models. The component challenge concerning the design and analysis of composite service complexity dimension indicates the information ca- webservicesistodevelopnecessarytechniquesandtools to pacityof thelanguagesandmodelinrepresentingaservice. handle the novelaspects of the web services paradigm. In this dimension, OWL-S is low since it describes only the The challenge raises a variety of questions, several of input and output. On the other hand, WSDL captures which are relevant for the database research community. richer structural information with XML Schema and uses Some of the questions are: What is the right way to model messagesforinputandoutputs,andothermodelsincluding webservicesandtheircompositions? Whatistherightway BPEL, CSP [29] and (cid:25)-Calculus [34], the Mealy model [8], to query them in order to support automated composition the Roman model [7], and BPML also model service states and analysis algorithms? And how can the data manage- and message or activity sequences. Clearly, the ability of mentaspectsofcompositewebservicesbeincorporatedinto assembling individual services together in this \cluster" of currentwebservicesstandards? Thispaperattemptstopro- models make them high along the glue language complexity vide the groundwork needed to address these questions, by dimension. The third dimension is the ability to describe (cid:3) Supportedin partbyNSFgrant IIS-0101134. \semantics". OWL-Scan describe the properties on the in- (cid:3)(cid:3) DatabasePrinciples Column. put and output of an operation, and also specify how the Column editor: Leonid Libkin, Department of Computer Science, Uni› serviceinteractswithanabstractmodelofthe\realworld", versity of Toronto, Toronto, Ontario M5S 3H5, Canada. E›mail: which distinguishes it from the other models. [email protected]. OWL-S will most likely be guided by already established standards andpractices. Someofthecurrentstandardsareillustrated by the layered structure shown in Figure 3. Brie(cid:13)y, web CTR-S services interactbypassing XMLdata, withtypesspeci(cid:12)ed Commitment using XML Schema. SOAP can be used as the communi- protocols p-Calc Mealy BPML cation protocol, and the i/o signatures for web services are “semantics” Complexity of glue language RomanWSCL CSP BPEL sBwgeiePvrbveEnicLseeb,rsyvWciWacSenCsSbDDteoLLd,.eeaBA(cid:12)cPlnhleMoodftLhut,ehsDrien.sAgeBMhceaiLhgn-ahSveb,ireoerltdeacvel.e(cid:12)dlnesestdcarnbipdetafiorordnessbsouinfcdhwineabgs Complexity of component services WSDL ChorDeiosgcroavpehryy UDDI WS-Choreorgaphy Composition BPEL4WS OWL-S ServiceModel Figure 2: Anatomy of Web Service Composition (Individual) WSCL Service Thispaperisorganizedasfollows. Section2givesashort Description WSDL OWL-S ServiceProfice overview of several standards related to Web services and XML composition. Section 3 is intended to provide some high SOAP Messaging levelofkeyaspectswebservicecompositionandadiscussion Network HTTP, SMTP, FTP, etc. on models thathavebeen studied in the context. Section4 brie(cid:13)ysummarizestechniquesandapproachesforanalyzing Figure 3: Web Service Standards Stack Webservices. Section5 concludes the paper. In Figure 3, XML messaging and Network layers pro- 2. WEBSERVICES ANDSTANDARDS vide the foundation for interoperations or interactions be- tween services. The starting point for service descriptions Agoodstartingpointforunderstandingthewebservices is the W3Cs Web Service Description Language (WSDL) paradigm is to consider the stated goals, as found in the [50]. WSDL describes a Web service via its set of visible literature and the standards communities. The basic moti- operations. They can be thought of as message endpoints, vation of standards such as SOAPand WSDL is to allow a or the set of messages that it can send and receive. WSDL high degree of (cid:13)exibility in combining web services to cre- speci(cid:12)es on the one hand \reactive" operations in which a ate more complex ones, often in a dynamic fashion. The message is received by the service. If the reactive opera- current dream behind UDDI is to enable both manual and tion is declared as \one-way", then it does not return a re- automated discovery of web services, and to facilitate the sponse, otherwise it is a \request-response" operation, and construction of composite web services. Building on these, the return type is also declared. It also describes proactive theBPELstandardprovidesthebasisformanuallyspecify- operations that send out messages from the service. \Noti- ingcompositewebservicesusingaprocedurallanguagethat (cid:12)cation" operations send out messages without waiting for coordinates the activities of other webservices. a response, while \solicit-response" operations block wait- Much more ambitious goals are espoused by the OWL- ing for a response, with the response type being speci(cid:12)ed S coalition [14] and more broadly the semantic web ser- with the operation. The receive and response types of the vices community (e.g., [15]). These goals are to provide operationsaremappedontoconcreteXMLSchematypesto machine-readable descriptions of web services, which will be used in messages. WSDL can thus be seen as an exten- enable automated discovery,negotiation with, composition, sion of traditional input/outputsignatures inprogramming enactment,andmonitoringofwebservices. OWL-Sisanon- languages and distributed computing to a peer-to-peer set- tologylanguagefordescribingwebservices,intermsoftheir ting. A service is viewed both as a server (via its reactive inputs,outputs,preconditionsand(possiblyconditional)ef- operations) a client (via its proactive operations). fects, andoftheirprocessmodel. Importantly,OWL-Spro- WSDL models services that are essentially stateless. vides a formal mechanism for modeling the notion of the (WSDL2.0incorporatesalimitednotionofstate,sinceiten- state of the "real world", and describing how atomic web ablesspeci(cid:12)cationofcertainmessagepatternsthataservice services impact that state over time. (This is described in should satisfy.) While it is clear that the complete internal more detail in Subsection 3.1 below.) OWL-Salso provides state of a running service is not expected to be known, it a grounding, which provides mechanisms for mapping an is also commonly accepted that some executionstates need OWL-S speci(cid:12)cation into a WSDL speci(cid:12)cation (e.g., see be visible either due to the fact that theyare observable or [40]). thenecessity(e.g.,tointeractcorrectlywithotherservices). Akindofmiddlegroundisalsoemerging,whichprovides TheWebServiceConversation Language (WSCL)[49] pro- abstract \signatures" of web services that are richer than posalisaninterestingapproachinde(cid:12)ningtheoverallinput WSDL but retain a declarative (cid:13)avor. Most popular here and output message sequences for one service using essen- is the use of automata-based descriptions of permitted se- tially a (cid:12)nite state automaton (FSA) over the alphabet of quencingpatternsofthewebservices,withafocusoneither message types. The FSAis called a conversation. activities performed [7] or messages passed [26]. Note that WSCL complements extremely well with The underlying structure for the web services paradigm WSDL. A WSDL description along with a WSCL conver- sationofaserviceprovidearatherrichsemanticsaboutthe for process (cid:13)ow. servicewhilekeepingtheinternalimplementation/execution The work on the di(cid:11)erent models has centered around encapsulated. Forthisreason,theyarecombinedintoalayer three di(cid:11)erent aspects of composition. To describe these, named \individual service description" in the stack in Fig. we (cid:12)rst establish some vocabulary. When a family of web 3. services interact, the overall topology may be, speaking in- WhileWSDLandWSCLcande(cid:12)neWebservices,clearly formally,mediator-basedorpeer-to-peer. Bymediator-based there is a need for languages in the corresponding level of we mean that there is one web service, called the media- abstraction to compose services. BPEL [12] was developed tor, which has the specialized role of controlling the opera- as a language both for programming Web services and for tionandinteractionof theotherservices; theotherservices speci(cid:12)cation of Web services (e.g., in legacy systems). For arecalledcomponent services. Inapeer-to-peerframework, example, [26] identi(cid:12)ed two topologies for service composi- each participating service is called a component service. tion: \peer-to-peer",and\hub-and-spoke"withamediator. Itisalsousefultodistinguishbetweencompositions that Mediatorsplaytheroleofcoordinatingtheactivitiesofother are intended for single or multiple use. In the former case, webservices. AprimarygoalofBPELisprovidealanguage a composition algorithm is invoked each time that a client forspecifyingthebehaviorofmediatorservices,ratherthan identi(cid:12)es a desired goal service, similar to typical scenarios for general-purpose programming. on AI planning. In the latter case, the goal established for In contrast to specifying individual services that BPEL the composition algorithm is to produce a (composite) ser- provides, WS-Choreography (WSCDL) [48] attempts to vicethat can berunmultipletimes, insupportof the same specifygloballyhowdi(cid:11)erentcomponentservicesshouldbe- or di(cid:11)erentclients. have. WSCDL emphasizes on the \choreography" aspects: The three families of initial results are now described; the roles of the participating services, information that be- more details are given below. ing passed between services, and channels that enable the Synthesis ofmediator fromatomiccomponent services. The information (cid:13)ow. (cid:12)rstcategoryofresults,whichhasbeenusedsuccessfully[38] At the top of the standards stock is the UDDI (Version withOWL-S,isfocusedonbuildingawork(cid:13)owschema(e.g., 3 was recently adopted as an OASIS standard). UDDI al- (cid:13)owchart, Petri net, composite OWL-S service, ...) that lows services to be registered with a registry. Services in a invokes atomic services in order to achieve a speci(cid:12)ed goal registrycanbesearchedwithqueryingabilitiesprovidedby within speci(cid:12)ed constraints. This work(cid:13)ow schema would the standard. typically be enforced by a mediator, and in practice might be speci(cid:12)ed using BPEL. This work tends to focus on the 3. FOUNDATIONS FOR SERVICE COM› single-use case. POSITION:ASAMPLING Selection of multi-step components and synthesis of medi- Web service composition addresses the situation when a ator. In this work, initiated with the Roman model, the client request cannot be satis(cid:12)ed by a single pre-existing componentservicesaregenerallynon-atomic,andhavepro- service, but can be satis(cid:12)ed by suitably combining some cess (cid:13)ow speci(cid:12)ed using a transition system or (cid:12)nite-state available, pre-existing services. Reference [25, 1] identi(cid:12)es automata. Unlike the OWL-S work, however, the atomic two aspects of composition: composition synthesis is con- servicesinsidethecomponentservicesareveryabstract. As cerned with synthesizing a speci(cid:12)cation of how to coordi- describedbelow,seminalresultsherefocus ontheconstruc- natethecomponentservicestoful(cid:12)lltheclientrequest;and tion(ifoneexists)ofaspecializedkindofmulti-usemediator orchestration, isconcernedwithhowtoactuallyachievethe thatachieves a desired goal behavior. coordination among services, byexecuting the speci(cid:12)cation produced by the composition synthesis and by suitably su- Synthesis ofcomponent services inpeer-to-peer setting. The pervising and monitoring that execution. The focus here is results here focus on message-passing Mealy machines. In on composition synthesis andrelated issues. this context,a composition schema is de(cid:12)nedas a template The theoretical study of (automatic) composition syn- thatcomponentwebservices canbepluggedinto. Thegoal thesis for web services is still in its infancy. The models behavior is speci(cid:12)ed as a family of permitted message ex- underlying this work on automatic composition have roots change sequences, or conversations, that should be realized in AI, logic, situation calculi, transition systems, and au- bythesystem. Keyresultsherecharacterizewhenaconver- tomata theory, and thus rely on a variety of philosophical sation language can be realized, and synthesize component bases. The discussion here is not intended to be compre- services in that case. As detailed below, these results can hensive, but rather highlights some of the most important be used to help with practical composition, and they pro- foundations and results that might be most interesting to videanapproachtomap\global" choreographyconstraints the database community. onto\local" constraints concerning the message sequencing The initial results on automatic composition considered behaviors of the componentservices. herearegroupedaroundthreedi(cid:11)erentmodelsforwebser- In Subsection 3.1 below we describe the OWL-S model vices,whichweidentifyhereas(a)OWL-S(e.g.,[14]),which andresultsinmoredetail. Specialemphasisisplacedonthe includes a rich model of atomic services and how they in- model, and a natural bridge from the AI foundations that teract with an abstraction of the \real world", (b) Roman OWL-S relies on to a formal basis that essentially builds (e.g., [7]), which uses a very abstract notion of atomic ser- on a relational database framework. In Subsection 3.2 we viceina(cid:12)nite-stateautomataframeworkfordescribingpro- describetheRomanmodelandresults,andinSubsection3.3 cess(cid:13)ows,and(c)(message-based)Mealymachine(e.g.,[8]), we describe the model and results on message passing and whichfocuseson(message-based)\behavioralsignatures"of Mealy machines. Finally, Subsection 3.4 presents a brief services, andagainusinga(cid:12)nite-stateautomataframework overview of recent work on web service models and results thatcombinethefundamentalaspectsof theabovemodels. core aspects of the Situation Calculi. PSL is a (cid:12)rst-order logic ontology for describing the core elements of processes. 3.1 OWL›S: Modelandcomposition PSL is layered, with PSL-Core at the base and many ex- We now consider salient aspects of the OWL-S model tensions. PSL-Outercore is a natural family of extensions and some of the key composition results obtained. In our above PSL-Core, useful for modeling processes. FLOWS is presentation we do not follow exactly the original formu- a family of extensions on topof PSL-OuterCore. lation [14], but instead adopt the approach recently intro- PSL-OuterCore provides (cid:12)rst-order predicates that can duced by work on the First-order Logic Ontology for Web be used to describe the basic building blocks of processes Services (FLOWS) [9]. FLOWS provides the basis for the and there execution. To give the (cid:13)avor, we mention a few (cid:12)rst-orderlogiccomponentoftherecentlyreleasedSemantic highlights. Fundamental is the class of activity; an activ- Web Services Ontology (SWSO) [15]. We use the FLOWS ity can be viewed as a process template, and there may be framework here, as it is somewhat closer to a relational zero or more occurrences of an activity (corresponding to databaseformulationthantheunderpinningsoriginallyused instancesofaprocessorenactmentsofawork(cid:13)ow). Thebi- byOWL-S. narypredicateoccurrence of(occ;a)isusedtospecifythat Akeycontributionof OWL-Sis the explicit modeling of occisanoccurrenceof activitya. Therearecomplexactivi- how web services in OWL-Sinteract with the \real world". ties,andthebinarysubactivitypredicateisusedtospecify ThebasicbuildingblockoftheOWL-Sprocessmodelisthe sub-activities of an activity. There are also atomic activi- notion of \process"; thisincludes bothatomic andcompos- ties, such that, intuitively, the execution of an occurrence iteprocesses. OWL-Sprocessesarespeci(cid:12)edtohaveinputs, of an atomic activity is \atomic" in the typical database outputs, pre-conditions, and conditional e(cid:11)ects (IOPEs). sense. A notion of time points in a discrete linear ordering The IOPEs of two example OWL-S atomic processes taken isincluded;occurrenceshaveabegintimeandanendtime. from a stock brokerdomain are informally sketchednow. In a typical usage of PSL (FLOWS), an application do- mainiscreatedbycombiningthePSL-OuterCore(FLOWS- select_stock Core)axiomswithdomain-speci(cid:12)cpredicatesandsentences input: stock_name, quantity toforma((cid:12)rstorderlogic)theory. Themodelsofthistheory output: price, reservation_id pre-condition: the quantity of stock is canbethoughtofasatreeorforest,whosenodescorrespond available for sale to occurrences of (atomic) activities, and with edges from conditional effects: one occurrence to another if theyfollow each other with no if true, then modify world state to intervening occurrence. A path in this tree (forest) can be reflect the fact that this stock viewedasone possible sequenceof stepsintheexecutionof is being held for sale the overall system. purchase_stock Speakingloosely,eachsentenceinanapplicationdomain input: reservation_id, billable_account theory can be viewed as a constraint or restriction on the output: confirmation_id models (inthesense of mathematical logic) thatsatisfy the pre-condition: reservation_id is valid theory. In particular, and following the spirit of Golog [41] and has not expired andsimilarlanguages,evenprocessmodelconstructssuchas conditional effects: while or if-then-else correspond formally to constraints if enough money in billable_account then transfer of $$ to stock owner and rather than procedural elements. A mapping of OWL-S to transfer of stock to buyer PSL is providedin[24]. if not enough money, then Wenowgetbacktoourstockpurchaseexample,andpro- make reservation_id void videadatabase-orientedcastonPSLandOWL-S.ThePSL- anddomain-speci(cid:12)cpredicatesassociated withourexample A client would use select stock in order to check the can be viewed essentially as relations in some (potentially availability of a given quantity of some stock, and if it vast)relational database. Someof the domain-speci(cid:12)crela- is available, then reserve that for purchase. Speaking in- tionsmightbe\accessible"byjustoneservice,othersacces- tuitively, successful execution of the service would result siblebyseveralservices,andstill othersmightbeaccessible a commitment that this stock will be held for purchase byallservices. Intheexample, wemighthavethefollowing (e.g., for 10 minutes). After a successful reservation of domain-speci(cid:12)c relations that sort, the client might invoke purchase stock to ac- tually make the purchase, using some bank account to pay available_stock(stock_name, qty, price) for it. purchase stock will execute as long as the reserva- reserved_stock(stock_name, qty, price, res_id) tion is valid, but the outcome of this execution depends on purchase_reservations(res_id, start_time) whethertherearesu(cid:14)cientfundsintheaccount. Acompos- billable_accounts(acct_id, current_balance) iteOWL-Sservicemightbecreatedbycombiningthesetwo Usingtheaboverelations itis nowrelativelystraightfor- atomic processes using the sequence construct; in this case wardtospecifythebehaviorsoftheatomicprocesses(which theIOPEofthiscompositeprocesscanbeinferredfromthe can be viewed as atomic activities in the parlance of PSL). IOPEs of the atomic processes. Forexample,ifselect stockiscalledwithinputss;q,then To provide a formal basis for this interaction with the the pre-conditioncan bespeci(cid:12)ed as a testagainst the cur- realworld,OWL-StakestheapproachoftheSituationCal- rentcontentsofrelationavailable stock,toseeifthereisa culus [41], a logic-based formalism which explicitly models tuple(s;q0;p)withq0 (cid:21)q. Thee(cid:11)ect(whichinthiscasewill thefactthatovertimedi(cid:11)erent\situations"orworldstates will arise. To brie(cid:13)y illustrate this here we follow FLOWS, always occurifthepre-conditionholds)mightbetoreplace andusetheProcessSpeci(cid:12)cationLanguage(PSL)[43,23],a that tuple with (s;q0(cid:0)q;p), create a \new" reservation id r, and insert (s;q;p;r;t) into reserved stock, where t is a recentISOstandardwhichamongotherthingsincorporates time-stamp. Alloftheseoperationsshouldbeconsideredas Delegator select_stock anatomic database transaction. (Are(cid:12)nementwouldbeto Target select_stock enable the case where the shares of stock ful(cid:12)lling a single S1 S1 pay request would havemultiple prices.) pay Now, thereis one step remaining before we havethe full pay pictureonhowthebehavioroftheOWL-Satomicprocesses select_bond S2 S2 can be formally speci(cid:12)ed in PSL. Two general approaches select_bond haveariseninthecontextofthesituationcalculi(see[39]for a detailed discussion). Under one approach, relations such as available stock are transformed byaddinganew (cid:12)eld, “UDDI++” S1 select_stock S2 pay which holds a time value. Under a second approach, taken available services byPSL,thisrelation wouldbetransformed intoafunction, pay say, f available stock that takes three arguments. Two select_bond PSLpredicates,holdsandpriorareusedtoassociate(intu- itively)truthvaluestotermscreatedusingthisfunction. For Figure 4: Illustration of composition with Roman example, if the predicate holds(f available stock(s,q,p), model occ)istrueinamodel,thiscorrespondstotheintuitionthat Horn clauses). If the overall family of constraints is satis(cid:12)- the term holds(f available stock(s, q, p) is true \about able,thenthereisacomposition,whichcanbeequatedwith the world" immediately after the occurrence occ was exe- a branch of the execution tree of the generic program that cuted, or in terms of the relational perspective, that tuple satis(cid:12)es certain properties. Reference [35] describes how a (s, q, p) was in the relation available stock at that time. ConGolog interpretercan be usedto (cid:12)ndsuchbranches. Thepredicatepriorworksanalogously,referringtothetime immediately prior to the start of an occurrence. 3.2 Roman Model perspective: Actions with OWL-Sprovidesavarietyof featuresbeyonditsrichno- Automata›based ProcessModel tion of IOPEs. We mention one here, which is a family Wenowconsiderafamilyofresults involvingautomated of constructs for building composite processes from atomic composition of multi-stepservices. This workwaslaunched ones. TheseconstructsareinspiredbyGOLOGandarerem- by the seminal work [7, 5], which is of interest for at least iniscent of (cid:13)owchart-style constructs, but in OWL-S they two reasons: (a) the paper develops a novel, general frame- are viewed as declarative constraints in the speci(cid:12)cation of workforstudyingcomposition of human-machinestyleweb a web service, ratherthan procedural imperatives. services,and(b)thetheoreticaltechniquesdevelopedinthe Wenowbrie(cid:13)ydescribetwoofthekeyresultsconcerning paper can begeneralized to a muchbroader context. automaticcompositionforOWL-SandOWL-S-likeservices. The paper starts with a very abstract model of web ser- The (cid:12)rst is developed in [38], where salient aspects of the vices, based on an abstract notion of activities. Basically, OWL-S model are mapped (cid:12)rst into a Situation Calculus, there is a ((cid:12)nite) alphabet of activity names, but no inter- and from there into the Petri net domain. In this compo- nal structure is modeled (no input, output, or interaction sition result, it is assumed that all relevant aspects of the with the world). To specify the internal process (cid:13)ow of a applicationdomainarerepresentedusinga(cid:12)nitenumberof web service, [7, 5] starts with transition systems. In the propositional(cid:13)uents,andthefamilyofpermittedinputand mostgeneralcase,thesearepotentiallyin(cid:12)nitetrees,where output argument values is (cid:12)nite. (In a relational database each branch corresponds to a permitted sequencing of exe- setting, this can be achieved by restricting attention to a cutionsof the activities. Forthe theoretical results theyre- (cid:12)nite domain.) The goal of the (single-use) composition is strict attention to (cid:12)nitely speci(cid:12)able transition systems; in then speci(cid:12)ed in terms of an overall e(cid:11)ect to be achieved particular onsystemsthatcan bespeci(cid:12)ed as deterministic (on all of the relevant propositional (cid:13)uents) starting from (cid:12)nite-state automata, where the activities act as the input some initial state (which in essence includes relevant input alphabet (i.e., where the edges are labeled byactivities). It argumentvalues). Anotherelementoftheresultisthetrans- is convenientto refer to this as the \Roman" model. lation of OWL-Satomic processes intoPetri netfragments; References [7, 5] focus on human-machine style web ser- these are used to assemble a Petri net that corresponds to vices. Asasimpleillustrationofhowserviceswork,consider all possible sequencing of the processes. (For simplicity, it the service labeled Target in Figure 4. When this service is assumed that no atomic service is invoked twice in these is being used bya client (could be human or automated) it sequences.) The overall complexity of determining the ex- performs the following sequence of steps: istence of a composition is expspace. Of course, various heuristics can be applied to make this tractable. Also, the (1) Give the client a set S of activities to choose from techniquecanbegeneralizedtosupportcompositionofcom- (possibly including the special \activity" terminate). posite processes, as well as atomic ones. (2) Waitfor the client tochoose exactly oneelementof S Another approach to composition, also developed in the context of OWL-S, is developed in [35]. This work pro- (3) Executethe chosen activityandreturnto step (1), or poses a two-tier framework, based ongeneric programs and terminate if that was chosen. customization via constraints. Beginning with a family of Ineachiteration,thesetSischosenaccordingtothecurrent atomic OWL-Sservices, a generic program can be speci(cid:12)ed state of the service { in a state p the set S includes each usingtheGOLOGlanguage. Notethatthisgenericprogram activity that labels an out-going edge from p, and includes may not be completely speci(cid:12)ed. As a second phase, addi- \terminate" if p is a (cid:12)nalstate. tional constraints can be written to capture customizations To illustrate, when the Target is launched it gives the neededbyagivenclient. (Itistypicaltoexpresstheseusing clientachoiceoffselect stock,select bond,terminateg. Target Credit_card the client, but also the choice that the client will make in Commit_ . . . to_buy . . . the next move. Reference [22] shows that there is a non- collapsing hierarchy of k look-ahead delegation problems, Mail_order and there are examples requiring \in(cid:12)nite" or arbitrarily long look-ahead. Also, the problemof checkingexistence of a k look-ahead delegator can be transformed into a prob- “UDDI++” lem of checking existence of a conventional (0 look-ahead) Commit_ Commit_ available services to_buy Credit_card to_buy Mail_order delegator, and has exptimecomplexity. 3.3 Conversationsand Mealyservices Figure 5: A composition problem with a 1 look- The OWL-S and Roman models focus on what a service ahead solution or composition does, either in terms of the input/outputof services (activities) and their impact on the world, or the Supposing the client chooses select stock, in the next it- sequencing of the activities in a service. Atthe operational erationtheservicegivesthesetfpayg. Executioncontinues level, neitheraddressesthe issueof howthe componentser- until the client chooses terminate. vices in composition should interact with each other. The Wecannowdescribethebasiccompositionproblemstud- notion of \conversations" was naturally formulated in ad- ied with the Roman model. Consider now the two services dressingthisneed[27,28,49]. Preliminarytheoreticalwork S1 and S2 shown in Figure 4. Suppose that these are the onconversationswas reportedin[8, 18]. Inthissubsection, onlypre-existingservicesavailable. Thequestioniswhether wehighlightkeytechnicalnotionsandresults. Muchofthis itispossible tousesome orallof thoseto\build"aservice work assumes a peer-to-peerframework. thatactsthewayTarget does. Onewaytoaccomplish this Tobeginwith,weassumetheexistenceofanin(cid:12)nitesetof is with the \service" shown as Delegator in Figure 4. The servicenames. Thesewillactessentiallyasplace-holdersfor operationofthisissimilartotheoperationoftheotherRo- service spec(i(cid:12)cation)s, which can be viewed as completely manservices,exceptthatwitheachtransitionofDelegator orpartiallyspeci(cid:12)edimplementationsfortheservicenames. it is also assumed that one or more of the pre-existing ser- Wealsoassumeanin(cid:12)nitesetofmessageclasses,whereeach vices performs a transition. In particular, the pre-existing class mc has a service name as source and a service name service must perform the same activity as the Delegator. astarget. Acomposition schemaisaapair(P;M)whereP Intuitively, one can think of Delegator as not executing is a (cid:12)nite set of service names and M is a (cid:12)niteset of mes- the services, but rather, as delegating the execution to the sage classes. whose sources and targets are in P. Figure 6 pre-existing services. Furthermore, in a valid execution of shows a composition schema for a \stock analysis service" Delegator, eachof thepre-existingservicesmustperforma (SAS)[20]. TheSAScompositionschemausesthreeservice valid (andterminating) execution. names: Investor, Stock Broker, and Research Department, Thecentralresultof[7]isthattheexistenceofadelegator canbedeterminedinexptime,andthatthereisaconstruc- anduses the 9message classes indicated inthe (cid:12)gure. This composition schema models abstractly a domain in which tiveapproachforbuildingsuchdelegators. Importantly,the the Investor service can request reports on di(cid:11)erent stocks form or skeleton of the delegator may be di(cid:11)erent than the from the Research Department. Therequestsare controlled form or skeleton of the target service (e.g., in the example by the Stock Broker service, which handles issues such as the delegator has more states thanthe target service). permissions and billing. Thisresultcanbeprovedbyusingatransformationofthe problem into Propositional Dynamic Logic (PDL), a well- register, ack, cancel knownlogicforreasoningaboutprograms[31]. Asdetailed Investor StockBroker in[5],thereisanatural,polynomial-sizetranslationofaRo- accept, reject, bill man composition problem into deterministic PDL. The re- request, report sultthenfollowsbecausesatis(cid:12)abilityfordeterministicPDL terminate is exptime, and a constructive technique is available. Fur- ResearchDepartment ther,[6]describeshowadescriptionlogicreasonerhasbeen adapted to perform this test andconstruction. Figure 6: A Composition Schema We brie(cid:13)y mention two extensions of the results in [7]. A composite service for composition schema (P;M) is Reference [10] extendsthe basic modelbyconsidering (pre- an association of actual web services to each service name existing)services thatcan themselvesdelegate tootherser- in P, where the actual web services are capable of send- vices. In the model there, if an edge in a service S1 has label>>athisindicatesthatS1canperformactivitya,and ing/receiving messages coming from the relevant message classes in M. Given a composite service, a basic approach ifanedgeinS2haslabel a>> thisindicatesthatS2isable fortheunderlyingoperationalmodelisthateachservicehas todelegateactivityatosomeotherservice. Thedelegation a FIFOqueuefor all incoming messages (possibly from dif- feature adds a level of non-determinism, but checking the ferentservices). Thiscorrespondsabstractlytothemessage existence of, and constructing, a (generalized) delegator is orientedmodelinSOA[25,1]. Queuingofmessagesprovides still possible in exptime. a model asynchronous communication, which is realistic in ConsidernowthecompositionproblemillustratedinFig- the web setting. ure 5. There is no delegator that can simulate the target Given a composite service S over composition schema service in this case. However, as discussed in [22], there is (P;M), aconversation of S isthe (global) sequenceof mes- a \1 look-ahead" delegator, that is, a delegator which can sagessentduringonesuccessfulexecutionofS. Severalstan- make the correct delegations, as long as the delegator is dards and research works are concerned with properties of given information not only about the immediate choice of conversation languages. WS-Choreography [48], and refer- a ?a ences [27,28,48]focus on\global" constraintsonconversa- ?b !a b tions. In contrast, the standards WSCL [49] andWSDL2.0 !b [51] focus on \local" constraints on conversations, in the sensethattheyfocusonconstraintsaboutmessagepatterns Figure 9: A Non-regular Conversation Language of the component services of a composite service. can simulate Turing machines [13]. When all queues are Reference[8]initiatedtheformalstudyoftherelationship bounded,the conversation languages are always regular. between such global and local constraints. A conversation Turningtoquestion(Q1),a(cid:12)neranalysisrevealstwoim- protocol for a composition schema (P;M) is a (cid:12)nite state portant aspects of conversations languages: (a) What indi- machineoverthesetofmessageclassesinM. Figure7shows vidual Mealy service sees vs. the (global) conversation, and aconversationprotocolfortheSASservice. Inthisexample, (b)WhentwoMealyservicesarebothreadytosend,itisn’t the register message from INV can include a list of stock possibletoforceaparticularordering. Thesetwofactorsare symbols. Upon acceptance of a message of this type, each formulated intotwo operators in [8]: symbolwillresultinaseparaterequestfromtheStockBroker service to the Research Department service (corresponding (cid:15) Projectingaconversationtothemessagealphabetofa to the request-report-ack loop inthe protocol). single service name and joining message sequences of Mealy services into a conversation, and cancel (cid:15) Preponing (i.e., swapping) messages from di(cid:11)erent report senders (ina local perspective). register acceptrequest ack requaesctk report uItndtuerrn(s1)ouptrotjheacttioMn-ejaoliyncaonndve(2rs)aptiroenpolnaninggu.ages are closed reject bill cancel colTishencoltosculoreserdesuunltdseirnediitchaetre othpaetraitfoar,cothnvenersitatcioannnportotboe- terminate terminate bill realized byanycomposite service. Intuitively,this suggests that during design it may not be a good candidate as a Figure 7: A Conversation Protocol for SAS global constraint onthecomposition duringdesign. Onthe other hand, it is interesting to know if the projection-join Three natural questions are (Q1) Given a conversation and prepone closure of a regular language is realizable as protocolovercompositionschema(P;M),canitberealized theconversationlanguageofsomeMealycompositeservice. bysome composite service S over(P;M)? (Q2) If so, what The answer turns out to be positive [8], and, relevant to can be inferred about the individual services in S? (Q3) question (Q2),a construction is provided. If the individual services in a composition have a message- Itisnotclearwhetheronecanalwaysdetermineifareg- passing behavior corresponding to a regular language, then ularlanguageisclosedunderprojection-joinandpreponing, is the resulting conversation also characterized bya regular thougha su(cid:14)cient condition was givenin [18]. language (i.e., bya conversation protocol)? Weconcludethisdiscussionbydescribingtwobroadways In [8] these questions are studied using the notion of in which the above results can be applied in practical set- Mealy services. Theseareservicespecsbasedon(cid:12)nitestate tings. Oneistohelpintheprocessofpracticalcompositions. automata whose transitions correspond to sending a mes- Suppose that one seeks to create a (peer-to-peer) composi- sage m(denoted as !m)or receiving a message m(denoted tion, based on a pre-determined composition schema, and as?m). Fig. 8showsaMealyserviceforINV.AMealycom- satisfying a given conversation protocol. Suppose further posite service is a composite service over Mealy services. thatafamilyof componentMealyservices issynthesizedto WenotethataMealyservicecan beviewedinthreedif- satisfy this protocol. This family of Mealy services can be ferentways: (a)asanimplementationofaservicename;(b) usedtoselectafamilyofcandidate(real-world)webservices as a \behavioral signature" that abstractly describes some that satisfy the \local" constraints speci(cid:12)ed by the Mealy properties of a service behavior; and (c) as a constraint on services. Thenperformfurtheranalysisofthecandidateser- the local messaging behavior that a service shouldsatisfy. vices,onaspectsthatarenotcapturedbytheMealyservices With regards to question (Q3), in [8], it was shown that alone. theconversationlanguagesofsomeMealycompositeservices Thesecondpracticalapplicationistoviewaconversation are not regular (see Fig. 9), nor even context-free in the language as a global constraint that should be satis(cid:12)ed by language hierarchy, but they are always context-sensitive. afamily of webservices, essentially inthespiritof theWS- The key factor here is the use of unbounded queues. This Choreography standard. The results above can be used to is not surprising, since (cid:12)nite state automata with queues determine whether this global constraint can be realized at all. Itcanalsobeusedtoinferlocalconstraints,thatspecify properties of the behavioral signatures of each component !register service. ?accept ?reject !ack 3.4 Selected AdditionalDevelopments Wecloseoursamplingofcompositionmodelsandresults ?report with a brief overview of two very recent e(cid:11)orts, which hold !cancel ?bill thepromiseofprovidingaunifyingframeworkforthisarea. ?bill The (cid:12)rst, already touchedupon in Subsection 3.1, is the Figure 8: A Mealy Service for Investor work on FLOWS [9, 15], which provides a (cid:12)rst-order logic ontology for web services. We provide here a little more Using the Colombo model, [4] develops a framework for detail onFLOWS. posing composition problems,thatclosely parallels the way FLOWS includes objects of type service. These can be compositionwillhavetobedoneusingstandards-basedweb related to several types of object, including non-functional services. Speci(cid:12)cally,thebasiccompositionproblemstudied properties (e.g., name, author, URL), and also to its activ- is how to builda mediator that simulates the behavior of a ity. This is a PSL activity, and may have specialized kinds target web service, where the mediator can only use mes- of subactivities. This includes (FLOWS) atomic processes, sage passingtogetthepre-existingweb servicestoperform which are based on OWL-S atomic processes with inputs, atomic activities (which in turn impact the \real world"). outputs, pre-conditions and conditional e(cid:11)ects. Some of Undercertainrestrictions, [4]demonstratesthedecidability these atomic processes, as in OWL-S, are domain-speci(cid:12)c, of the existence of a mediator and develops a method for in that they interact with the \real world" as represented constructing them. This result is based on (a) a technique intheapplicationdomain,andothersareservice-speci(cid:12)c, in for reducingpotentially in(cid:12)nitedomainsof datavaluesinto that they focus on the standardized mechanics of services, a(cid:12)nitesetof symbolicdata values,and(b)inageneraliza- e.g., message-passing andchannelmanagement(seebelow). tionof[5],amappingofthecompositionproblemintoPDL. The (cid:13)ow of information between services can occur in The results reported in [4] rely ona numberof restrictions; essentially two ways: (a) via message passing and (b) via a broad open problem concerns how these restrictions can shared access to the same "real world" (cid:13)uent (e.g., an in- be relaxed while still retaining decidability. ventorydatabase,areservationsdatabase). Withregardsto message passing, FLOWS models messages as (conceptual) 4. ANALYSIS COMPOSITESERVICES objects that are created, read, and (possibly) destroyed by The need for analysis is particularly acute for composite web services. A message life-span has a non-zero duration. services,especiallyiftheyaretobecreatedfrompre-existing Messages have types, which indicate the kind of informa- services using automatic algorithms. The ultimate goal is tionthattheycantransmit. FLOWSalsoincludesa(cid:13)exible toensurethattheeventualexecutionofacompositeservice channel construct. produces the desired behavior. Ideally, one would be able To represent the acquisition and dissemination of infor- to statically verify properties (e.g., in temporal logic) for mation inside a Web service, FLOWS follows the spirit of composite services. There have been various attempts at the ontology for "knowledge-producing actions" developed developingsuchstaticanalysismethodsforwebservicesand in [45]; this also formed the basis for the situation calculus work(cid:13)ow systems. semantics of OWL-Sinputsande(cid:11)ects [38]. Based on work(cid:13)ows represented in concurrent transac- FLOWS is very open-ended concerning the process or tion logic, [16] studied the problem of whether a work(cid:13)ow data (cid:13)ow between the atomic processes inside a services. speci(cid:12)cation satis(cid:12)es some given constraints similar to the Thisisintentional,asthereareseveralmodelsfortheinter- EventAlgebraof [44]. Algorithmsweregivenforsuchanal- nal processing in the standards and literature (e.g., BPEL, ysis. An alternative approach is developed in [47], which OWL-S Process Model, Roman model, Mealy model) and mapsconventionalwork(cid:13)owstoPetrinets,andthenapplies many other alternatives besides (e.g., rooted in Petri nets, standard results to analyze properties such as termination in process algebras, in work(cid:13)ow models, in telecommunica- and reachability for work(cid:13)ows. Similar results have been tions). TheFLOWSworkisstillquitepreliminary,butholds obtained for OWL-Scompositions [38]. thepromiseofprovidingaunifyingfoundationforthestudy There are two recent projects that use model checking and comparison of these many variations on the notion of techniques to verify BPEL composite web services. In [21], web service. mediatedcompositeservicesspeci(cid:12)edinBPELwereveri(cid:12)ed A second very recent work is reported in [4, 3]. That against the design speci(cid:12)ed using Message Sequence Chart work develops Colombo, a formal model for web services andFiniteStateProcessnotations,withafocusonthecon- that combines trol (cid:13)ow logic. In [19], both conversation protocols and (a) Aworldstate,representingthe\realworld",viewedas Mealy services were extended to guarded automata which adatabaseinstanceoverarelational databaseschema incorporate (i) XML messages and (ii) XPath expressions as the basis for verifyingtemporal properties of theconver- (b) Atomic processes in the spirit of OWL-S, sations of composite web services. The following shows an (c) Message passing, including a simple notion of ports example of a transition ina protocol for the SASservice: and links, as found in web services standards (e.g., WSDL,BPEL) t14 { s8 -> s12 : bill, (d) An automata-based model of the internal behavior of Guard { web services, where the individual transitions corre- $request//stockID = $reginfo//stockID [position() = last()] spond to atomic processes, message writes, and mes- => sage reads. $bill[//orderID := $reginfo//orderID] The (cid:12)rst three elements parallel in several aspects the core } }, elements of FLOWS.Colombo also includes (e) a \local store" for each web service, used manage the Roughly, the transition is de(cid:12)ned from state \s8" to dataread/writtenwithmessagesandinput/outputby \s12" on message \bill". The part of guard prior to atomic processes; and \=>"de(cid:12)nesanadditionalequalityconditionwithbothside XPathexpressions. Thepartafter\=>" speci(cid:12)edanassign- (f) a simple form of integrity constraints on the world ment. state The extended model makes it possible to verify designs I/O signatures? What is an appropriate way to model the ata moredetailedlevel andtocheckproperties aboutmes- data transformations occurring in a web service, which will sage content. A framework is presented where BPEL spec- enablereasoningaboutthebehaviorofdatabeingpassedor i(cid:12)cations of web services are translated to an intermediate writtentodatabasesbyacompositewebservice? Arethere representation, followed by the translation of the interme- specialized models of Web service composition that will be diate representation to the veri(cid:12)cation language Promela, moresuitableforapplicationsthataretargetedprimarilyat input language of the model checker SPIN [30]. Since the data processing? Astarting pointhere mightbe [2, 17]. SPIN model checker is a (cid:12)nite-state veri(cid:12)cation tool, the Acknowledgements: Theauthorswishtothanktheircol- tool can only achieve partial veri(cid:12)cation by (cid:12)xing the sizes laboratorsformanyfruitfuldiscussionsandinspirations,in- of the inputqueuesin the translation. Su(cid:14)cientconditions cluding Michael Benedikt, Daniela Berardi, Tev(cid:12)k Bultan, for complete veri(cid:12)cation are also obtained. Diego Calvanese, Vassilis Christophides, Guiseppe De Gia- An important step in statically analyzing Web services como, XiangFu,Cagdas Gerede, Michael Gruninger,Oscar de(cid:12)ned in BPEL (or other languages) is to translate them Ibarra, Grigorios Karvounarakis, Maurizio Lenzerini, Mas- into formalisms that are suitable for analysis. Such for- simo Marcella, andSheila McIlraith. malisms include (cid:12)nite state machines [37, 21], extended Mealymachines[19], processalgebra[32]. E(cid:11)ectively,these translations provide formal semantics to BPEL. Most of 6. REFERENCES thetranslationsmentionedabovefocusonlyoncontrol(cid:13)ow structures, with an exception of [19] (where XML message [1] G.Alonso,F.Casati,H.Kuno,andV.Machiraju.Web Services.Concepts, Architectures and Applications. types,localdata,andXPathexpressionsarealsotakeninto Springer-Verlag,2004. consideration. More recently, an extensive translation of [2] S.Abiteboul,V.Vianu,B.Fordham,andY.Yesha. BPELintoaversionofPetrinetswasdeveloped[33], which Relationaltransducersforelectroniccommerce.InProc. deals with scoping rules, variable assignments, correlation ACM Symp. on Principles of Database Systems,1998. sets, among other things. [3] D.Berardi,D.Calvanese,G.DeGiacomo,R.Hull,and The presence of databases makes the static analysis ex- M.Mecella.Automaticcomposition ofwebservicesin tremely hard but not entirely impossible. In [17], a rule Colombo.InProc. of13th Itallian Symp. on Advanced based language was developed for specifying interactive Database Systems,June2005. Web services. The rules may access associated (relational) [4] D.Berardi,D.Calvanese,G.DeGiacomo,R.Hull,and databases. Web service properties are de(cid:12)ned using a lin- M.Mecella.AutomaticCompositionofTransition-based SemanticWebServiceswithMessaging.Technicalreport, ear temporal (cid:12)rst-order logic. Based on the Abstract State UniversityofRome,\LaSapienza",Roma,Italy,April, Machinetechniques[46], itwas shownthatsomeproperties 2005. are veri(cid:12)ablefor a subclass of Webservices. [5] D.Berardi,D.Calvanese,G.DeGiacomo,M.Lenzerini, Serviceorientedarchitecturemay\fundamentallychange andM.Mecella.AutomaticServicesCompositionbased on the way software is made and used" [11]. The current de- BehavioralDescriptions.International Journal of velopment platforms may no longer be suitable. While this CooperativeInformationSystems(IJCIS),2004.Toappear. is a rare chance to revisit important software development [6] D.Berardi,D.Calvanese,G.DeGiacomo,M.Lenzerini, environment,thereisnodoubtthatanalysistools(staticor andM.Mecella.ESC: AToolforAutomaticComposition ofe-ServicesbasedonLogicsofPrograms.InProc. dynamic),testinganddebuggingtools,monitoringtoolsare Workshop on Technologies for E-Services,2004. becoming critically importance. [7] D.Berardi,D.Calvanese,G.DeGiacomo,M.Lenzerini, andM.Mecella.Automaticcompositionofe-servicesthat 5. CONCLUSIONS exporttheirbehavior.InProc. 1st Int. Conf. on Service The web services paradigm raises a vast array of ques- OrientedComputing (ICSOC),volume2910ofLNCS, pages 43{58,2003. tions, including many that will be of interest to, and can [8] T.Bultan,X.Fu,R.Hull,andJ.Su.Conversation bene(cid:12)tfrom, thedatabase researchcommunity. Firstisthe speci(cid:12)cation: Anewapproachtodesignandanalysisof questionof (cid:12)ndingappropriate models andabstractions for e-servicecomposition.InProc. Int.World WideWebConf. representing Web services and their \behaviors", which are (WWW),May2003. suitable to the web services paradigm, and can support ef- [9] D.Berardi,M.Gruninger,R.Hull,and S.McIlraith. (cid:12)cientqueryingandmanipulationas neededbywebservice Towardsa(cid:12)rst-orderontology forwebservices.InW3C compositionandanalysisalgorithms. Morebroadly,towhat Workshop on Constraints and Capabilities for Web extentcantheproblemofautomatedcompositionbere-cast Services,October 2004. to be a problem in writing and answering one or several [10] D.Berardi,G.DeGiacomo,M.Lenzerini,M.Mecella,and D.Calvanese. Synthesisofunderspeci(cid:12)ed composite queriesagainstbehavioraldescriptionsofservices? Another e-servicesbased onautomatedreasoning.InProc. Second aspectconcernstheapplicationofXMLconstraint-checking International Conference on Service-OrientedComputing, techniquesto performcompile-time orrun-timecheckingof pages 105{114,2004. Web service speci(cid:12)cations (e.g., in WSDLandBPEL, or in [11] J.Bloomberg.Thesevenprinciplesofservice-oriented emerging behavioral speci(cid:12)cation languages). development. XML& WebServices,3(5):32{33, 2002. Asecond category of questionsis how tobring data ma- [12] BusinessProcessExecutionLanguage forWebServices nipulation more clearly into the web services paradigm and (BPEL),Version1.1. their associated standards. The standards and most re- http://www.ibm.com/developerworks/library/ws-bpel, search at present are focused primarily on process model May2003. and I/O signatures, but not on the data (cid:13)ow and the ma- [13] D.BrandandP.Za(cid:12)ropulo.Oncommunicating(cid:12)nite-state nipulationofthedataasitpassesthroughthis(cid:13)ow. Isthere machines.Journal of the ACM,30(2):323{342, 1983. value in associating integrity constraints with web service [14] OWLServicesCoalition.OWL-S:Semanticmarkupforweb services,November2003. and Reasoning (KR2002),pages 482{493,April2002. [15] SWSLCommittee.SemanticWebServiceOntology [36] S.A.McIlraith,T.C.Son,andH.Zeng.Semanticweb (SWSO), 2005.Availablein services.InIEEE IntelligentSystems,March/April2001. http://www.daml.org/services/swsl/report/. [37] S.Nakajiama.Veri(cid:12)cationofwebserviceswithmodel [16] H.Davulcu,M.Kifer,C.R.Ramakrishnan,andI.V. checking techniques.InProc. First Int. Symposium on Ramakrishnan.Logicbased modelingandanalysisof Cyber Worlds.IEEEComputerSocietyPress,2002. work(cid:13)ows.InProc. ACM Symp. on Principles of Database [38] S.NarayananandS.McIlraith.Simulation,veri(cid:12)cation and Systems,pages 25{33,1998. automatedcompositionofwebservices.InProc. Int.World [17] A.Deutsch,L.Sui,andV.Vianu.Speci(cid:12)cationand Wide WebConf. (WWW),2002. veri(cid:12)cation ofdata-drivenwebservices.InProc. ACM [39] J.A.Pinto.Temporal Reasoning inthe Situation Calculus. Symp. on Principles of Database Systems,2004. PhDthesis,UniversityofToronto,1994. [18] X.Fu,T.Bultan,andJ.Su.Conversation protocols: A [40] M.Paolucci,T.Kawamura,T.R.Payne, andK.Sycara. formalismforspeci(cid:12)cationandveri(cid:12)cationofreactive ImportingthesemanticwebinUDDI.InProc. Workshop electronicservices.InProc. Int. Conf. on Implementation on WebServices, E-businessand Semantic Web(at and Application of Automata (CIAA),2003. CAISE conference),2002. [19] X.Fu,T.Bultan,andJ.Su.AnalysisofinteractingBPEL [41] R.Reiter.Knowledge inAction: Logical Foundations for webservices.InProc. Int.World Wide WebConf. Specifying and Implementing Dynamical Systems.MIT (WWW),May2004. Press,Cambridge,MA,2001. [20] X.Fu,T.Bultan,andJ.Su.Modelchecking XML [42] S.RussellandP.Norvig.Arti(cid:12)cialIntelligence: AModern manipulating software.InProc. Int. Symposium on Approach. PrenticeHall,1995. Software Testingand Analysis (ISSTA),July2004. [43] PSLstandardsgroup.PSLhomepage. [21] H.Foster,S.Uchitel,J.Magee,andJ.Kramer. http://ats.nist.gov/psl/. Model-basedveri(cid:12)cation ofwebservicecompositions.In [44] M.Singh.Semanticalconsiderationsonwork(cid:13)ows: An Proc. the 18th IEEE Int.Conf. on Automated Software algebraforintertaskdependencies. InProc. Workshop on Engineering Conference (ASE 2003),2003. Database Programming Languages (DBPL),1995. [22] C.E.Gerede,R.Hull,OscarH.Ibarra,andJ.Su. [45] R.B.ScherlandH.J.Levesque.Knowledge,action,and Automated compositionofe-services: lookahead.InProc. theframeproblem.Arti(cid:12)cial Intelligence,144:1{39,2003. Intl. Conf. on Services-OrientedComputing,2004. [46] M.Spielmann.Veri(cid:12)cationofrelationaltransducersfor [23] M.Gru(cid:127)ningerandC.Menzel.Processspeci(cid:12)cation electroniccommerce.Journal of Computer and System language: Principlesandapplications.AI Magazine, Sciences,66(1):40{65, 2003. 24:63{74,2003. [47] W.M.P.vanderAalst.Ontheautomaticgenerationof [24] M.Gru(cid:127)ninger.ApplicationsofPSLtosemanticweb work(cid:13)owprocessesbased onproductstructures.Computer services.InProceedings ofSWDB’03, The(cid:12)rst in Industry,39(2):97{111, 1999. International Workshop on Semantic Weband Databases, [48] WebServicesChoreographyDescriptionLanguageVersion 2003. 1.0(W3CWorkingDraft). [25] H.Haas.Architectureandfutureofwebservices: from http://www.w3.org/TR/2004/WD-ws-cdl-10-20041217/, SOAPtosemanticwebservices. December 2004. http://www.w3.org/2004/Talks/0520-hh-ws/, May2004. [49] WebServicesConversationLanguage(WSCL)1.0. [26] R.Hull,M.Benedikt,V.Christophides,andJ.Su. http://www.w3.org/TR/2002/NOTE-wscl10-20020314/, E-services: Alookbehindthecurtain.InProc. ACM March2002. Symp. on Principles of Database Systems,2003. [50] WebServicesDescriptionLanguage(WSDL) 1.1. [27] J.E.Hanson,P.Nandi,andS.Kumaran.Conversation http://www.w3.org/TR/wsdl, March2001. supportforbusinessprocessintegration.InProc. 6th Int. [51] WebServicesDescriptionLanguage(WSDL) Version2.0 Enterprise DistributedObjectComputing (EDOC),Ecole Part2: Prede(cid:12)nedExtensions(W3CWorkingDraft).http: Polytechnic,Switzerland,2002. //www.w3.org/TR/2004/WD-wsdl20-extensions-20040803/, [28] J.E.Hanson,P.Nandi,andD.W.Levine. August2004. Conversation-enabled webservicesforagentsand e-business.InProc. International Conference on Internet Computing (IC),pages791{796.CSREAPress,2002. [29] C.A.R.Hoare.Communicatingsequentialprocesses. Communications of theACM,21(8):666{677, 1978. [30] G.J.Holzmann.The SPIN Model Checker: Primer and Reference Manual.Addison-Wesley,Boston,Massachusetts, 2003. [31] D.KozenandJ.Tiuryn.Logicsofprograms.InJanvan Leeuwen,editor,Handbook of Theoretical Computer Science |Formal Models and Semantics,pages 789{840. Elsiever,1990. [32] M.KoshkinaandF.vanBreugel.Vericationofbusiness processesforwebservices.TechnicalReportCS-2003-11, Department ofComputerScience,YorkUniversity,2003. [33] A.Martens.Analysisandre-engineeringofwebservices.In Proc. 6th Int. Conf. on Enterprise Information Systems, 2004. [34] R.Milner.Communicating and MobileSystems: The (cid:25)-calculus.CambridgeUniversityPress,1999. [35] S.McIlraithandT.Son.AdaptingGologforcomposition ofsemanticwebservices.InProc. of the Eighth International Conference on Knowledge Representation

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.