Abstract
We present XPi, a core calculus for XML messaging. XPi features asynchronous communications, pattern matching, name and code mobility, integration of static and dynamic typing. Flexibility and expressiveness of this calculus are illustrated by a few examples, some concerning description and discovery of web services. In XPi, a type system disciplines XML message handling at the level of channels, patterns, and processes. A run-time safety theorem ensures that in well-typed systems no service will ever receive documents it cannot understand, and that the offered services, even if re-defined, will be consistent with the declared channel capacities.
This work has been partially supported by EU within the IST FET – Global Computing initiative, projects MIKADO and PROFUNDIS.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Abadi, M., Gordon, A.D.: A Calculus for Cryptographic Protocols: The Spi Calculus. Information and Computation 148(1), 1–70 (1999)
Andrews, T., Curbera, F., Thatte, S.: Business Process Execution Language for Web Wervices, v1.1 (2003), http://ifr.sap.com/bpel4ws
Benzaken, V., Castagna, G., Frisch, A.: Cduce: An XML-Centric General- Purpose Language. In: Proceedings of the ACM International Conference on Functional Programming (2003)
Bierman, G.M., Sewell, P.: Iota: A concurrent XML scripting language with applications to Home Area Networking. Technical Report 577, University of Cambridge Computer Laboratory (2003)
Biztalk Server Home, http://www.microsoft.com/biztalk/
Bjorg, S., Meredith, L.G.: Contracts and Types. Communication of the ACM 46(10) (October 2003)
Boreale, M.: On the Expressiveness of Internal Mobility in Name-Passing Calculi. Theoretical Computer Science 195 (1998)
Brown, A., Laneve, C., Meredith, L.G.: πDuce: A process calculus with native XML datatypes (manuscript) (2004)
Cardelli, L., Ghelli, G.: TQL: A Query Language Semistruictured Data Based on the Ambient Logic. Mathematical Structures in Computer Science 14, 285–327 (2004)
Cardelli, L., Gordon, A.D.: Mobile ambients. Theoretical Computer Science 240(1) (2000)
Castagna, G., De Nicola, R., Varacca, D.: Semantic subtyping for the π-calculus. To appaear in Proc. of LICS’05 (2005)
Christensen, E., Curbera, F., Meredith, G., Weerawarana, S.: Web Services Description Language 1.1. W3C Note (2001), http://www.w3.org/TR/2001/NOTE-wsdl-20010315
Fallside, D.C.: XML Schema Part 0: Primer. W3C Recommendation (2001), http://www.w3.org/TR/2001/REC-xmlschema-0-20010502
Gardner, P., Maffeis, S.: Modelling dynamic web data. In: Lausen, G., Suciu, D. (eds.) DBPL 2003. LNCS, vol. 2921, pp. 130–146. Springer, Heidelberg (2004)
Hosoya, H., Pierce, B.: Regular Expression Pattern Matching for XML. Journal of Functional Programming (2002)
Hosoya, H., Pierce, B.: Xduce: A Statically Typed XML Processing Language. In: Proceedings of ACM Transaction on Internet Technology (2003)
Merro, M.: Locality and polyadicity in asynchronous name-passing calculi. In: Tiuryn, J. (ed.) FOSSACS 2000. LNCS, vol. 1784, pp. 238–251. Springer, Heidelberg (2000)
Milner, R.: The Polyadic π-Calculus: a Tutorial. Technical Report ECS-LFCS-91- 180, LFCS, Dept. of Computer Science, Edinburgh University (1991)
Milner, R., Parrow, J., Walker, D.: A calculus of Mobile Processes, part I and II. Information and Computation 100, 1–41, 42–78 (1992)
Pierce, B., Sangiorgi, D.: Typing and Subtyping for Mobile Process. Mathematical Structures in Computer Science 6(5) (1996)
Sangiorgi, D.: The name discipline of uniform receptiveness. Theoretical Computer Science 221 (1999)
Sangiorgi, D., Milner, R.: Barbed bisimulation. In: Cleaveland, W.R. (ed.) CONCUR 1992. LNCS, vol. 630. Springer, Heidelberg (1992)
Web services activity web site (2002), http://www.w3.org/2002/ws
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 IFIP International Federation for Information Processing
About this paper
Cite this paper
Acciai, L., Boreale, M. (2005). XPi: A Typed Process Calculus for XML Messaging. In: Steffen, M., Zavattaro, G. (eds) Formal Methods for Open Object-Based Distributed Systems. FMOODS 2005. Lecture Notes in Computer Science, vol 3535. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11494881_4
Download citation
DOI: https://doi.org/10.1007/11494881_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-26181-0
Online ISBN: 978-3-540-31556-8
eBook Packages: Computer ScienceComputer Science (R0)