Search code examples
web-servicessoapwsdl

Why is it important to be WS-I Basic Profile compliant?


I see many people argue against WS-Transfer saying WS-Transfer WSDL it is not WS-I BP compliant. An example is here. After reading it a few times I am still not getting the point why it has to be compliant. Does non-WS-I BP compliancy mean that you won't for example be able to use it in JBossWS?


Solution

  • A Web service is a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format (specifically WSDL). Other systems interact with the Web service in a manner prescribed by its description using SOAP-messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards.

    http://www.w3.org/TR/2004/NOTE-ws-gloss-20040211/#webservice

    That was the theory. In practice though, because different people understood the specifications in different ways (combined with lots of heterogeneous platforms, tools, applications and programming languages) it ended up being a mess, resulting in differences between vendor implementations. Those differences were affecting the "interoperable interactions" so making different implementations talk to each other was a nightmare.

    Something had to be done to make different implementations truly interoperable. WS-I was a move in this direction: it provided a set of guidelines on how the different specifications should be used to create interoperable web services. A set of tools to test these guidelines against different implementations was also provided.

    Why is it important to be WS-I Basic Profile compliant?

    Basically, WS-I Basic Profile provides the guidance on how to use together specifications like SOAP, WSDL and UDDI to develop interoperable web services. It is important because otherwise you will limit your target audience. A web service is meant to be connected to other components and having each component be WS-I compliant will make the job easier no matter the platforms, tools, applications or programming languages.

    Using a non WS-I compliant web service in a private environment where you use the same technology stack for all components might not end up to be an issue, but when exposing a web service to the public, WS-I Basic Profile is important because it:

    will significantly simplify the task of implementing interoperable Web services solutions within and across enterprise boundaries.

    http://www.internetnews.com/dev-news/article.php/2247551