@incollection{eprints416, author = {Alessandro Lapadula and Rosario Pugliese and Francesco Tiezzi}, publisher = {Springer}, note = {{\copyright}Springer-Verlag Berlin Heidelberg 2007. The original publication is available at www.springerlink.com}, booktitle = {Programming Languages and Systems (ESOP 2007)}, editor = {Rocco De Nicola}, pages = {33--47}, volume = {4421}, year = {2007}, title = {A Calculus for Orchestration of Web Services}, series = {Lecture Notes in Computer Science}, url = {http://eprints.imtlucca.it/416/}, abstract = {We introduce COWS (Calculus for Orchestration of Web Services), a new foundational language for SOC whose design has been influenced by WS-BPEL, the de facto standard language for orchestration of web services. COWS combines in an original way a number of ingredients borrowed from well-known process calculi, e.g. asynchronous communication, polyadic synchronization, pattern matching, protection, delimited receiving and killing activities, while resulting different from any of them. Several examples illustrates COWS peculiarities and show its expressiveness both for modelling imperative and orchestration constructs, e.g. web services, flow graphs, fault and compensation handlers, and for encoding other process and orchestration languages. } }