The Web Services paradigm is a simple model for building web-wide distributed systems using XML and HTTP. However, as the use of this technology expands to include Grid and Enterprise computing, the requirement for higher qualities of service becomes important. To address these requirements, we propose a pluggable framework for using Web services components that allows both static and dynamic invocation of services over multiple protocols. These protocols can include existing reliable technologies such as CORBA/IIOP or new emerging protocols such as BEEP. By moving Web services beyond SOAP, the approach embodied by the Web Services Invocation Framework enables a Web service to be exposed and used over any of a number of protocols whose choice can be made on the basis of the available infrastructure and the required quality of service.
A complementary piece of pluggable architecture, the Web Services Gateway, is presented to handle interception of messages coming in to a service. This allows services to be offered over protocols that they were not originally designed for, as well as performing mediation functions as routing, mapping to different protocols, and filtering. Making the gateway itself uses pluggable providers for multiple bindings enables a Web service to be invoked over multiple protocols, while still being able to benefit from the mediation services provided. Providing a Web service with both of the above frameworks enables it to both invoke and be invoked by other artefacts distributed over the network while taking full advantage of the heterogeneity that makes Web services unique. The evolution of this concept is a separation between application logic, which deals in "services" as complete units of available function, and the infrastructure, which may select the best available service over the most appropriate protocol.