RE: Optional Extensions

I think the answer should be "it depends". (is that a MAY?)
    backward compatible is defined at the syntactic/mechanical level 
correct? It really only means that the infrastructure won't fall over -- 
the so-called brittleness. Whether or not it is safe to ignore depends upon 
the nature of what's being ignored. (I'd be more than happy for you to 
ignore an "already paid" field that I add.)
   I think it requires to much "intelligence" on the part of programs to 
make a blanket statement. One ignores "unknown" extensions at their peril. 
Some are harmless, others are not.
   jeff

At 12:47 PM 1/26/2004, David Orchard wrote:

>Philippe, you are not understanding the relationship between ignoring
>content and extensibility/versioning.  If somebody makes a backwards
>compatible change to their wsdl by putting in an optional extension, they
>want to make sure that folks that don't know about their extension will not
>fall over and die.  By underspecifying the behaviour of optional extensions
>in wsdl, they do not have an assurance that their change is backwards
>compatible.  By requiring that unknown extensions are ignored, there are
>assurances of compatible evolution.  This model worked very well for HTML
>and HTTP headers, and is embodied in the soap:mustUnderstand attribute.
>There is extensive precedence for this.
>
>Cheers,
>Dave
> > -----Original Message-----
> > From: Philippe Le Hegaret [mailto:plh@w3.org]
> > Sent: Monday, January 26, 2004 12:37 PM
> > To: David Orchard
> > Cc: Web Services Description
> > Subject: Re: Optional Extensions
> >
> >
> > On Mon, 2004-01-26 at 14:51, David Orchard wrote:
> > > If there is a WSDL extension which is not mandatory and not
> > recognized by
> > > the WSDL processor what is to be done with it?  Our
> > suggestion is that it
> > > should be ignored, and that this should be specified.  Same
> > thing applies to
> > > extension attributes.
> >
> > Why should it be ignored? I would prefer a MAY rather a SHOULD. If you
> > really want it to be ignored, don't put it in the place. If it's there
> > and optional, it's up to the WSDL engine to use it.
> >
> > Also, one can define a required element (or a required feature) and
> > include in the definition of it than all elements or attributes in a
> > certain namespace MUST be processed (in fact, I recently worked on a
> > WSDL extension using a feature to require the process of an
> > attribute in
> > a foreign attribute).
> >
> > Philippe
> >
> >

Jeff Mischkinsky                      jeff.mischkinsky@oracle.com
Consulting Member Technical Staff     +1(650)506-1975
Director, Web Services Standards      500 Oracle Parkway M/S 4OP9
Oracle Corporation                    Redwood Shores, CA 94065

Received on Monday, 26 January 2004 16:24:45 UTC