RE: Small language clarification in portType extension

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