This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 9321 - EVD: Should qname be optional?
Summary: EVD: Should qname be optional?
Status: CLOSED REMIND
Alias: None
Product: WS-Resource Access
Classification: Unclassified
Component: Eventing (show other bugs)
Version: LC
Hardware: PC Windows XP
: P2 normal
Target Milestone: ---
Assignee: Doug Davis
QA Contact: notifications mailing list for WS Resource Access
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-03-25 16:09 UTC by Doug Davis
Modified: 2010-07-27 20:30 UTC (History)
1 user (show)

See Also:


Attachments

Description Doug Davis 2010-03-25 16:09:57 UTC
EVD defines an eventType as:

<wsevd:eventType name="xs:NCName" element="xs:QName" actionURI="xs:anyURI"? ...>
    xs:any*
</wsevd:eventType>

Notice that the "element" attribute is required.  Normally this makes sense
since we would expect at least some data to appear in the soap body.
However, it seems like it might be possible to have situations where the
only thing that's needed is the actionURI on the notification msg.
For example, wsman defines hearbeat messages that an event source might send
periodically so that the sink knows the subscription is still alive.
In these cases the soap Body isn't needed at all so does it make sense
to require someone to define a GED in these cases?

Proposal:
Make "element" optional.  Add "OPTIONAL" to the defn of @element:

/wsevd:EventDescriptions/wsevd:eventType/@element

    This _OPTIONAL_ attribute refers to a GED defined or imported in the /wsevd:EventDescriptions/wsevd:types element. The referenced GED serves as the definition of this Event Type. 

and modify the xsd to match.

Also, in eventing we would need to tweak the EVD binding sections.

for example (see *** text):
The [Body] property of the notification has a single child element. This child element is an instance of the Global Element Declaration referenced by the element attribute of the wse:eventType element corresponding to the type of the event being transmitted.  *** If the element attribute is absent then the [Body] property has no children. ***

and

The /soap:Envelope/soap:Body/wse:Notify element has a single child element. This child element is an instance of the Global Element Declaration referenced by the element attribute of the eventType element corresponding to the type of the event being transmitted.  *** If the element attribute is absent then the wse:Notify element has no children. ***
Comment 1 David Snelling 2010-03-30 19:55:44 UTC
My concern is this:

This means that implementations MUST understand the action URI's at the application level, just incase the body is empty. I have no real objection, but we should make sure of the ramifications.

This might also imply some "MUSTs" on the receiver to deal with the options.
Comment 2 Doug Davis 2010-03-30 19:58:40 UTC
Dave - I think the concern you have is actually more related to the
definition of formats since someone could define a format that
doesn't use the @element attribute at all.  No?
Comment 3 Doug Davis 2010-03-30 20:11:35 UTC
Thinks about adding text to say that a format URI needs to talk about what to do about missing fields - like actionURI
Comment 4 Robert Freund 2010-05-04 17:11:49 UTC
2010-04-20 resolved as proposed with the amendment to add: at least one of the two (action / element) MUST be present