Re: WSDL and pub/sub

Pub-sub is an interesting case as it is possible to demonstrate that it 
represents a corner case -- it is not possible to capture pub-sub with 
MEPs but is possible with choreography (assuming that semantics is part 
of choreography).

Here is why:

A given publication service will notify its clients of new events. The 
service may choose to package up all events for a given client into a 
single message. A service may give additional events depending on the 
semantics of the subscription request.

A client may choose to register for multiple events, perhaps specified 
using a keyword notation (not important) -- due to the imprecise nature 
of this, a given subscription request may overlap with an older 
subscription request.

The result is that it is not possible to identify a given event message 
as being part of a given subscription. However, all events have been 
requested in a subscription.

I believe that without a semantic connection between event messages and 
subscription messages you cannot capture this scenario.

MEPs are defined to be without semantics.

Frank

On Feb 12, 2004, at 10:22 AM, Burdett, David wrote:

> Steve
>
> Giving this a bit of thought makes me think that the essence of 
> pub-sub is ...
>
> 1. The publisher sets up a service that accepts subscriptions requests 
> and changes for some other service that actually publishes 
> documents/messages.
>
> 2. The subscriber then requests subscription to a service by sending a 
> messge which then gets either accepted or rejected.
>
> 3. When the subscriber makes the request, they must include some kind 
> of "delivery address" that identifies where documents/messages etc, 
> generated by the publisher must be sent
>
> 4. If the request is accepted, then the publisher will return some 
> kind of "identifier" for the subscription that can later be used when 
> changing or cancelling the subscription
>
> 5. The publisher starts publishing documents. This is a one-way 
> message although it might be delivered reliably
> 6. The publisher continues publishing documents until: a) the 
> subscription is cancelled, or b) the subscription runs-out, e.g. a 
> certain period of time has passed, a specific number of 
> messages/documents have been received, the subscriber hasn't paid.
>
> From a CDL perspective, the "delivery address" is what the Overview 
> Model calls a "Channel". This means that to use it, we need to have a 
> way of representing the Channel in XML and decie how it should be 
> included in the message. My thoughts would be the body.
>
> The rest sounds to me like a pretty regular Choreography Definition 
> with dependencies, e.g. you can't cancel a subscription unless you 
> managed to subscribe to it successfully.
>
> Another question is should such a Pub-Sub Choreography be standardized 
> as I am sure the need for Pub-Sub goes beyond WS Chor. For example you 
> could imagine a definition that allowed you to manage a subscription 
> to any web service then later cancel it. However you would need 
> standard XML docs to be used as Message Content for the Interactions 
> in the Pub Sub.
>
> Also where should such a spec be developed ... by WSDL, by WS Chor? 
> I'm not sure I know the answer to that one.
>
> David
>
>
>
>
> -----Original Message-----
> From: Steve Ross-Talbot [mailto:steve@enigmatec.net]
> Sent: Thursday, February 12, 2004 5:41 AM
> To: WS Choreography
> Subject: Fwd: WSDL and pub/sub
>
>
>
>
> How does this leave our stuff wrt the Barros usecase?
>
> Cheers
>
> Steve T
>
>
>
> Begin forwarded message:
>
> > From: "Jonathan Marsh" <jmarsh@microsoft.com>
> > Date: 11 February 2004 20:44:41 GMT
> > To: "Steve Ross-Talbot" <steve@enigmatec.net>
> > Subject: RE: WSDL and pub/sub
> >
> > WSDL 2.0 part 3 [1] describes some message exchange patterns that 
> can 
> > be
> > used as part of a pub/sub solution.  Look at all the "out-*" patterns
> > starting at section 3.4.  A complete pub/sub solution is not 
> provided,
> > as the address and mechanics of "sub"ing and providing the address 
> for
> > the "pub" to be delivered are not standardized in WSDL (perhaps this 
> is
> > an orchestration problem?).  Note that the HTTP and SOAP bindings 
> don't
> > support these message exchange patterns yet, but we have an issue 
> open
> > on whether we should rectify this.
> >
> > Hope this helps.
> >
> > [1]
> > http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/wsdl20/wsdl20-
> > patterns.
> > html#out-only
> >
> >> -----Original Message-----
> >> From: Steve Ross-Talbot [mailto:steve@enigmatec.net]
> >> Sent: Tuesday, February 10, 2004 10:07 AM
> >> To: Jonathan Marsh
> >> Subject: WSDL and pub/sub
> >>
> >> Jonathan,
> >>
> >> I seem to recollect that you indiciated that WSDL2.0 includes an MEP
> > or
> >> some such facility to represent pub/sub as a means of communication.
> >> Could you verify this? And could you point me to the appropriate
> >> description? This is something that the Choreography WG would very
> > much
> >>   like to have so that a single message could be sent to multiple
> >> sources without needing to bind to those sources.
> >>
> >>
> >> Best Regards
> >>
> >> Steve Ross-Talbot
> >> co-Chair W3C Web Services Choreography
> >>
> >> O: +44 207 397 8207
> >> C: +44 7855 268 848
> >> www.enigmatec.net

Received on Thursday, 12 February 2004 18:24:30 UTC