Proposal for Issue
http://www.w3.org/Bugs/Public/show_bug.cgi?id=6428
depends on
http://www.w3.org/Bugs/Public/show_bug.cgi?id=6429

WS-Eventing Section 1.2 describes an abstraction called Delivery Mode to indicate both event delivery mode (push or pull) and event delivery format (wrapped or unwrapped). Using one property for two independent requirements is not flexible. It prevents combining existing modes or formats with new ones. We propose to separate mode and format by adding a new abstraction Format:

1. We propose to change the 2nd paragraph of Section 1.2 to:
In order to support this broad variety of event delivery requirements, this specification introduces an abstraction called a Delivery Mode and an abstraction called Delivery Format. These concepts are used as extension points, so that event sources and event consumers may freely create new delivery mechanisms that are tailored to their specific requirements. This specification provides a minimal amount of support for delivery mode and format negotiation by allowing an event source to provide a list of supported delivery modes and formats in response to a subscription request specifying a delivery mode or format it does not support.
And the 4th paragraph of Section 1.2 to:
This standard specifies two delivery formats: wrapped and unwrapped, in the Subscribe request. Use of wrapped format indicates that notification messages should be contained in a wrapper element. Use of unwrapped format indicates that notification messages are not wrapped. 
2. In section 3.1, change the Subscribe message template to:

<s:Envelope …> 
  <s:Header …>
    <wsa:Action>
      http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe
    </wsa:Action>
    …
  </s:Header>
  <s:Body …>
    <wse:Subscribe …>
      <wse:EndTo>endpoint-reference</wse:EndTo> ?
      <wse:Delivery Mode="xs:anyURI"? >xs:any</wse:Delivery>
	  <wse:Format Name=”xs:anyURI”>xs:any*</wse:Format>?
      <wse:Expires>[xs:dateTime | xs:duration]</wse:Expires> ?
      <wse:Filter Dialect="xs:anyURI"? > xs:any </wse:Filter> ?
      …
    </wse:Subscribe>
  </s:Body>
</s:Envelope> 

And add the following statements before <wse:Expires>:

/s:Envelope/s:Body/*/wse:Format 
The delivery format to be used for notification messages sent in relation to this subscription. Implied value is "http://schemas.xmlsoap.org/ws/2004/08/eventing/DeliveryFormats/Unwrap", which indicates that unwraped delivery should be used. See Section 1.2 Delivery Modes for details.
If the event source does not support the requested delivery format, the request MUST fail, and the event source MAY generate a wse:DeliveryFormatRequestedUnavailable fault indicating that the requested delivery format is not supported.
/s:Envelope/s:Body/*/wse:Format/@Name="http://schemas.xmlsoap.org/ws/2004/08/eventing/DeliveryFormats/Unwrap" 
Indicate the unwrapped event delivery format.
/s:Envelope/s:Body/*/wse:Format/@Name="http://schemas.xmlsoap.org/ws/2004/08/eventing/DeliveryFormats/Wrap" 
Indicate the wrapped event delivery format.

3. Add a new section as follows.
5.9 DeliveryFormatRequestedUnavailable
This fault is sent when a Subscribe request specifies a delivery mode that is not supported by the event source. Optionally, this fault may contain a list of supported delivery mode URIs in the Detail property.
[Code]	s12:Sender	
[Subcode]	wse:DeliveryFormatRequestedUnavailable	
[Reason]	The requested delivery format is not supported.	
[Detail]	<wse:SupportedDeliveryFormat> +
Optional; one per delivery format supported by the receiver 	

4. Modify XSD definitions (omitted for brevity)