- From: Jim Webber <Jim.Webber@newcastle.ac.uk>
- Date: Thu, 15 Jul 2004 02:18:19 +0100
- To: <www-ws-desc@w3.org>
Hello Prasad: > Operations are imaginary? Why even have an interface then? > Operations help describe the specific function offered by an > interface and group requests and responses per the MEPs. Why > does it violate encapsulation? How is this different in > concept to method in a class (e.g. java)? That is well > accepted encapsulation. Perhaps my wording was wrong, I'll use Gudge's version: operations are at the *WSDL level* and the existence of such at that level is not indicative of something with the same name that gets invoked at a higher level. You also ask how is this different from encapsulating fields in Java? It doesn't unless you let the information on the back-end class that processes these message exchanges "leak" into the WSDL contract. That's my worry (and it may be a best practice worry more than anything) that you don't let the details of your implementation pollute your WSDL contract. > Yes, you can also do everything in assembly language(or > binary for that matter) then why have anything else at a > higher abstraction. You need to put the messages in context > so that you are not required to design your messages in unique way. > This is simply making the life hard for everyone. Business forms and messages are designed in a way to make them unique anyway. I tend to put things like date, customer reference, national insurance number, etc in forms for this reason. It would be quite unusual to mark the message with an operation name to achieve the same thing in the real world, would it not? > If this really the way you design and maintain things, you > are right it does not matter if you had operations or not. I design Web Services to be loosely coupled and not expose any of their internal details to any consumers. I enable loose coupling through sensibly designed message exchanges and advertise and enforce those contracts through WSDL. Given that neither service nor consumer knows anything about the other apart from the message exchanges in which they will participate they are free to evolve their implementations without breaking the other. Had I chosen to advertise, for example, the name of the dispatcher for my service then that is one aspect that I am no longer free to evolve. This is the thin end of the wedge. > Glad I don't buy software from you :) Oh well, good job I don't sell any then :-) Jim -- http://jim.webber.name
Received on Wednesday, 14 July 2004 21:16:46 UTC