- From: Prasad Yendluri <pyendluri@webmethods.com>
- Date: Fri, 13 Dec 2002 13:31:45 -0800
- To: FABLET Youenn <fablet@crf.canon.fr>
- CC: www-ws-desc@w3.org, Sanjiva Weerawarana <sanjiva@watson.ibm.com>, Jean-Jacques Moreau <moreau@crf.canon.fr>
- Message-ID: <3DFA51C1.3010304@webmethods.com>
Youenn, This is very much on the right track IMHO. I did not think they were two sides of the same operation, though the names of the operations did throw me off a bit. Thought they were describing Event-In and Event-Out operations that actually receive and send out the Event-notifications (messages) respectively, where as the intent seems to be event-subscribe-in and event-subscribe-out type of operations. Given scope for such confusion exists, it seems we would be better positioned, if we move the details of these definitions from individual operation level to common set of abstractions of "WSDL-Operation-Types". I mean, WSDL could define a number of these Operation-Types (identified by a URI), each of which specifies the full details of the subject operation type and the semantics of it. Then at the operation definition level, the operation type is simply referenced say via an attribute ("type=URI") on the operation, conveying the full nature of the operation as specified by the operation-type definition. We might still need to spec certain things at the input/output message level, as Don's has shown before but, at least all common details are consolidated out.. This offers the level of optimization that is currently missing from the binding level IMO, where things are repeated over and again. BTW, since operation definitions (portTypes) are at the abstract level, these types (and the dependent MEPs) need to be independent of a specific binding protocol (e.g. SOAP). I think Jacek correctly pointed earlier the subtle distinction between SOAP MEPs and WSDL operation (message exchange) types.. Another point that I perhaps failed to make clearly during the call yesterday was the need, not to assume the target for out-bound operations to be another Web service and describe such operations (as) fully (as possible) from the originating Web service's POV. Regards, Prasad -------- Original Message -------- Subject: Re: Follow up on output ops + MEPs Resent-Date: Fri, 13 Dec 2002 07:41:32 -0500 (EST) Resent-From: www-ws-desc@w3.org Date: Fri, 13 Dec 2002 13:40:52 +0100 From: "FABLET Youenn" <fablet@crf.canon.fr> Organization: Canon Research Centre France To: Sanjiva Weerawarana <sanjiva@watson.ibm.com> CC: www-ws-desc@w3.org, Jean-Jacques Moreau <moreau@crf.canon.fr> References: <3DF9A94D.5060506@crf.canon.fr> <043701c2a29f$02482ee0$7f00a8c0@lankabook2> Sanjiva Weerawarana wrote: >"FABLET Youenn" <fablet@crf.canon.fr> writes: > > >>Following on example 2 (event notification) of Don's proposal (for >>illustration purposes only): >><operation name="Event-In" >> mep="http://www.example.org/mep/event-notification/" >> myRole="event:notifier" >> xmlns:event="http://www.example.org/mep/event-notification/"> >>... >></operation> >><operation name="Event-Out" >> mep="http://www.example.org/mep/event-notification/" >> myRole="event:subscriber" >> xmlns:event="http://www.example.org/mep/event-notification/"> >>... >></operation> >> >> > >To me using two operations to describe an event is akin to how >JavaBeans is built on top of Java: as a second-class set of conventions >that some post-processing (the introspector) applies. The C# way >of making things like properties first-class concepts of the language >is the right way to go IMHO. > There is not two operations that describe an event subscription, but just one. The example presents two operations: - operation "EventIn" says: me as a server allows you client to subscribe events; this is the classic event operation - operation "EventOut" says: me as a server requires you as a client to implement a subscription type function; the server can subscribe to some events from the client. In your scenario of a service provider of events, the service would only include the first op in its WSDL and does not care at all about the second op... The request-response mep engages two entities A and B exactly like the event mep. Then, saying that the server is A leads to WSDL request-response operation type. Saying that the server is B leads to one interpretation of the WSDL sollicit-response operation type. You can apply the same mechanism to the event mep. >That translates to saying have one operation which points to the event >MEP and which has as many messages as needed for the message roles >of that mep (subscription, notification, unsubscription, acknowledgement). >IMHO the event pattern is common enough to justify our giving that >pattern specific syntax and thereby imply the semantics directly rather >than point to a MEP, but really that's just syntax. > I agree and that is precisely the goal of Don's proposal (at least from my understanding). My event example was in fact two examples and not one... Hence some confusion maybe... >Note that my usage of "role" was *within* an operation. I still haven't >grok'ed the role concept you have done above .. it seems like you >have a multi-party state machine and you're identifying roles .. >that's sort of what BPEL's service link type do .. so that approach >seems dangerously close to orchestration and seems far more capable >than needed to describe a service from the point of view of the service. >I have to think about it more though to be sure .. > > IMO, my usage of "role" is also within an operation... I think that the mep proposal + my addition lie somewhere in the frontier with orchestration. This can be a simple hook that will ease orchestration languages's use of WSDL. Anyway, we will talk about this on tuesday... Youenn >Sanjiva. >
Received on Friday, 13 December 2002 16:30:46 UTC