- From: Steve Tuecke <tuecke@mcs.anl.gov>
- Date: Fri, 21 Mar 2003 14:06:48 -0600
- To: "Martin Gudgin" <mgudgin@microsoft.com>
- Cc: "Steve Tuecke" <tuecke@mcs.anl.gov>, <www-ws-desc@w3.org>
Hmmm... I must have grabbed that text for the OGSI spec from the cvs version prior to it turning into the 2003-03-03 published working draft, and missed a few key additional words. My mistake. Yes, the phrase "unless those operations are the same operation" takes care of the diamond inheritance case. Sorry about the confusion. -Steve At 01:03 PM 3/21/2003, Martin Gudgin wrote: >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 15:07:25 UTC