Re: Optional Extensions


We should follow the recommendation in section 6.1.1 in the WSDL 2.0 
core, for "mandatory" extensions. If wsdl:required is false, the WSDL 
processor MAY ignore them. I mean it could be a configurable option by 
the user of the processor, rather than blindly ignoring them always.


        6.1.1 Mandatory extensions

Extension elements can be marked as mandatory by annotating them with a 
wsdl:required attribute information item (see 6.1.2 required attribute 
information item <>) with a 
value of "true". Mandatory extensions are those that MUST be processed 
correctly by the WSDL processor. If a mandatory extension element is 
processed, the WSDL processor MUST either agree to fully abide by all 
the rules and semantics signaled by the extension element's qualified 
name, or immediate cease processing (fault). In particular, if the WSDL 
processor does not recognize the qualified name of the extension 
element, it MUST fault. If the WSDL processor recognizes the qualified 
name, and determines that the extension in question is incompatible with 
any other aspect of the document (including other required extensions), 
it MUST fault.

-------- Original Message --------
Subject: 	RE: Optional Extensions
Date: 	Mon, 26 Jan 2004 13:11:51 -0800
From: 	Philippe Le Hegaret <>
To: 	David Orchard <>
CC: 	'Web Services Description' <>

On Mon, 2004-01-26 at 15:47, 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.

Rereading your original, I now realize that you were talking about the
WSDL processors in the context of unknown optional extensions, and not
WSDL processors in the context of optional extensions... I would propose
that WSDL processors MUST ignored unknown optional extensions if any,
and MAY process known optional extensions.


-------- Original Message --------

Subject: 	Optional Extensions
Resent-Date: 	Mon, 26 Jan 2004 14:50:19 -0500 (EST)
Date: 	Mon, 26 Jan 2004 11:51:29 -0800
From: 	David Orchard <>
To: 	<>

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.


Received on Monday, 26 January 2004 16:50:48 UTC