W3C home > Mailing lists > Public > www-ws-desc@w3.org > June 2002

RE: Rationale to close the operation overloading issue

From: <Jochen.Ruetschlin@DaimlerChrysler.com>
Date: Mon, 24 Jun 2002 16:53:11 +0200
To: <ryman@ca.ibm.com>
Cc: <www-ws-desc@w3.org>
Message-ID: <0057440019602874000002L442*@MHS>

> When you create a Web service from a class that has an overloaded method,
> you need to map each method signature to a different child <element> of the
> <choice>.
> Conversely, if you are generating a stub from WSDL that contains an
> operation that has a <choice> message type, then you could generate
> overloaded methods, one for each child of the <choice>.

Ok, makes sense for me so far.

> If the XML Schema
> types of two or more children of the <choice> mapped to the same
> programming language type (e.g. XML Schema has more numeric types than
> programming languages typically have) then you would have to munge the
> operation name, perhaps by appending the child element name.

But IMO here exactly the same problem occurs as mentioned in the discussion 
started in [1]. -- Or the other way round (from the optimistic perspective :-): 
this could be a solution for the problem mentioned in [1] and arising if using 
overloading in WSDL.

The more I think about your suggestion (using the WSDL type system for 
overloading), Arthur, and considering my own thoughts about the semantics of an 
operation (several overloaded methods are implementing ONE single operation), 
the more I come to believe that  from this perspective it makes sense, to use 
only one operation element in the interface descripition, namely the WDSL 

So finally I would plead for extending/rewording the rationale to close the 
issue [2] in this way that WSDL does not explicitly allow overloading, because 
exhausting the possibilities of XML schema already offers such a mechanism. 
This also takes into account that from a semantically perspective one 
functionality (maybe implemented by several overloaded methods) only should be 
described by one operation. With this the operation name within a port type 
must be unique.

Furthermore a conclusion of this is that the foo operation example [1] seems 
not only to be overloading specific, but also XML schema specific if using the 
choice grouping element. And so IMO we should cut out this as a reason for not 
allowing operation overloading.
(Regardless of this cosmetic correction the necessity for mapping/dispatching 
between description and implementation is still extant; this time not on the 
operation level but solely on the type system level).



[1] http://lists.w3.org/Archives/Public/www-ws-desc/2002May/0197.html
[2] http://lists.w3.org/Archives/Public/www-ws-desc/2002Jun/0080.html

Jochen Rütschlin
DaimlerChrysler · Research and Technology
Data and Process Management (RIC/ED)
P.O. Box 2360 · D-89013 Ulm (Donau) · Germany
Visitor's address: Wilhelm-Runge-Straße 11
Phone:   +49.731.505-2830
Telefax: +49.731.505-4401
Internet E-Mail: jochen.ruetschlin@DaimlerChrysler.com
Received on Monday, 24 June 2002 10:53:49 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 23:06:24 UTC