Skip to main content
Log in

SEPL—a domain-specific language and execution environment for protocols of stateful Web services

  • Published:
Distributed and Parallel Databases Aims and scope Submit manuscript

Abstract

In order to interact with stateful Web services, clients need to obtain information about the intra-service protocol, which contains valid operation sequences and the expected input-output transformation across invocations. While the community has widely agreed on WSDL as the standard for functional service description (the “static” service interface), there is still an evident lack of languages to describe the dynamic, behavioral interface of services. In this paper we introduce SEPL (SErvice Protocol Language), a domain-specific language (DSL) for defining executable intra-service protocols. Notable features of the DSL include support for WS-Addressing and simple creation of new Web service instances, synchronous and asynchronous service invocation facilities and easy access to WSRF-style service resource properties. Service providers use SEPL to define the procedure that clients must adhere to in order to achieve a certain higher-level functionality. Clients use the combined information of the SEPL document and the WSDL definitions to execute an intra-service protocol. We provide a graphical representation of SEPL the form of UML Activity Diagrams, and tools to generate executable code from these models. We further present a solution to host and execute SEPL protocols in a server application based on Web services technology.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Atkinson, C., Kuhne, T.: Model-driven development: a metamodeling foundation. IEEE Softw. 20(5), 36–41 (2003)

    Article  Google Scholar 

  2. Ballinger, K., et al.: Web Services Metadata Exchange (WS-MetadataExchange). http://specs.xmlsoap.org/ws/2004/09/mex/WS-MetadataExchange.pdf (2006)

  3. Benatallah, B., Casati, F., Toumani, F.: Representing, analysing and managing web service protocols. Data Knowl. Eng. 58, 327–357 (2006)

    Article  Google Scholar 

  4. Benslimane, D., Dustdar, S., Sheth, A.: Services mashups: the new generation of web applications. IEEE Internet Comput. 12(5), 13–15 (2008)

    Article  Google Scholar 

  5. Beran, P.P., Habel, G., Schikuta, E.: SODA a distributed data management framework for the Internet of services. In: GCC ’08: Proceedings of the 2008 Seventh International Conference on Grid and Cooperative Computing, pp. 292–300. IEEE Computer Society, Washington (2008)

    Chapter  Google Scholar 

  6. Butek, R.: Which style of WSDL should I use? http://www.ibm.com/developerworks/webservices/library/ws-whichwsdl/ (2003). Visited: 2010-02-03

  7. D’Agostino, R.B., Stephens, M.A. (eds.): Goodness-of-fit Techniques. Marcel Dekker, New York (1986)

    MATH  Google Scholar 

  8. Dörnemann, T., Friese, T., Herdt, S., Juhnke, E., Freisleben, B.: Grid workflow modelling using grid-specific BPEL extensions. In: Proceedings of German e-Science Conference 2007, pp. 1–9 (2007)

    Google Scholar 

  9. Dustdar, S., Schreiner, W.: A survey on web services composition. Int. J. Web Grid Serv. 1(1), 1–30 (2005)

    Article  Google Scholar 

  10. Eclipse Foundation: Model Development Tools (MDT) (2011). http://www.eclipse.org/uml2

  11. Erl, T.: Service-Oriented Architecture. Concepts, Technology, and Design. Prentice Hall, New York (2005)

    Google Scholar 

  12. Ezenwoye, O., Sadjadi, S.M., Cary, A., Robinson, M.: Grid service composition in BPEL for scientific applications. In: OTM Conferences (2), pp. 1304–1312 (2007)

    Google Scholar 

  13. Florescu, D., Grünhagen, A., Kossmann, D.: XL: an XML programming language for Web service specification and composition. Comput. Netw. 42(5), 641–660 (2003)

    Article  MATH  Google Scholar 

  14. Foster, I., Kesselman, C.: The Grid 2: Blueprint for a New Computing Infrastructure. Morgan Kaufmann, San Francisco (2003)

    Google Scholar 

  15. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1995)

    Google Scholar 

  16. Gao, Z., Luo, S., Lin, Y., Ding, D.: A grid-based integration model of heterogeneous database systems. In: Proceedings of the International Conference on Information Technology and Computer Science, pp. 126–129. IEEE Computer Society, Washington (2009)

    Chapter  Google Scholar 

  17. Hamadi, R., Benatallah, B.: A Petri net-based model for web service composition. In: ADC ’03: Proceedings of the 14th Australasian database conference, pp. 191–200. Australian Computer Society, Darlinghurst (2003)

    Google Scholar 

  18. Leitner, P., Rosenberg, F., Dustdar, S.: DAIOS—efficient dynamic Web service invocation. IEEE Internet Comput. 13(3), 72–80 (2009)

    Article  Google Scholar 

  19. Lowry, R.: t-Test for the significance of the difference between the means of two independent samples. http://faculty.vassar.edu/lowry/ch11pt1.html. Visited: 2010-03-05

  20. Maximilien, E., Ranabahu, A., Gomadam, K.: An online platform for Web APIs and service mashups. IEEE Internet Comput. 12(5), 32–43 (2008)

    Article  Google Scholar 

  21. Menasce, D.: Qos issues in web services. IEEE Internet Comput. 6(6), 72–75 (2002)

    Article  Google Scholar 

  22. Newcomer, E., Lomow, G.: Understanding SOA with Web Services. Addison-Wesley Professional, Reading (2004)

    Google Scholar 

  23. Object Management Group: OMG Unified Modeling Language (OMG UML), Superstructure, V2.1.2. http://www.omg.org/spec/UML/2.1.2/Superstructure/PDF/

  24. Object Management Group: MOF 2.0/XMI Mapping, Version 2.1.1. http://www.omg.org/cgi-bin/apps/doc?formal/07-12-01.pdf (2007)

  25. Organization for the Advancement of Structured Information Standards (OASIS): Web Services Base Notification 1.3 (WS-BaseNotification). http://docs.oasis-open.org/wsn/wsn-ws_base_notification-1.3-spec-os.pdf (2006)

  26. Organization for the Advancement of Structured Information Standards (OASIS): Web Services Business Process Execution Language Version 2.0. http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html (2006)

  27. Organization for the Advancement of Structured Information Standards (OASIS): Web Services Resource Framework. http://www.oasis-open.org/committees/wsrf (2006)

  28. Organization for the Advancement of Structured Information Standards (OASIS): Web Services Resource Properties 1.2 (WS-ResourceProperties). http://docs.oasis-open.org/wsrf/wsrf-ws_resource_properties-1.2-spec-os.pdf (2006)

  29. Papazoglou, M.P., Traverso, P., Dustdar, S., Leymann, F.: Service-oriented computing: state of the art and research challenges. Computer 40(11), 38–45 (2007)

    Article  Google Scholar 

  30. Parastatidis, S., Woodman, S., Webber, J., Kuo, D., Greenfield, P.: Asynchronous messaging between Web services using SSDL. IEEE Internet Comput. 10(1), 26–39 (2006)

    Article  Google Scholar 

  31. Peltz, C.: Web services orchestration and choreography. Computer 36, 46–52 (2003)

    Article  Google Scholar 

  32. Puhlmann, F., Weske, M.: Using the pi-calculus for formalizing workflow patterns. In: Business Process Management, pp. 153–168. (2005)

    Chapter  Google Scholar 

  33. Ryu, S.H., Saint-Paul, R., Benatallah, B., Casati, F.: A framework for managing the evolution of business protocols in Web services. In: Proceedings of the Fourth Asia-Pacific Conference on Conceptual Modelling (APCCM’07), pp. 49–59 (2007)

    Google Scholar 

  34. Strembeck, M., Zdun, U.: An approach for the systematic development of domain-specific languages. Softw. Pract. Exp. 39(15), 1253–1292 (2009)

    Article  Google Scholar 

  35. Sun Microsystems Inc.: JSR-000154 JavaTM Servlet 2.4 Specification. http://jcp.org/aboutJava/communityprocess/final/jsr154/

  36. (W3C), W.W.W.C.: Web Services Conversation Language (WSCL) 1.0. http://www.w3.org/TR/wscl10/ (2002)

  37. Zhang, J., Chang, C.K., Chung, J.Y., Kim, S.W.: WS-Net: a Petri-net based specification model for Web services. In: Proceedings of the IEEE International Conference on Web Services (ICWS) (2004)

    Google Scholar 

  38. Zhu, F., Turner, M., Kotsiopoulos, I., Bennett, K., Russell, M., Budgen, D., Brereton, P., Keane, J., Layzell, P., Rigby, M., Xu, J.: Dynamic data integration using web services. In: ICWS ’04: Proceedings of the IEEE International Conference on Web Services, p. 262. IEEE Computer Society, Washington (2004)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Waldemar Hummer.

Additional information

Communicated by Amit Sheth.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Hummer, W., Leitner, P. & Dustdar, S. SEPL—a domain-specific language and execution environment for protocols of stateful Web services. Distrib Parallel Databases 29, 277–307 (2011). https://doi.org/10.1007/s10619-011-7079-6

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10619-011-7079-6

Keywords

Navigation