Web services can be broadly classified as applications that run on networks and enable communication between inter-connected systems. Web services are based primarily on HTTP (Hypertext Transfer Protocol) and XML (eXtensible Markup Language), and are used extensively on networks, especially on the Internet for a wider range of applications and functions. The extensive list of web services can be widely categorized by their style of use. Most of the preliminary web services were based on RPC (Remote Procedure Calls) that use WSDL (Web Services Description Language) operations – an XML based language.
Most of the software giants have developed their own web applications with RPC; more notably, Java’s Remote Method Invocation (RMI) used in UNIX systems and Microsoft’s . Net Remoting that base on Windows platform. For this reason, RPC web services are used in a broader spectrum in many industries including e-Commerce (ex. online banking, purchasing etc. ), tourism (ex. information and booking services) and enterprise governance (ex. web-based ERP).
In addition to RPC, web services are also developed and used as message-oriented services coupled with Service Oriented Architecture (SOA). With the ability of reusing the existing assets like the IT infrastructure and its built-in rigidity, SOA based web services have become more popular in modern web-based applications; for instance, Google has opted to use SOA extensively in their web services development like Google Docs. Also many Enterprise Applications Software (EAS), for example SAP, are based on SOA.
As opposed to the aforementioned, Representational State Transfer, or commonly known as REST web services have caught up in a trend owing to its ‘human readability’ and ease of development. REST functions in the context of HTTP consisting of clients and servers. While some organizations like the online business giant – Amazon have opted to have their web services including online sales running in SOA and REST, Yahoo! And eBay run their enterprise web services mainly on REST, due to their lightweight usage.
Despite the base of use, XML, being the pick of more traditional systems that base Simple Object Access Protocol (SOAP) standard, does in fact hold a key to the future web applications. Though with its recent, yet major accomplishments including the ability to manage large quantities of information and exchange of information across language barriers, XML specifications have become more complex. Despite this being cited as a drawback, the fact that more researches and enhancements are being done to make it more usable and simple, should hold as a promise for XML in the future in inter-application communication.
The biggest contributor for this fact will be XML’s role as a general purpose markup language allowing structural definition of data independent of the software systems and formats used. This advantage in fact spans across business frontiers as it is much simpler and easier to design and implement systems that communicate and understand the ‘business language’ in different communities, businesses and organizations.
Alonso G. , Casati F. , Kuno H. , Machiraju V. (2004). Web Services and their Approach to Distributed Computing. Web services: concepts, architectures and applications. 124-128.