- From: Martin Gudgin <mgudgin@microsoft.com>
- Date: Fri, 21 Mar 2003 11:03:00 -0800
- To: "Steve Tuecke" <tuecke@mcs.anl.gov>, <www-ws-desc@w3.org>
Steve, The note you mention actually reads as follows: Due to the above rules, if two interfaces that have the same value for their {target namespace} property also have one or more operations that have the same value for their {name} property then those two interfaces cannot both form part of the derivation chain of a derived interface unless those operations are the same operation. Therefore it is considered good practice to ensure, where necessary, that operation names within a namespace are unique, thus allowing such derivation to occur without error. The phrase "unless those operations are the same operation" seems to be missing from the paragraph you quoted. Which version of the spec are you looking at? That phrase harks back to the Equivalence statement in the text above the note. Does this help? Gudge > > -----Original Message----- > From: Steve Tuecke [mailto:tuecke@mcs.anl.gov] > Sent: 20 March 2003 17:54 > To: www-ws-desc@w3.org > > > Section 2.5.1 (The Port Type Operation Component) reads: > > "Note: > Due to the above rules, if two port types that have the same > value for their {target namespace} property also have one or > more operations that have the same value for their {name} > property then those two port types cannot both form part of > the derivation chain of a derived port type. > Therefore it is considered good practice to ensure that > operation names within a namespace are unique, thus allowing > such derivation to occur without error." > > I suggest adding the word, "... if two DIFFERENT port types > have the same value ...". A reviewer questioned whether the > current language meant that the diamond inheritance case is > illegal (B extends A, C extends A, D extends B and C). But, > of course, we specifically decided the diamond inheritance > case is legal, as reflected in the main normative text right > above this, which reads: > > "In cases where, due to a port type extending one or more > other port types, two or more port type operation components > have the same value for their {name} and {target namespace} > properties, then the component models of those port type > operation components MUST be equivalent (see 2.12 Equivalence > of components). If the port type operation components are > equivalent then they are considered to collapse into a > component. It is an error if two port type operation > components have the same value for their {name} and {target > namespace} properties but are not equivalent." > > I think the addition of the word "different" would make the > intent of this note more clear. > > -Steve > > >
Received on Friday, 21 March 2003 14:03:33 UTC