REC-ws-event-descriptions-20111213
41.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Web Services Event Descriptions (WS-EventDescriptions)</title><style type="text/css">
code { font-family: monospace; }
div.constraint,
div.issue,
div.note,
div.notice { margin-left: 2em; }
ol.enumar { list-style-type: decimal; }
ol.enumla { list-style-type: lower-alpha; }
ol.enumlr { list-style-type: lower-roman; }
ol.enumua { list-style-type: upper-alpha; }
ol.enumur { list-style-type: upper-roman; }
div.exampleInner pre { margin-left: 1em;
margin-top: 0em; margin-bottom: 0em}
div.exampleOuter {border: 4px double gray;
margin: 0em; padding: 0em}
div.exampleInner { background-color: #d5dee3;
border-top-width: 4px;
border-top-style: double;
border-top-color: #d3d3d3;
border-bottom-width: 4px;
border-bottom-style: double;
border-bottom-color: #d3d3d3;
padding: 4px; margin: 0em }
div.exampleWrapper { margin: 4px }
div.exampleHeader { font-weight: bold;
margin: 4px}
</style><link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/TR/W3C-REC.css" /></head><body><div class="head"><p><a href="http://www.w3.org/"><img src="http://www.w3.org/Icons/w3c_home" alt="W3C" height="48" width="72" /></a></p>
<h1><a name="title" id="title"></a>Web Services Event Descriptions (WS-EventDescriptions)</h1>
<h2><a name="w3c-doctype" id="w3c-doctype"></a>W3C Recommendation 13 December 2011</h2><dl><dt>This version:</dt><dd>
<a href="http://www.w3.org/TR/2011/REC-ws-event-descriptions-20111213">http://www.w3.org/TR/2011/REC-ws-event-descriptions-20111213
</a>
</dd><dt>Latest version:</dt><dd>
<a href="http://www.w3.org/TR/ws-event-descriptions">http://www.w3.org/TR/ws-event-descriptions
</a>
</dd><dt>Previous version:</dt><dd>
<a href="http://www.w3.org/TR/2011/PR-ws-event-descriptions-20110927">http://www.w3.org/TR/2011/PR-ws-event-descriptions-20110927
</a>
</dd><dt>Editors:</dt><dd>Doug Davis, IBM</dd><dd>Ashok Malhotra, Oracle</dd><dd>Katy Warr, IBM</dd><dd>Wu Chou, Avaya</dd></dl><p>Please refer to the <a href="http://www.w3.org/2002/ws/ra/errata/ws-event-descriptions-20111213-errata"><strong>errata</strong></a> for this document, which may
include normative corrections.</p><p>See also <a href="http://www.w3.org/2003/03/Translations/byTechnology?technology=ws-event-descriptions"><strong>translations</strong></a>.</p><p class="copyright"><a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> © 2011 <a href="http://www.w3.org/"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>®</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>, <a href="http://www.ercim.org/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>, <a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>, <a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a> and <a href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> rules apply.</p></div><hr /><div>
<h2><a name="abstract" id="abstract"></a>Abstract</h2><p>
This specification describes a mechanism by which an endpoint can
advertise the structure and contents of the events it might generate.
</p></div><div>
<h2><a name="status" id="status"></a>Status of this Document</h2><p><em>
This section describes the status of this document at the time
of its publication. Other documents may supersede this document.
A list of current W3C publications and the latest revision of
this technical report can be found in the
<a href="http://www.w3.org/TR/">W3C technical reports index</a>
at http://www.w3.org/TR/.
</em></p><p>
This is the 13 December 2011 Recommendation of the <em>Web Services Event Descriptions (WS-EventDescriptions)</em> specification.
It has been produced by the
<a href="http://www.w3.org/2002/ws/ra/">Web
Services Resource Access Working Group</a> (WG), which is part of the
<a href="http://www.w3.org/2002/ws/Activity">W3C Web Services
Activity</a>.
</p><p>
The public is encouraged to send comments to the Working Group's public mailing list
<a href="mailto:public-ws-resource-access-comments@w3.org">
public-ws-resource-access-comments@w3.org</a>
mailing list (<a href="http://lists.w3.org/Archives/Public/public-ws-resource-access-comments/">public
archive</a>). See <a href="http://www.w3.org/Mail/">W3C mailing list and archive usage guidelines</a>.
</p><p>No substantive changes were made as a result of the Proposed Recommendation phase (see also <a href="diff-ws-evd.html">diff</a>, <a href="http://www.w3.org/2002/ws/ra/test/scenario.html">test scenario</a> and <a href="http://www.w3.org/2002/ws/ra/test/testResults.html">implementation report</a>).</p><p>This document has been reviewed by W3C Members, by software developers, and by other W3C groups and interested parties, and is endorsed by the Director as a W3C Recommendation. It is a stable document and may be used as reference material or cited from another document. W3C's role in making the Recommendation is to draw attention to the specification and to promote its widespread deployment. This enhances the functionality and interoperability of the Web.</p><p>
This document was produced by a group operating under the
<a href="http://www.w3.org/Consortium/Patent-Policy-20040205/">5
February 2004 W3C Patent Policy</a>. W3C maintains a
<a rel="disclosure" href="http://www.w3.org/2004/01/pp-impl/43088/status">public
list of any patent disclosures</a> made in connection with the
deliverables of the group; that page also includes instructions for
disclosing a patent. An individual who has actual knowledge of a
patent which the individual believes contains
<a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential">Essential
Claim(s)</a> must disclose the information in accordance with
<a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure">section
6 of the W3C Patent Policy</a>.
</p></div><div class="toc">
<h2><a name="contents" id="contents"></a>Table of Contents</h2><p class="toc">1 <a href="#composable">Composable Architecture</a><br />
2 <a href="#intro">Introduction</a><br />
2.1 <a href="#reqs">Requirements</a><br />
3 <a href="#notterms">Notations and Terminology</a><br />
3.1 <a href="#conventions">Notational Conventions</a><br />
3.2 <a href="#extensions">Considerations on the Use of Extensibility Points</a><br />
3.3 <a href="#terms">Terminology</a><br />
3.4 <a href="#compliance">Compliance</a><br />
3.5 <a href="#namespaces">XML Namespaces</a><br />
4 <a href="#Advertising">Advertising Event Information</a><br />
4.1 <a href="#ETypes">Event Types & Event Descriptions</a><br />
4.1.1 <a href="#idp1333200">Retrieving Event Descriptions</a><br />
4.1.2 <a href="#idp1348528">Bindings for Event Descriptions</a><br />
5 <a href="#acks">Acknowledgements</a><br />
6 <a href="#refs">References</a><br />
6.1 <a href="#idp1353712">Normative References</a><br />
6.2 <a href="#idp1364848">Informative References</a><br />
</p>
<h3><a name="appendices" id="appendices"></a>Appendices</h3><p class="toc">A <a href="#EVD_MIME">Registration of the application/evd+xml Media Type</a><br />
B <a href="#EVDXSD">XML Schema for EventDescriptions</a><br />
C <a href="#changelog">Change Log</a><br />
</p></div><hr /><div class="body"><div class="div1">
<h2><a name="composable" id="composable"></a>1 Composable Architecture</h2><p>
By using the XML and SOAP <a href="#SOAP11">[SOAP11]</a>,
<a href="#SOAP12">[SOAP12]</a>
extensibility models, the Web service
specifications (WS-*) are designed to be composed with each other
to provide a rich set of tools for the Web
services environment.
</p></div><div class="div1">
<h2><a name="intro" id="intro"></a>2 Introduction</h2><p>
This specification describes a mechanism by which an endpoint can
advertise the structure and contents of the events it might generate.
</p><div class="div2">
<h3><a name="reqs" id="reqs"></a>2.1 Requirements</h3><p>
This specification intends to meet the following requirements:
</p><ul><li><p>
Define a mechanism to describe the structure and contents of
events.
</p></li><li><p>
Leverage WS-MetadataExchange <a href="#MEX">[WS-MetadataExchange]</a> to allow an
endpoint to advertise events that might be generated.
</p></li></ul></div></div><div class="div1">
<h2><a name="notterms" id="notterms"></a>3 Notations and Terminology</h2><p>
This section specifies the notations, namespaces, and
terminology used in this specification.
</p><div class="div2">
<h3><a name="conventions" id="conventions"></a>3.1 Notational Conventions</h3><p>
The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in
RFC 2119 <a href="#RFC2119">[RFC 2119]</a>.
</p><p>
This specification uses the following syntax to define
normative outlines for messages:
</p><ul><li><p>
The syntax appears as an XML instance, but values in
italics indicate data types instead of values.
</p></li><li><p>
Characters are appended to elements and attributes to
indicate cardinality:
</p><ul><li><p>"?" (0 or 1)</p></li><li><p>"*" (0 or more)</p></li><li><p>"+" (1 or more)</p></li></ul></li><li><p>
The character "|" is used to indicate a choice between
alternatives.
</p></li><li><p>
The characters "(" and ")" are used to indicate that contained items
are to be treated as a group with respect to cardinality or choice.
</p></li><li><p>
The characters "[" and "]" are used to call out references and
property names.
</p></li><li><p>
Ellipsis (i.e. "...") indicate a point of extensibility.
</p></li><li><p>
XML namespace prefixes (see <a href="#Table3">Table 3-1</a>)
are used to indicate the namespace of the element being
defined.
</p></li></ul><p>
This specification can be used in terms of XML Information Set (Infoset)
<a href="#XMLInfoset">[XML Infoset]</a>, even though the specification uses XML 1.0
terminology. Valid Infoset for this specification is the one
serializable in XML 1.0, hence the use of XML 1.0.
</p></div><div class="div2">
<h3><a name="extensions" id="extensions"></a>3.2 Considerations on the Use of Extensibility Points</h3><p>
The elements defined in this specification MAY be extended at the
points indicated by their outlines and schema. Implementations MAY
add child elements and/or attributes at the indicated extension
points but MUST NOT contradict the semantics of the parent and/or
owner, respectively.
</p><p>
Extension elements and attributes MUST NOT use the Web Services
Event Descriptions namespace URI.
</p></div><div class="div2">
<h3><a name="terms" id="terms"></a>3.3 Terminology</h3><dl><dt class="label"> Notification </dt><dd><p>
A message sent to indicate that an event, or events, have occurred.
</p></dd></dl></div><div class="div2">
<h3><a name="compliance" id="compliance"></a>3.4 Compliance</h3><p>
An implementation is not compliant with this specification if it fails to
satisfy one or more of the MUST or REQUIRED level requirements defined
herein. A SOAP Node MUST NOT use the XML namespace identifier for this
specification (listed in <a href="#namespaces"><b>3.5 XML Namespaces</b></a>) within SOAP
Envelopes unless it is compliant with this specification.
</p><p>
Normative text within this specification takes precedence over the XML
Schema, which in turn take precedence over
outlines, which in turn take precedence over examples.
</p><p>
Unless otherwise noted, all IRIs are absolute IRIs and IRI comparison
MUST be performed according to <a href="#RFC3987">[RFC 3987]</a> section 5.3.1.
</p><p>
Implementations are expected to support both UTF-8 and UTF-16 as
described in XML 1.0.
</p></div><div class="div2">
<h3><a name="namespaces" id="namespaces"></a>3.5 XML Namespaces</h3><p>
The XML namespace URI that MUST be used by implementations of
this specification is:
</p><div class="exampleOuter"><div class="exampleInner"><pre><a href="http://www.w3.org/2011/03/ws-evd">http://www.w3.org/2011/03/ws-evd</a></pre></div></div><p>
<a href="#Table3">Table 3-1</a> lists XML namespaces that are used in this
specification. The choice of any namespace prefix is arbitrary
and not semantically significant.
</p><a name="Table3" id="Table3"></a><table border="1"><caption>Table 3-1: Prefixes and XML namespaces used in this specification </caption><tbody><tr><th align="left"> Prefix </th><th align="left"> XML Namespace </th><th align="left"> Specification(s) </th></tr><tr><td>s</td><td>(Either SOAP 1.1 or 1.2)</td><td>(Either SOAP 1.1 or 1.2)</td></tr><tr><td>s11</td><td>
<a href="http://schemas.xmlsoap.org/soap/envelope/">
http://schemas.xmlsoap.org/soap/envelope/
</a>
</td><td>SOAP 1.1 <a href="#SOAP11">[SOAP11]</a></td></tr><tr><td>s12</td><td>
<a href="http://www.w3.org/2003/05/soap-envelope">
http://www.w3.org/2003/05/soap-envelope
</a>
</td><td>SOAP 1.2 <a href="#SOAP12">[SOAP12]</a></td></tr><tr><td>wsa</td><td>
<a href="http://www.w3.org/2005/08/addressing">
http://www.w3.org/2005/08/addressing
</a>
</td><td>WS-Addressing <a href="#AddrCore">[WS-Addressing]</a></td></tr><tr><td>wsevd</td><td>
<a href="http://www.w3.org/2011/03/ws-evd">
http://www.w3.org/2011/03/ws-evd
</a>
</td><td>This specification</td></tr><tr><td>xs</td><td>
<a href="http://www.w3.org/2001/XMLSchema">
http://www.w3.org/2001/XMLSchema
</a>
</td><td>
XML Schema <a href="#XMLSchema1">[XMLSchema - Part 1]</a>, <a href="#XMLSchema2">[XMLSchema - Part 2]</a>
</td></tr><tr><td>wse</td><td>
<a href="http://www.w3.org/2011/03/ws-evt">
http://www.w3.org/2011/03/ws-evt
</a>
</td><td>WS-Eventing <a href="#Eventing">[WS-Eventing]</a></td></tr></tbody></table><p>
The working group intends to update the value of the Web Services
Event Descriptions namespace URI each time a new version of this document
is published until such time that the document reaches Candidate
Recommendation status. Once it has reached Candidate Recommendation
status, the working group intends to maintain the value of the
Web Services Event Descriptions namespace URI that was assigned in the
Candidate Recommendation unless significant changes are made that
impact the implementation or break post-CR implementations of the
specification. Also see
<a href="http://www.w3.org/2001/tag/doc/namespaceState.html">
http://www.w3.org/2001/tag/doc/namespaceState.html
</a> and
<a href="http://www.w3.org/2005/07/13-nsuri">
http://www.w3.org/2005/07/13-nsuri
</a>.
</p></div></div><div class="div1">
<h2><a name="Advertising" id="Advertising"></a>4 Advertising Event Information</h2><p>
There are many use cases in which it is necessary for an endpoint
to advertise the structure and contents of the events that it might
generate. For example, a subscriber
might wish to know the shape of the events that are generated in
order to properly formulate a filter to limit the number of
notifications that are transmitted, or to ensure it can successfully
process the type of events that are transmitted.
</p><p>
There are many ways in which an endpoint could describe and
advertise the structure of the events for which it will issue
notifications. To provide a basic level of interoperability, this
specification defines the following mechanism, in
<a href="#ETypes"><b>4.1 Event Types & Event Descriptions</b></a>, for describing and
advertising event information.
</p><p>
This specification only defines a mechanism by which events can be
described and advertised. How these events, and the properties of
these events that are described within an Event Descriptions document,
are serialized for transmission is out of scope
of this specification; but are expected to be fully described in
any specification that uses this one.
</p><div class="div2">
<h3><a name="ETypes" id="ETypes"></a>4.1 Event Types & Event Descriptions</h3><p>
A key concept in the description and advertisement of event information
is the "Event Type". An Event Type is a description of the syntactic
structure and value space of the set of events that share that type.
Event Types are independent of the pub/sub protocol used and the format
of the notifications used to transmit those events.
</p><p>
Event Types are described within an EventDescriptions element where
they contain a complete description of an event. A key aspect of this
description is the associated XML Schema Global Element Declaration
(GED) for each event.
EventDescriptions element has the following form:
</p><div class="exampleOuter"><div class="exampleInner"><pre><wsevd:EventDescriptions targetNamespace="<em>xs:anyURI</em>" ...>
<wsevd:types>
<xs:schema ...>
...
</xs:schema>
<em>xs:any</em>*
</wsevd:types>
<wsevd:eventType id="<em>xs:ID</em>" element="<em>xs:QName</em>"? actionURI="<em>xs:anyURI</em>"? ...>
<em>xs:any</em>*
</wsevd:eventType> +
<em>xs:any</em>*
</wsevd:EventDescriptions></pre></div></div><p>
The XML Schema for the EventDescriptions element can be found in
<a href="#EVDXSD"><b>B XML Schema for EventDescriptions</b></a>. The following describes additional, normative
constraints on the outlined listed above:
</p><dl><dt class="label"> /wsevd:EventDescriptions </dt><dd><p>
This element contains the declarations of all the Event Types that
apply to a given context.
</p></dd><dt class="label"> /wsevd:EventDescriptions@targetNamespace </dt><dd><p>
This attribute defines the namespace affiliation of the Event Types
declared within the EventDescriptions element. Its value MUST be an
absolute IRI <a href="#RFC3987">[RFC 3987]</a>. It SHOULD be dereferenceable.
</p></dd><dt class="label"> /wsevd:EventDescriptions/wsevd:types </dt><dd><p>
This element encloses data type definitions that are relevant to
the declared Event Types.
</p></dd><dt class="label"> /wsevd:EventDescriptions/wsevd:types/xs:schema </dt><dd><p>
As described earlier, an Event Type is defined by a Global Element
Declaration (GED) in XML Schema. This element contains collections
of imported and inlined schema components that describe the GEDs
that are used to define Event Types.
</p></dd><dt class="label"> /wsevd:EventDescriptions/wsevd:eventType </dt><dd><p>
This element describes a specific Event Type.
</p></dd><dt class="label"> /wsevd:EventDescriptions/wsevd:eventType/@id </dt><dd><p>
This attribute provides an identifier for this Event Type which MUST be
unique amongst
all the Event Types defined by the enclosing wsevd:EventDescriptions
element. In conjunction with a Prefix that is associated with the
value of /wsevd:EventDescriptions/@targetNamespace namespace URI, the
value of this attribute MAY be used as the LocalPart of a QName
that identifies this Event Type outside the context of the
enclosing wsevd:EventDescriptions element.
</p></dd><dt class="label"> /wsevd:EventDescriptions/wsevd:eventType/@element </dt><dd><p>
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.
</p></dd><dt class="label"> /wsevd:EventDescriptions/wsevd:eventType/@actionURI </dt><dd><p>
This OPTIONAL attribute provides a value for the 'action'
property which, depending upon the format of the
notification used to transmit the Event, serve as a potential aid
to identifying the semantics implied by the message. When not
present the implied value of this attribute is the concatenation
of the wsevd:EventDescriptions' @targetNamespace attribute and
the wsevd:eventType id attribute separated by the '/' character.
</p></dd></dl><p>
Note, while the schema allows for the @element attribute and the
@actionURI attribute to be absent, at least one of them MUST be
present for each eventType.
</p><p>
The following is an example of an EventDescriptions element that could
serve as a description of the Event Type used in
<a href="#EVDExample">Example 4-2</a>.
</p><div class="exampleOuter">
<div class="exampleHeader"><a name="EVDSample" id="EVDSample"></a>Example 4-1: EventDescriptions</div><div class="exampleInner"><pre>(01) <wsevd:EventDescriptions
(02) targetNamespace="http://www.example.org/oceanwatch/notifications"
(03) xmlns:wsevd="http://www.w3.org/2011/03/ws-evd"
(04) xmlns:ow="http://www.example.org/oceanwatch">
(05) <wsevd:types>
(06) <xs:schema targetNamespace="http://www.example.org/oceanwatch">
(07) <xs:include schemaLocation="http://www.example.org/schemas/oceanwatch.xsd"/>
(08) <xs:element id="WindReport" type="ow:WindReportType"/>
(09) </xs:schema>
(10) </wsevd:types>
(11)
(12) <wsevd:eventType id="WindReportEvent"
(13) element="ow:WindReport"
(14) actionURI="http://www.example.org/oceanwatch/2003/WindReport"/>
(15) </wsevd:EventDescriptions></pre></div></div><p>
Lines (12-14) describe an Event Type with a QName of
"{http://www.example.org/oceanwatch/notifications}:WindReportEvent". The
GED for this Event Type is defined on line (08) as being of type
"{http://www.example.org/oceanwatch}:WindReportType".
</p><p>
The sample EventDescriptions in <a href="#EVDSample">Example 4-1</a> might describe
the following notification:
</p><div class="exampleOuter">
<div class="exampleHeader"><a name="EVDExample" id="EVDExample"></a>Example 4-2: Hypothetical Notification</div><div class="exampleInner"><pre>(01) <s12:Envelope xmlns:s12="http://www.w3.org/2003/05/soap-envelope"
(02) xmlns:wsa="http://www.w3.org/2005/08/addressing"
(03) xmlns:ow="http://www.example.org/oceanwatch">
(04) <s12:Header>
(05) <wsa:Action>
(06) http://www.example.com/oceanwatch/2003/WindReport
(07) </wsa:Action>
(08) ...
(09) </s12:Header>
(10) <s12:Body>
(11) <ow:WindReport>
(12) <ow:Date>030701</ow:Date>
(13) <ow:Time>0041</ow:Time>
(14) <ow:Speed>65</ow:Speed>
(15) <ow:Location>BRADENTON BEACH</ow:Location>
(16) <ow:County>MANATEE</ow:County>
(17) <ow:State>FL</ow:State>
(18) <ow:Lat>27.46</ow:Lat>
(19) <ow:Long>82.70</ow:Long>
(20) <ow:Comments xml:lang="en-US" >
(21) WINDS 55 WITH GUSTS TO 65. ROOF TORN OFF BOAT HOUSE. REPORTED
(22) BY STORM SPOTTER. (TBW)
(23) </ow:Comments>
(24) </ow:WindReport>
(25) </s12:Body>
(26) </s12:Envelope></pre></div></div><div class="div3">
<h4><a name="idp1333200" id="idp1333200"></a>4.1.1 Retrieving Event Descriptions</h4><p>
Although there are many ways in which an endpoint can make its
EventDescriptions available, this specification RECOMMENDS the use of
the mechanisms described in section 9 of WS-MetadataExchange
<a href="#MEX">[WS-MetadataExchange]</a>.
In particular, this specification RECOMMENDS that the Event Descriptions
metadata be made available through the WS-Eventing
<a href="#Eventing">[WS-Eventing]</a> EventSource Policy assertion. This MAY be done
by either embedding the Event Descriptions metadata directly within
the assertion, or by including a MetadataExchange reference to the data.
</p><p>
An event source MUST NOT have more than one EventDescriptions document.
</p><p>
The following examples show how Event Descriptions metadata might
appear within a WS-Eventing EventSource Policy assertion.
</p><div class="exampleOuter">
<div class="exampleHeader"><a name="embedEVD" id="embedEVD"></a>Example 4-3: Sample Embedded Event Descriptions Metadata</div><div class="exampleInner"><pre>(01) <wse:EventSource ...>
(02) <wse:FormatName URI="..."/>
(03) <wsevd:EventDescriptions ...>
(04) ...
(05) </wsevd:EventDescriptions>
(06) </wse:EventSource></pre></div></div><p>
<a href="#embedEVD">Example 4-3</a> shows how the Event Descriptions metadata
might be embedded directly within a WS-Eventing EventSource Policy
assertion.
</p><div class="exampleOuter">
<div class="exampleHeader"><a name="refEVD" id="refEVD"></a>Example 4-4: Sample Reference to Event Descriptions Metadata</div><div class="exampleInner"><pre>(01) <wse:EventSource ...>
(02) <wse:FormatName URI="..."/>
(03) <mex:Location
(04) Type="wsevd:EventDescriptions"
(05) URI="http://example.com/EVD_Metadata" />
(06) </wse:EventSource> </pre></div></div><p>
<a href="#refEVD">Example 4-4</a> shows the same policy assertion from
<a href="#embedEVD">Example 4-3</a> except the embedded Event Descriptions
metadata is replaced with a reference to an HTTP resource whose
representation is the Event Descriptions metadata. The data can be
retrieved via an HTTP GET to the specified URL.
</p><div class="exampleOuter">
<div class="exampleHeader"><a name="mexEVD" id="mexEVD"></a>Example 4-5: Sample GetMetadataResponse with Event Descriptions Metadata</div><div class="exampleInner"><pre>(01) <mex:GetMetadataResponse>
(02) <mex:Metadata>
(03) <mex:MetadataSection Dialect='wsevd:EventDescriptions'
(04) Identifier='...'>
(05) <wsevd:EventDescriptions ...>
(06) ...
(07) </wsevd:EventDescriptions>
(08) </mex:MetadataSection>
(09) </mex:Metadata>
(10) </mex:GetMetadataResponse> </pre></div></div><p>
<a href="#mexEVD">Example 4-5</a> shows how the Event Descriptions metadata
might appear within a GetMetadataResponse message.
</p><p>
If an EventDescriptions document appears within a WS-MetadataExchange
MetadataSection, then the value of the @Identifier attribute, if present,
MUST be equal to the value of its
wsevd:EventDescriptions/@targetNamespace.
</p></div><div class="div3">
<h4><a name="idp1348528" id="idp1348528"></a>4.1.2 Bindings for Event Descriptions</h4><p>
Any specification of a publish-subscribe system that uses
Event Descriptions to advertise the events that are generated
MUST clearly define how those events are serialized when they
are transmitted to the receiver of notification messages.
</p></div></div></div><div class="div1">
<h2><a name="acks" id="acks"></a>5 Acknowledgements</h2><p>
This specification has been developed as a result of joint
work with many individuals and teams, including:
Alessio Soldano (Red Hat),
Ashok Malhotra (Oracle Corp.),
Asir Vedamuthu (Microsoft Corp.),
Bob Freund (Hitachi, Ltd.),
Bob Natale (MITRE Corp.),
David Snelling (Fujitsu, Ltd.),
Doug Davis (IBM),
Fred Maciel (Hitachi, Ltd.),
Geoff Bullen (Microsoft Corp.),
Gilbert Pilz (Oracle Corp.),
Greg Carpenter (Microsoft Corp.),
Jeff Mischkinsky (Oracle Corp.),
Katy Warr (IBM),
Li Li (Avaya Communications),
Mark Little (Red Hat),
Martin Chapman (Oracle Corp.),
Paul Fremantle (WSO2),
Paul Nolan (IBM),
Prasad Yendluri (Software AG),
Ram Jeyaraman (Microsoft Corp.),
Sreedhara Narayanaswamy (CA),
Sumeet Vij (Software AG),
Tom Rutt (Fujitsu, Ltd.),
Vikas Varma (Software AG),
Wu Chou (Avaya Communications),
Yves Lafon (W3C/ERCIM).
</p></div><div class="div1">
<h2><a name="refs" id="refs"></a>6 References</h2><div class="div2">
<h3><a name="idp1353712" id="idp1353712"></a>6.1 Normative References</h3><dl><dt class="label"><a name="RFC2119" id="RFC2119"></a>RFC 2119</dt><dd>
<a href="http://www.ietf.org/rfc/rfc2119.txt"><cite>
Key words for use in RFCs to Indicate Requirement Levels
</cite></a>
, S. Bradner, Author.
Internet Engineering Task Force, March 1997.
Available at <a href="http://www.ietf.org/rfc/rfc2119.txt">http://www.ietf.org/rfc/rfc2119.txt</a>.</dd><dt class="label"><a name="RFC3023" id="RFC3023"></a>RFC 3023</dt><dd>
<a href="http://www.ietf.org/rfc/rfc3023.txt"><cite>
XML Media Types
</cite></a>
, M. Murata, S. St. Laurent, D. Kohn, Authors.
Internet Engineering Task Force, January 2001.
Available at <a href="http://www.ietf.org/rfc/rfc3023.txt">http://www.ietf.org/rfc/rfc3023.txt</a>.</dd><dt class="label"><a name="RFC3987" id="RFC3987"></a>RFC 3987</dt><dd>
<a href="http://www.ietf.org/rfc/rfc3987.txt"><cite>
Internationalized Resource Identifiers (IRIs)
</cite></a>
, M. Duerst and M. Suignard, Authors.
Internet Engineering Task Force, January 2005.
Available at <a href="http://www.ietf.org/rfc/rfc3987.txt">http://www.ietf.org/rfc/rfc3987.txt</a>.</dd></dl></div><div class="div2">
<h3><a name="idp1364848" id="idp1364848"></a>6.2 Informative References</h3><dl><dt class="label"><a name="SOAP11" id="SOAP11"></a>SOAP11</dt><dd>
<a href="http://www.w3.org/TR/2000/NOTE-SOAP-20000508/"><cite>
W3C Note, "Simple Object Access Protocol (SOAP) 1.1"
</cite></a>
, D. Box, et al, Editors.
World Wide Web Consortium (W3C), 8 May 2000.
Available at <a href="http://www.w3.org/TR/2000/NOTE-SOAP-20000508/">http://www.w3.org/TR/2000/NOTE-SOAP-20000508/</a>.</dd><dt class="label"><a name="SOAP12" id="SOAP12"></a>SOAP12</dt><dd>
<a href="http://www.w3.org/TR/soap12-part1/"><cite>
W3C Recommendation, "SOAP Version 1.2 Part 1: Messaging Framework"
</cite></a>
, M. Gudgin, M. Hadley, N. Mendelsohn, J-J. Moreau, H. Frystyk Nielson,
Editors.
World Wide Web Consortium (W3C), 27 April 2007.
Available at <a href="http://www.w3.org/TR/soap12-part1/">http://www.w3.org/TR/soap12-part1/</a>.</dd><dt class="label"><a name="AddrCore" id="AddrCore"></a>WS-Addressing</dt><dd>
<a href="http://www.w3.org/TR/ws-addr-core"><cite>
W3C Recommendation, "Web Services Addressing 1.0 (WS-Addressing)"
</cite></a>
, M. Gudgin, M. Hadley, T. Rogers, Editors.
World Wide Web Consortium (W3C), 9 May 2006.
Available at <a href="http://www.w3.org/TR/ws-addr-core">http://www.w3.org/TR/ws-addr-core</a>.</dd><dt class="label"><a name="Eventing" id="Eventing"></a>WS-Eventing</dt><dd>
<a href="http://www.w3.org/TR/ws-eventing"><cite>
W3C Working Group Draft, "Web Services Eventing
(WS-Eventing) 1.1"
</cite></a>
, D. Davis, et al., Editors.
World Wide Web Consortium (W3C), 15 September 2009.
Available at <a href="http://www.w3.org/TR/ws-eventing">http://www.w3.org/TR/ws-eventing</a>.</dd><dt class="label"><a name="MEX" id="MEX"></a>WS-MetadataExchange</dt><dd>
<a href="http://www.w3.org/TR/ws-metadata-exchange"><cite>
W3C Working Group Draft, "Web Services Metadata Exchange
(WS-MetadataExchange) 1.1"
</cite></a>
, D. Davis, et al., Editors.
World Wide Web Consortium (W3C), 15 September 2009.
Available at <a href="http://www.w3.org/TR/ws-metadata-exchange">http://www.w3.org/TR/ws-metadata-exchange</a>.</dd><dt class="label"><a name="XML-ID" id="XML-ID"></a>xml:id</dt><dd>
<a href="http://www.w3.org/TR/xml-id/"><cite>
W3C Recommendation, "xml:id Version 1.0"
</cite></a>
, J. Marsh, et al., Editors.
World Wide Web Consortium (W3C), 9 September 2005.
Available at <a href="http://www.w3.org/TR/xml-id/">http://www.w3.org/TR/xml-id/</a>.</dd><dt class="label"><a name="XMLInfoset" id="XMLInfoset"></a>XML Infoset</dt><dd>
<a href="http://www.w3.org/TR/xml-infoset"><cite>
W3C Recommendation, "XML Information Set (Second Edition)"
</cite></a>
, J. Cowan, R. Tobin, Editors.
World Wide Web Consortium (W3C), 4 February 2004.
Available at <a href="http://www.w3.org/TR/xml-infoset">http://www.w3.org/TR/xml-infoset</a>.</dd><dt class="label"><a name="XMLSchema1" id="XMLSchema1"></a>XMLSchema - Part 1</dt><dd>
<a href="http://www.w3.org/TR/xmlschema-1/"><cite>
W3C Recommendation, "XML Schema Part 1: Structures (Second Edition)"
</cite></a>
, H. Thompson, et al., Editors.
World Wide Web Consortium (W3C), 28 October 2004.
Available at <a href="http://www.w3.org/TR/xmlschema-1/">http://www.w3.org/TR/xmlschema-1/</a>.</dd><dt class="label"><a name="XMLSchema2" id="XMLSchema2"></a>XMLSchema - Part 2</dt><dd>
<a href="http://www.w3.org/TR/xmlschema-2/"><cite>
W3C Recommendation, "XML Schema Part 2: Datatypes (Second Edition)"
</cite></a>
, P. Biron, A. Malhotra, Editors.
World Wide Web Consortium (W3C), 28 October 2004.
Available at <a href="http://www.w3.org/TR/xmlschema-2/">http://www.w3.org/TR/xmlschema-2/</a>.</dd></dl></div></div></div><div class="back"><div class="div1">
<h2><a name="EVD_MIME" id="EVD_MIME"></a>A Registration of the application/evd+xml Media Type</h2><p>
This appendix defines the 'application/evd+xml' media type which can
be used to describe EventDescriptions documents serialized as XML.
</p><dl><dt class="label"> Type name: </dt><dd><p> application </p></dd><dt class="label"> Subtype name: </dt><dd><p> evd+xml </p></dd><dt class="label"> Required parameters: </dt><dd><p> none </p></dd><dt class="label"> Optional parameters: </dt><dd><p>
<b>charset</b><br />
This parameter has identical semantics to the charset parameter
of the 'application/xml' media type as specified in
<a href="#RFC3023">[RFC 3023]</a>.
</p></dd><dt class="label"> Encoding considerations: </dt><dd><p>
Identical to those of 'application/xml' as described in
<a href="#RFC3023">[RFC 3023]</a>, section 3.2, as applied to the
EventDescriptions document.
</p></dd><dt class="label"> Security considerations: </dt><dd><p> Same as that of Section 10 in <a href="#RFC3023">[RFC 3023]</a>. </p></dd><dt class="label"> Interoperability considerations: </dt><dd><p> There are no known interoperability issues. </p></dd><dt class="label"> Published specification: </dt><dd><p> Web Services Event Descriptions (this specification). </p><p> http://www.w3.org/TR/ws-event-descriptions </p></dd><dt class="label"> Applications which use this media type: </dt><dd><p> No known applications currently use this media type. </p></dd><dt class="label"> Additional Information: </dt><dd><p>
<b>Magic number(s):</b><br />
None.<br /><br />
<b>File extension(s):</b><br />
evd<br /><br />
<b>Fragment identifiers:</b><br />
An EventDescriptions fragment identifier references a particular
Event Type within an EventDescriptions document. The Event Type
referenced is the Event Type with the @id attribute whose
normalized value (per <a href="#XML-ID">[xml:id]</a>)
equals that of the fragment identifier component.
<br /><br />
For example, if the EventDescriptions document from
<a href="#EVDSample">Example 4-1</a>
were located at "http://www.example.com/eventtypes/oceanwatch", the
following URI references the Event Type defined in lines 12-14:
http://www.example.com/eventtypes/oceanwatch#WindReportEvent.
<br /><br />
<b>Macintosh file type code(s):</b><br />
No Macintosh file type code defined.
</p></dd><dt class="label">
Person and email address to contact for further information:
</dt><dd><p> World Wide Web Consortium <web-human@w3.org> </p></dd><dt class="label"> Intended usage: </dt><dd><p> COMMON </p></dd><dt class="label"> Restrictions on usage: </dt><dd><p> none. </p></dd><dt class="label"> Author/Change controller: </dt><dd><p>
The WS-EventDescriptions specification is a work product of the
World Wide Web Consortium's Web Service Resource Access Working
Group. The W3C has change control over these specifications.
</p></dd></dl></div><div class="div1">
<h2><a name="EVDXSD" id="EVDXSD"></a>B XML Schema for EventDescriptions</h2><p>
A normative copy of the XML Schema <a href="#XMLSchema1">[XMLSchema - Part 1]</a>,
<a href="#XMLSchema2">[XMLSchema - Part 2]</a> description for the EventDescriptions
element can be retrieved from the following address:
</p><div class="exampleOuter"><div class="exampleInner"><pre><a href="http://www.w3.org/2011/03/ws-evd/eventdescriptions.xsd">http://www.w3.org/2011/03/ws-evd/eventdescriptions.xsd</a></pre></div></div><p>
A non-normative copy of the XML schema is listed below for
convenience.
</p><div class="exampleOuter"><div class="exampleInner"><pre><xs:schema xmlns:xs='http://www.w3.org/2001/XMLSchema'
targetNamespace='http://www.w3.org/2011/03/ws-evd'
elementFormDefault='qualified' attributeFormDefault='unqualified'>
<xs:element name='EventDescriptions'>
<xs:complexType>
<xs:sequence>
<xs:element name='types'>
<xs:annotation>
<xs:documentation>Data type definitions that are relevant to described notifications.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<xs:element name='eventType' maxOccurs='unbounded'>
<xs:complexType>
<xs:sequence>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='id' type='xs:ID' use='required'/>
<xs:attribute name='element' type='xs:QName' use='optional'/>
<xs:attribute name='actionURI' type='xs:anyURI' use='optional'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
<xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
</xs:sequence>
<xs:attribute name='targetNamespace' type='xs:anyURI' use='required'/>
<xs:anyAttribute namespace='##other' processContents='lax'/>
</xs:complexType>
</xs:element>
</xs:schema></pre></div></div></div><div class="div1">
<h2><a name="changelog" id="changelog"></a>C Change Log</h2><table border="1"><tbody><tr><th> Data </th><th> Author </th><th> Description </th></tr><tr><td> 2010/01/19 </td><td> DD </td><td> Added resolution of issue
<a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8068">8068</a>
</td></tr><tr><td> 2010/03/09 </td><td> DD </td><td> Added resolution of issue
<a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=6463">6463</a>,
<a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8031">8031</a>,
<a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8198">8198</a>
</td></tr><tr><td> 2010/03/16 </td><td> DD </td><td> Added resolution of issue
<a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8900">8900</a>
</td></tr><tr><td> 2010/03/30 </td><td> DD </td><td> Added resolution of issue
<a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=9031">9031</a>
</td></tr><tr><td> 2010/04/20 </td><td> DD </td><td> Added resolution of issue
<a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=9321">9321</a>
</td></tr><tr><td> 2010/05/04 </td><td> DD </td><td> Added resolution of issue
<a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=9087">9087</a>
</td></tr><tr><td> 2010/08/18 </td><td> DD </td><td> Added resolution of issue
<a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=10376">10376</a>
</td></tr><tr><td> 2011/01/04 </td><td> DD </td><td> Added resolution of issue
<a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=11551">11551</a>
</td></tr><tr><td> 2011/07/12 </td><td> DD </td><td> Added resolution of issue
<a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=13227">13227</a>
</td></tr></tbody></table></div></div></body></html>