- From: Joyce Yang <joyce.yang@oracle.com>
- Date: Thu, 13 Jun 2002 10:24:34 -0700
- To: www-ws-desc@w3.org
Regards, Joyce ------- Starting with a WSDL that allows overloading means that there will be a mangling problem when mapping to languages that do not allow overloading. Even if one accepts that argument that "modern" languages, and the only ones that we need to be concerned about, support overloading, there still may be a problem. The mapping will only be "natural" if the type systems between WSDL and the target languages are similar "enough" that the languages will allow the reuse of a method name for all possible overloadings in both directions. For example let's say that in an overloaded WSDL there is a difference between unsigned and signed integers, so that i can have 2 foo(), one with an unsigned integer, the other with a signed integer. What will happen in a language which doesn't allow a foo(unsigned integer) and foo(integer)? Another issue that arises is the efficiency/possibility of doing dispatch on the server side. If WSDL allows overloading, then the dispatch mechanism will have to determine which "real" method to call based upon the actual parameter types in the request. (Dispatch based upon name won't be good enough.) Resolving the ambiguity may be quite complex and time consuming. Therefore, for simplicity and loose coupling between the endpoints, WSDL should not support operation overloading. The operation names within a portType should be unique.
Received on Thursday, 13 June 2002 13:24:42 UTC