- From: David Booth <dbooth@w3.org>
- Date: Mon, 09 Aug 2004 17:27:49 -0400
- To: "Martin Gudgin" <mgudgin@microsoft.com>, <www-ws-desc@w3.org>
- Cc: "Amelia A Lewis" <alewis@tibco.com>, "Sanjiva Weerawarana" <sanjiva@watson.ibm.com>, "Jeffrey Schlimmer" <jeffsch@windows.microsoft.com>, Hugo Haas <hugo@w3.org>
I think I've now figured out the root of the WG's contention disagreement about this. Although I don't agree with all the specific assertions that Gudge makes below, I now think he and Amy are correct in concluding that the operation name mapping requirement that we adopted does not make sense as a MUST requirement. I think we should change it from a MUST to a SHOULD, in addition to providing further guidance on its use. I think the root of the problem is that the proposal that we adopted was ambiguous. In particular, it did not make clear whether the operation name mapping requirement is ALWAYS applicable, or whether it is ONLY applicable if the service requires the message sender to support a particular dispatch mechanism. The difference is crucial. If the operation name mapping requirement is ALWAYS applicable, then it is certainly testable. However, there are cases when the operation name is irrelevant to the service (for example, when some other mechanism is used to indicate what action should happen). In those cases, the requirement is pointless. On the other hand, if the operation name requirement is ONLY applicable when the message sender needs to do something in particular to enable the recipient to determine the operation name, (i.e., when the message sender is required to SUPPORT a particular mechanism that the message receiver uses), then the requirement is untestable, because it is impossible distinguish between a WSD that forgot to mention the operation name mechanism and one that does not require one. More comments in line below. At 08:07 AM 7/29/2004 -0700, Martin Gudgin wrote: >The WSDL 2.0 Part 1 Last Call Working Draft[1] (will) REQUIRE that if >operations within an interface do not reference unique global element >declarations then a WSDL Feature component MUST be used to indicate how >operations are distinguished 'on-the-wire'. IBM Corp., Microsoft Corp. >and TIBCO Software, Inc. object to this design for several reasons; > >1. It reduces the expressive power of the language. Can you elaborate? I don't see how this can be true. The requirement is solely to document *how* the dispatch must be enabled. It does not *restrict* the way the dispatch can be done. >2. It forces services to disclose how they distinguish between >operations which leads to tighter coupling between the service and its >consumers than is necessary for interop. I don't think anyone intended this to force the service to disclose internal details that the consumer does NOT need. I'm pretty sure the intent is only to require this disclosure when the consumer DOES need to know about it -- i.e., when it is required for interop, i.e., as loosely coupled as possible for interop. >3. For WSDL authors that want to distinguish between operations >'on-the-wire' then using unique global element declarations for each >message is sufficient. They could, but that misses the point of the interop issue illustrated by Scenario X[3], which describes a situation in which a toolkit generates a WSD. Thus far, the WG has not wanted to require unique GEDs. >4. The mechanism can be trivially circumvented, by defining a >'null' feature that claims to satisfy the requirement but in fact >provides no details on how operations are distinguished. Indeed, someone >has proposed this[2] as a way of 'testing' this particular part of the >specification. Yes. However, just because it can be circumvented does not render it entirely useless. But it *does* suggest that WSD authors should be given more guidance on its use. And it *does* suggest that we should change it from a MUST to a SHOULD. >5. This restriction makes WSDL 2.0 unable to describe a class of >message exchanges allowed by WS-Addressing. Again, I don't see how this can be true. Can you give an example of a message exchange that would be prohibited by the operation name mapping requirement? Additional References 3. Scenario X: http://lists.w3.org/Archives/Public/www-ws-desc/2004Jun/0300.html 4. http://lists.w3.org/Archives/Public/www-ws-desc/2004Jul/0355.html >Please note that IBM Corp., Microsoft Corp. and TIBCO Software, Inc. do >NOT object to WSDL authors being able to write WSDL in such a way that >distinguishing operations is 'obvious', for example by using unique >global element declarations. The objection is to the specification >requiring that WSDL be written in such a way. > >Regards > >Martin Gudgin, Microsoft Corp. >Amelia A. Lewis, Tibco Software, Inc. >Sanjiva Weerawarana, IBM Corp. > >[1] http://www.w3.org/2002/ws/desc/wsdl20 >[2] http://lists.w3.org/Archives/Public/www-ws-desc/2004Jul/0336.html -- David Booth W3C Fellow / Hewlett-Packard Telephone: +1.617.253.1273
Received on Monday, 9 August 2004 21:27:55 UTC