Web services

A web service is a software system designed to support interoperable machine-to-machine interaction over a network.

— definition by: W3C (World Wide Web Consortium), Web Services Glossary

To interact directly the requestor and provider (the 2 machines) must agree on the data to transfer (request and response).

Chances are high that direct communication is not possible due to differences in the implementation of the Web Services and in the structure of the information to exchange.

To resolve, either the Requestor and / or the Provider software needs to be adopted or a Middleware added to translate the requests and answers.

The Middleware acts as translator between the Requestor and Provider.

Furthermore the Middleware could compile responses from more Providers, log and control the exchanges or buffer the transferred data.