Wu,

I'm trying to clear something up, and I was wondering if you could help me. Has the "concrete use case" you discuss below actually been implemented by anybody, or is it a hypothetical, concrete use case?

- gp

Chou, Wu (Wu) wrote:
+1
Asir: Many thanks for sharing your thoughts on this issue.  And I attach one of our use cases of Mode in WS-E Delivery below.
 
- Wu Chou
 
Wu Chou, IEEE Fellow, Ph.D. | Director |Avaya Labs Research | AVAYA | 233 Mt. Airy Road| Rm. 2D48 | Basking Ridge, NJ 07920 | Voice/Fax: 908-696-5198 / 908-696-5401 | wuchou@avaya.com
 
------Use Case of MODE in WS-E Delivery -----
 
Here is a  concrete use case where the  subscriber requests the event source to push the  event  notifications through a proxy, obtained either through an out-of-band channel (not specified in the Subscribe request, e.g. the enterprise registers a special event notification proxy with the service provider) or dynamically specified in the Subscribe request. Certainly this behavior cannot be conveyed by the wse:NotifyTo. This critical use case thus justifies the need for the Mode attribute  in WS-E Delivery.

 To indicate the use of an out-of-band proxy, the Subscribe request body looks like this:

<wse:Subscribe>

            <wse:Delivery Mode=”urn:push_thru_proxy” >

                        <wse:NotifyTo>…</wse:NotifyTo>

            </wse:Delivery>

</wse:Subscribe>

 To indicate the use of a dynamic proxy, the Subscribe request body looks like this:

 <wse:Subscribe>

            <wse:Delivery Mode=”urn:push_thru_proxy” >

                        <wse:Notifyto>…</wse:Notifyto>

                        <ext:Proxy>…</ext:Proxy>

            </wse:Delivery>

</wse:Subscribe>

"Mode=urn:push_thru_proxy" cannot be put into the Delivery extension. This is because if the source cannot support "push_thru_proxy", it must fault as defined by Mode in Delivery, and the subscriber expects a standard wse:DeliveryModeRequestedUnavailable fault. And there is no standard WS-E fault for items in the Delivery extension.

----------

 
From: Asir Vedamuthu <asirveda@microsoft.com>
Date: Sun, 29 Mar 2009 19:59:23 -0700
To: "public-ws-resource-access@w3.org" <public-ws-resource-access@w3.org>
Message-ID: <D46B7A44F5BD0C4A96D7D69E31C51D6B5098DCF4A7@NA-EXMSG-C118.redmond.corp..microsoft.com>
Last week, on the WG conference call, I mentioned that we will provide some clarity on the concept of delivery mode (in WS-Eventing) and related use cases.

Delivery mode [1] provides a subscriber with a mechanism to specify the means by which an event is delivered. Delivery mode is represented as a URI in a Subscribe message [2]. The semantics indicated by a delivery mode are:


1)  Rules for the delivery of events

a)  Semantics and lifecycle of a Notification delivery

b)  Message Exchange Pattern used (One-way, Request-Response, etc.) and how the delivery mode binds to those Message Exchange Patterns

c)  Format of a response (if any)

d)  Configuration parameters or context data (if any) to support the Message Exchange Pattern

e)  Rules for the delivery or other disposition of faults generated during a Notification delivery

2)  Delivery mode specific protocol information (if any) to guarantee interop

3)  Supported delivery formats.

Some portion of the above semantics are captured by an EPR, in a machine-readable form, but certainly not all. So, there is value added by a formal mechanism to indicate a delivery mode.

The delivery mode is an extension point in WS-Eventing. The WS-Eventing specification defines a single built-in delivery mode, Push Mode. Other delivery modes may be important for external groups or other W3C Working Groups and are delegated to those groups. This is similar to SOAP Bindings. The W3C XML Protocol WG defined SOAP Protocol Binding Framework as an extension point and a concrete binding, SOAP HTTP Binding (is also identified using a URI [3]). Other groups defined SOAP bindings such as SOAP-over-JMS and SOAP-over-UDP.

The DMTF WS-Management WG defined three new delivery modes [4] and these delivery modes have been widely adopted.

Furthermore, based on the WS-RA WG charter [5], the WG deliverables need to satisfy the following requirements as well:


1)  Charter scope - "Mechanisms to allow a subscriber to specify the means by which an event is delivered and the definition of a push-based delivery mode".

2)  Charter scope - "In order to avoid disrupting the interoperability of existing implementations, WS-MetadataExchange<http://www.w3.org/Submission/2008/SUBM-WS-MetadataExchange-20080813/>, WS-Transfer<http://www.w3.org/Submission/2006/SUBM-WS-Transfer-20060927/>, WS-Eventing<http://www.w3.org/Submission/2006/SUBM-WS-Eventing-20060315/> and WS-Enumeration<http://www.w3.org/Submission/2006/SUBM-WS-Enumeration-20060315/> should remain compatible with protocols and formats that depend on them, and offer a smooth migration path from the submission to the standard." We are aware of two dependant protocols - DPWS [6] (uses Push Mode) and WS-Management [4] (uses Push Mode and, as mentioned before, defines three new delivery modes).

[1] http://www.w3.org/Submission/WS-Eventing/#Delivery_Modes
[2] http://www.w3.org/Submission/WS-Eventing/#Subscribe
[3] http://www.w3.org/TR/2003/REC-soap12-part2-20030624/#http-bindname
[4] http://www.dmtf.org/standards/published_documents/DSP0226.pdf - Section 7
[5] http://www.w3..org/2008/11/ws-ra-charter.html#scope
[6] http://specs.xmlsoap.org/ws/2006/02/devprof/

We hope this helps.

Regards,

Asir S Vedamuthu
Microsoft Corporation

-----Original Message-----
From: public-ws-resource-access-notifications-request@w3.org [mailto:public-ws-resource-access-notifications-request@w3.org] On Behalf Of bugzilla@wiggum.w3.org
Sent: Thursday, March 12, 2009 8:37 AM
To: public-ws-resource-access-notifications@w3.org
Subject: [Bug 6692] New: Remove Mode from the specification

http://www.w3.org/Bugs/Public/show_bug.cgi?id=6692

           Summary: Remove Mode from the specification

           Product: WS-Resource Access

           Version: CR

          Platform: PC

        OS/Version: All

            Status: NEW

          Severity: major

          Priority: P2

         Component: Eventing

        AssignedTo: public-ws-resource-access-notifications@w3.org<mailto:public-ws-resource-access-notifications@w3.org>

        ReportedBy: david.Snelling@UK.Fujitsu.com<mailto:david.Snelling@UK.Fujitsu.com>

         QAContact: public-ws-resource-access-notifications@w3.org<mailto:public-ws-resource-access-notifications@w3.org>


The concept of Mode is redundant in the current version of the specification.

All events can be thought of as being delivered. There is no actual definition

of "Push Mode" and no other recommended modes. We even have a MakeConnection

strategy to allow clients behind NATs to fetch events. Likewise, strategies for

complex queuing and distribution are supportable without adding additional

modes and are outside the scope of this specification.



Proposal: Remove /s:Envelope/s:Body/*/wse:Delivery/@Mode from the specification

and all references to Push Mode. A simple explanation of the delivery idea and

a pointer to some of the techniques available will be needed.

--

Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email

------- You are receiving this mail because: -------

You are the QA contact for the bug.

You are the assignee for the bug.
  
 
Wu Chou, IEEE Fellow, Ph.D. | Director |Dialogue System Research | AVAYA | 233 Mt. Airy Road| Rm. 2D48 | Basking Ridge, NJ 07920 | Voice/Fax: 908-696-5198 / 908-696-5401 | wuchou@avaya.com