- From: Gilbert Pilz <gilbert.pilz@oracle.com>
- Date: Tue, 21 Jul 2009 10:26:34 -0700
- To: "public-ws-resource-access@w3.org" <public-ws-resource-access@w3.org>
- Message-ID: <4A65FA4A.5030505@oracle.com>
The following is an analysis of how the EventDescriptions proposal for
describing and advertising Event Types attached to this email satisfies
the use cases and requirements specified on the Wiki
<http://www.w3.org/2002/ws/ra/wiki/Use_Cases_for_6401-6661>.
*I. Event Sink Code Generation*
*A. Raw Notifications* - the EventDescriptions proposal supports the
use of current WSDL-based tools to generate the code to marshal and
dispatch Raw Notifications by specifying the transformation of the
EventDescriptions element into a BP 1.1 conformant, WSDL 1.1
definitions element (see Appendix F).
*B. Wrapped Notifications* - since the WSDL for Wrapped
Notifications is already specified in Appendix D and, by definition,
all listeners for Wrapped Notifications must support this WSDL,
there is nothing more that needs to be done to provide support for
Wrapped Notifications. Support for the additional marshalling of the
contents of Wrapped Notifications may be provided by using XML data
binding technologies (e.g. XMLBeans <http://xmlbeans.apache.org/>)
in conjunction with the information in the
/EventDescriptions/eventType though the use cases around this are
unclear.
*C. Extension Notifications* - Since the EventDescriptions element
describes the shape of Events independently of how they are included
in a Notifications, it is well suited for the definition of
additional Notification formats.
*II. Event Type Visibility* - As described in Section 6.2 "Retrieving
Event Types", a Subscriber can view metadata (i.e. schema definitions)
on the set of Event Types supported by an Event Source. An Event Source
could pre-filter this metadata based on the Subscribers authenticated
identity to insure that the Subscriber is only provided with a list of
those Event Types to which he/she has access.
*III. Event Type Completeness* - There are two crucial pieces of
information needed to implement an Event Sink. The first is the schema
for the set of Event Types that may be emitted. This can be retrieved as
described in Section 6.2 "Retrieving Event Types". The second is the
format of the Notifications in which the Events will be transmitted.
This is selectable at Subscribe time and defined by either the
WS-Eventing spec (for Raw and Wrapped Notifications) or by some
extension spec.
*IV. Non-Metadata Use Cases* - Nothing in the EventDescriptions proposal
prevents the Subscriber and Event Source provider from communicating the
information necessary to implement these use cases by some means other
than metadata.
*V. Multiple Notification Variations* - because the EventDescriptions
proposal separates the Event Type information from the Notification
Format, it is particularly well suited to support this use case (this
use case was, in fact, the motivating factor for the development of this
proposal).
*VI. Advertise Notification Variations* - because it separates the
description Event Types from Notification formats, nothing in the
EventDescriptions proposal supports this use case, but neither is there
anything that prevents its support via some other, more appropriate
mechanism such as the use of WS-Policy assertions (or sub-assertions)
that indicate which Notification formats are supported by an Event Source.
*VII. Deterministic WSDL* - for Raw Notifications a deterministic
process for generating a WSDL is described in Appendix F. For Wrapped
Notifications the WSDL is included in Appendix D. Extended Notification
formats should describe the mapping for Event Types to Notifications in
that format.
*VIII. WS-I Basic Profile* - the transformation of the EventDescriptions
element into a WSDL 1.1 definitions element described in Appendix F
results in a WSDL that conforms to Basic Profile 1.1
<http://www.ws-i.org/Profiles/BasicProfile-1.1.html>.
*IX. Extensibility of Message Exchange Patterns* - the EventDescriptions
proposal does nothing to prevent the definition of extended MEPS in
WS-Eventing.
*Global Non-Functional Requirements
*
*Constrained Environments* - since the EventDescriptions proposal
describes build-time artifacts and processes, it does not impact
constrained environments.
*Known Technologies* - the EventDescriptions proposal is dependent
upon the following known technologies: XML Schema, WSDL 1.1, and
optionally XSL Transformations to transform the EventDescriptions
element into a wsdl:definitions element.
*Consistent with UDDI* - nothing in the EventDescriptions proposal
prevents either the Event Source or Event Sink from publishing and
registering their services though UDDI.
- gp
Received on Tuesday, 21 July 2009 17:27:22 UTC