- From: Doug Davis via cvs-syncmail <cvsmail@w3.org>
- Date: Tue, 06 Oct 2009 16:40:22 +0000
- To: public-ws-resource-access-notifications@w3.org
Update of /w3ccvs/WWW/2002/ws/ra/edcopies
In directory hutz:/tmp/cvs-serv14876
Modified Files:
wsenum.html wsenum.xml
Log Message:
7587
Index: wsenum.html
===================================================================
RCS file: /w3ccvs/WWW/2002/ws/ra/edcopies/wsenum.html,v
retrieving revision 1.70
retrieving revision 1.71
diff -u -d -r1.70 -r1.71
--- wsenum.html 6 Oct 2009 12:29:42 -0000 1.70
+++ wsenum.html 6 Oct 2009 16:40:20 -0000 1.71
@@ -57,21 +57,22 @@
3.6 <a href="#EnumerationEnd">EnumerationEnd</a><br/>
4 <a href="#Faults">Faults</a><br/>
4.1 <a href="#InvalidExpirationTime">InvalidExpirationTime</a><br/>
- 4.2 <a href="#UnsupportedExpirationTime">UnsupportedExpirationTime</a><br/>
- 4.3 <a href="#FilteringNotSupported">FilteringNotSupported</a><br/>
- 4.4 <a href="#FilterDialectRequestedUnavailable">FilterDialectRequestedUnavailable</a><br/>
- 4.5 <a href="#CannotProcessFilter">CannotProcessFilter</a><br/>
- 4.6 <a href="#InvalidEnumerationContext">InvalidEnumerationContext</a><br/>
- 4.7 <a href="#TimedOut">TimedOut</a><br/>
- 4.8 <a href="#UnableToRenew">UnableToRenew</a><br/>
- 4.9 <a href="#UnusableEPR">UnusableEPR</a><br/>
+ 4.2 <a href="#ExpirationTimeExceeded">ExpirationTimeExceeded</a><br/>
+ 4.3 <a href="#UnsupportedExpirationTime">UnsupportedExpirationTime</a><br/>
+ 4.4 <a href="#FilteringNotSupported">FilteringNotSupported</a><br/>
+ 4.5 <a href="#FilterDialectRequestedUnavailable">FilterDialectRequestedUnavailable</a><br/>
+ 4.6 <a href="#CannotProcessFilter">CannotProcessFilter</a><br/>
+ 4.7 <a href="#InvalidEnumerationContext">InvalidEnumerationContext</a><br/>
+ 4.8 <a href="#TimedOut">TimedOut</a><br/>
+ 4.9 <a href="#UnableToRenew">UnableToRenew</a><br/>
+ 4.10 <a href="#UnusableEPR">UnusableEPR</a><br/>
5 <a href="#Security">Security Considerations</a><br/>
6 <a href="#metadata">WS-Enumeration Metadata</a><br/>
- 6.1 <a href="#iddiv2_1_1895">Enumeration Assertion</a><br/>
+ 6.1 <a href="#iddiv2_1_1996">Enumeration Assertion</a><br/>
7 <a href="#acks">Acknowledgements</a><br/>
8 <a href="#refs">References</a><br/>
- 8.1 <a href="#iddiv2_1_1984">Normative References</a><br/>
- 8.2 <a href="#iddiv2_1_2170">Informative References</a><br/>
+ 8.1 <a href="#iddiv2_1_2085">Normative References</a><br/>
+ 8.2 <a href="#iddiv2_1_2271">Informative References</a><br/>
</p>
<h3><a name="appendices" id="appendices"/>Appendices</h3><p class="toc">A <a href="#schema">XML Schema</a><br/>
B <a href="#WSDL">WSDL</a><br/>
@@ -359,7 +360,11 @@
<b>[Body]</b>
<wsen:Enumerate ...>
<wsen:EndTo><em>endpoint-reference</em></wsen:EndTo> ?
- <wsen:Expires>(<em>xs:dateTime</em> | <em>xs:duration</em>)</wsen:Expires> ?
+ <wsen:Expires min="(<em>xs:dateTime</em> | <em>xs:duration</em>)"?
+ max="(<em>xs:dateTime</em> | <em>xs:duration</em>)"?
+ exact="<em>xs:boolean</em>"? ...>
+ (<em>xs:dateTime</em> | <em>xs:duration</em>)
+ </wsen:Expires> ?
<wsen:Filter Dialect="<em>xs:anyURI</em>"?> <em>xs:any</em> </wsen:Filter> ?
<em>xs:any</em>*
</wsen:Enumerate></pre></div></div><p>
@@ -375,36 +380,29 @@
message. The endpoint to which the EndTo EPR
refers MUST support the EnumerationEndPortType portType.
</p></dd><dt class="label"><b>[Body]</b>/wsen:Enumerate/wsen:Expires </dt><dd><p>
- Requested expiration time for the
- enumeration. (No implied value.) The data source defines the actual
- expiration and is not constrained to use a time less or greater
- than the requested expiration. The expiration time MAY be a
- specific time or a duration from the enumeration's creation time.
- Both specific times and durations are interpreted based on the data
- source's clock.
- </p><p>
- If this element does not appear, then the
- request is for an enumeration that will not expire. That is, the
- consumer is requesting the data source to create an enumeration
- with an indefinite lifetime. If the data source grants such an
- enumeration, it will terminate when the end of the enumeration is
- reached, or if the consumer sends a Release request, or by the data
- source at any time for reasons such as connection termination,
- resource constraints, or system shut-down.
- </p><p>
- If the expiration time is either a zero
- duration or a specific time that occurs in the past according to
- the data source, then the request MUST fail, and the data source
- MUST generate a wsen:InvalidExpirationTime fault indicating that an
- invalid expiration time was requested.
+ This OPTIONAL element can be used by the Subscriber to indicate the
+ expiration time of the requested Subscription. The value of this
+ element indicates the desired expiration time for the subscription.
+ The implied default is indefinite (no expiry). The value of this
+ element MUST be between the values of the @min and @max attributes
+ inclusive. If the request is malformed, the event source
+ MUST generate a wsen:InvalidExpirationTime fault.
</p><p>
- Some data sources might not have a "wall time"
- clock available, and so are able only to accept durations as
- expirations. If such a source receives an Enumerate request
- containing a specific time expiration, then the request MUST fail;
- if so, the data source SHOULD generate a
- wsen:UnsupportedExpirationTime fault indicating that an
- unsupported expiration type was requested.
+ If the wsen:Expires element is present and the event source is not
+ able to grant an expiry time within range indicated by the @min and
+ @max attribute values, it MUST generate a
+ wsen:ExpirationTimeExceeded fault.
+ </p></dd><dt class="label"><b>[Body]</b>/wsen:Enumerate/wsen:Expires@min </dt><dd><p>
+ The implied default is PT0S. This specifies the minimum expiration
+ time that the event subscriber is willing to accept.
+ </p></dd><dt class="label"><b>[Body]</b>/wsen:Enumerate/wsen:Expires@max </dt><dd><p>
+ The implied default is indefinite (no expiry). This specifies the
+ maximum expiration time that the event subscriber is willing to accept.
+ </p></dd><dt class="label"><b>[Body]</b>/wsen:Enumerate/wsen:Expires@exact </dt><dd><p>
+ The default value is "false" in which case this attribute has no
+ effect. If this attribute value is "true" both @min and @max
+ attributes MUST be ignored and are treated as if they had the same
+ value as the wsen:Expires element.
</p></dd><dt class="label"><b>[Body]</b>/wsen:Enumerate/wsen:Filter </dt><dd><p>
This optional element contains a Boolean
predicate in some dialect (see <b>[<a href="#Dialect">[Body]/wsen:Enumerate/wsen:Filter/@Dialect </a>]</b>)
@@ -483,13 +481,19 @@
<b>[Body]</b>
<wsen:EnumerateResponse ...>
- <wsen:Expires>(<em>xs:dateTime</em> | <em>xs:duration</em>)</wsen:Expires> ?
+ <wsen:GrantedExpires>
+ (<em>xs:dateTime</em> | <em>xs:duration</em>)
+ </wsen:GrantedExpires> ?
<wsen:EnumerationContext>...</wsen:EnumerationContext>
<em>xs:any</em>*
</wsen:EnumerateResponse></pre></div></div><p>
The following describes additional, normative
constraints on the outline listed above:
- </p><dl><dt class="label"><b>[Body]</b>/wsen:EnumerateResponse/wsen:Expires </dt><dd><p>
+ </p><dl><dt class="label"><b>[Body]</b>/wsen:EnumerateResponse/wsen:GrantedExpires </dt><dd><p>
+ The value of this OPTIONAL element indicates the expiration time (or
+ duration) granted by the event source. If this element is missing the
+ granted expiration time is indefinite.
+ </p><p>
The expiration time assigned by the data
source. The expiration time MAY be either an absolute time or a
duration but SHOULD be of the same type as the requested expiration
@@ -819,7 +823,11 @@
<b>[Body]</b>
<wsen:Renew ...>
<wsen:EnumerationContext>...</wsen:EnumerationContext>
- <wsen:Expires>(<em>xs:dateTime</em> | <em>xs:duration</em>)</wsen:Expires> ?
+ <wsen:Expires min="(<em>xs:dateTime</em> | <em>xs:duration</em>)"?
+ max="(<em>xs:dateTime</em> | <em>xs:duration</em>)"?
+ exact="<em>xs:boolean</em>"? ...>
+ (<em>xs:dateTime</em> | <em>xs:duration</em>)
+ </wsen:Expires> ?
<em>xs:any</em>*
</wsen:Renew></pre></div></div><p>
Components of the outline listed above are
@@ -850,14 +858,16 @@
<b>[Body]</b>
<wsen:RenewResponse ...>
- <wsen:Expires>(<em>xs:dateTime</em> | <em>xs:duration</em>)</wsen:Expires> ?
+ <wsen:GrantedExpires>
+ (<em>xs:dateTime</em> | <em>xs:duration</em>)
+ </wsen:GrantedExpires> ?
<wsen:EnumerationContext>...</wsen:EnumerationContext> ?
<em>xs:any</em>*
</wsen:RenewResponse></pre></div></div><p>
Components of the outline listed above are
constrained as for a response to an Enumerate request
(see <a href="#Enumerate"><b>3.1 Enumerate</b></a>) with the following addition:
- </p><dl><dt class="label"><b>[Body]</b>/wsen:RenewResponse/wsen:Expires </dt><dd><p>
+ </p><dl><dt class="label"><b>[Body]</b>/wsen:RenewResponse/wsen:GrantedExpires </dt><dd><p>
If the requested expiration is a duration,
then the implied start of that duration is the time when the data
source starts processing the Renew request.
@@ -898,7 +908,9 @@
<b>[Body]</b>
<wsen:GetStatusResponse ...>
- <wsen:Expires>(<em>xs:dateTime</em> | <em>xs:duration</em>)</wsen:Expires> ?
+ <wsen:GrantedExpires>
+ (<em>xs:dateTime</em> | <em>xs:duration</em>)
+ </wsen:GrantedExpires> ?
<em>xs:any</em>*
</wsen:GetStatusResponse></pre></div></div><p>
Components of the outline listed above are
@@ -1089,25 +1101,30 @@
</s11:Body>
</s11:Envelope></pre></div></div><div class="div2">
<h3><a name="InvalidExpirationTime" id="InvalidExpirationTime"/>4.1 InvalidExpirationTime</h3><p>
- This fault is generated if the Enumerate expiration time is either a
- zero duration or a specific time that occurs in the past according to
- the data source.
+ This fault is generated when a request specifies an
+ expiration that is malformed.
</p><table border="1"><tbody><tr><td><b>[Code]</b></td><td> s12:Sender </td></tr><tr><td><b>[Subcode]</b></td><td> wsen:InvalidExpirationTime </td></tr><tr><td><b>[Reason]</b></td><td>
Invalid expiration time.
</td></tr><tr><td><b>[Detail]</b></td><td/></tr></tbody></table></div><div class="div2">
-<h3><a name="UnsupportedExpirationTime" id="UnsupportedExpirationTime"/>4.2 UnsupportedExpirationTime</h3><p>
+<h3><a name="ExpirationTimeExceeded" id="ExpirationTimeExceeded"/>4.2 ExpirationTimeExceeded</h3><p>
+ This fault is generated when a request specifies an
+ expiration that is not within the min/max range.
+ </p><table border="1"><tbody><tr><td><b>[Code]</b></td><td> s12:Sender </td></tr><tr><td><b>[Subcode]</b></td><td> wsen:ExpirationTimeExceeded </td></tr><tr><td><b>[Reason]</b></td><td>
+ The expiration time requested is not within the min/max range.
+ </td></tr><tr><td><b>[Detail]</b></td><td/></tr></tbody></table></div><div class="div2">
+<h3><a name="UnsupportedExpirationTime" id="UnsupportedExpirationTime"/>4.3 UnsupportedExpirationTime</h3><p>
This fault is generated if the Enumerate expiration time is
specified not as a duration.
</p><table border="1"><tbody><tr><td><b>[Code]</b></td><td> s12:Sender </td></tr><tr><td><b>[Subcode]</b></td><td> wsen:UnsupportedExpirationTime </td></tr><tr><td><b>[Reason]</b></td><td>
Unsupported expiration time.
</td></tr><tr><td><b>[Detail]</b></td><td/></tr></tbody></table></div><div class="div2">
-<h3><a name="FilteringNotSupported" id="FilteringNotSupported"/>4.3 FilteringNotSupported</h3><p>
+<h3><a name="FilteringNotSupported" id="FilteringNotSupported"/>4.4 FilteringNotSupported</h3><p>
This fault is generated if the data source does not support
filters.
</p><table border="1"><tbody><tr><td><b>[Code]</b></td><td> s12:Sender </td></tr><tr><td><b>[Subcode]</b></td><td> wsen:FilteringNotSupported </td></tr><tr><td><b>[Reason]</b></td><td>
Filtering not supported.
</td></tr><tr><td><b>[Detail]</b></td><td/></tr></tbody></table></div><div class="div2">
-<h3><a name="FilterDialectRequestedUnavailable" id="FilterDialectRequestedUnavailable"/>4.4 FilterDialectRequestedUnavailable</h3><p>
+<h3><a name="FilterDialectRequestedUnavailable" id="FilterDialectRequestedUnavailable"/>4.5 FilterDialectRequestedUnavailable</h3><p>
This fault is generated if the data source does not support
the requested filter dialect.
</p><table border="1"><tbody><tr><td><b>[Code]</b></td><td> s12:Sender </td></tr><tr><td><b>[Subcode]</b></td><td> wsen:FilterDialectRequestedUnavailable </td></tr><tr><td><b>[Reason]</b></td><td>
@@ -1116,13 +1133,13 @@
<wsen:SupportedDialect> +
<br/><em>Optional; repeating; one per filter dialect supported by the
receiver</em></td></tr></tbody></table></div><div class="div2">
-<h3><a name="CannotProcessFilter" id="CannotProcessFilter"/>4.5 CannotProcessFilter</h3><p>
+<h3><a name="CannotProcessFilter" id="CannotProcessFilter"/>4.6 CannotProcessFilter</h3><p>
This fault is generated if the data source can not process the
filter content.
</p><table border="1"><tbody><tr><td><b>[Code]</b></td><td> s12:Sender </td></tr><tr><td><b>[Subcode]</b></td><td> wsen:CannotProcessFilter </td></tr><tr><td><b>[Reason]</b></td><td>
Cannot filter as requested.
</td></tr><tr><td><b>[Detail]</b></td><td/></tr></tbody></table></div><div class="div2">
-<h3><a name="InvalidEnumerationContext" id="InvalidEnumerationContext"/>4.6 InvalidEnumerationContext</h3><p>
+<h3><a name="InvalidEnumerationContext" id="InvalidEnumerationContext"/>4.7 InvalidEnumerationContext</h3><p>
This fault is generated if the enumeration context is invalid.
</p><table border="1"><tbody><tr><td><b>[Code]</b></td><td> s12:Receiver </td></tr><tr><td><b>[Subcode]</b></td><td> wsen:InvalidEnumerationContext </td></tr><tr><td><b>[Reason]</b></td><td><em>
Text explaining why the enumeration context is no longer valid, or
@@ -1131,11 +1148,11 @@
<em>
if no additional information is available.
</em></td></tr><tr><td><b>[Detail]</b></td><td/></tr></tbody></table></div><div class="div2">
-<h3><a name="TimedOut" id="TimedOut"/>4.7 TimedOut</h3><p>
+<h3><a name="TimedOut" id="TimedOut"/>4.8 TimedOut</h3><p>
This fault is generated if the data source times out is the
wsen:MaxTime is reached.
</p><table border="1"><tbody><tr><td><b>[Code]</b></td><td> s12:Receiver </td></tr><tr><td><b>[Subcode]</b></td><td> wsen:TimedOut </td></tr><tr><td><b>[Reason]</b></td><td> Timeout. </td></tr><tr><td><b>[Detail]</b></td><td/></tr></tbody></table></div><div class="div2">
-<h3><a name="UnableToRenew" id="UnableToRenew"/>4.8 UnableToRenew</h3><p>
+<h3><a name="UnableToRenew" id="UnableToRenew"/>4.9 UnableToRenew</h3><p>
This fault is generated if the data source is unable to
renew the enumeration.
</p><table border="1"><tbody><tr><td><b>[Code]</b></td><td> s12:Receiver </td></tr><tr><td><b>[Subcode]</b></td><td> wsen:UnableToRenew </td></tr><tr><td><b>[Reason]</b></td><td><em>
@@ -1145,7 +1162,7 @@
<em>
if no additional information is available.
</em></td></tr><tr><td><b>[Detail]</b></td><td/></tr></tbody></table></div><div class="div2">
-<h3><a name="UnusableEPR" id="UnusableEPR"/>4.9 UnusableEPR</h3><p>
+<h3><a name="UnusableEPR" id="UnusableEPR"/>4.10 UnusableEPR</h3><p>
This fault MAY be generated when a Data Source detects
that the wsen:EndTo EPR is unusable.
</p><table border="1"><tbody><tr><td><b>[Code]</b></td><td>s12:Sender</td></tr><tr><td><b>[Subcode]</b></td><td>wsen:UnusableEPR</td></tr><tr><td><b>[Reason]</b></td><td>The wsen:EndTo EPR is unusable.</td></tr><tr><td><b>[Detail]</b></td><td><em> Details as to why the EPR is unusable. </em></td></tr></tbody></table></div></div><div class="div1">
@@ -1259,7 +1276,7 @@
indicate a particular security mechanism used to protect the
WS-Enumeration operations supported by this endpoint.
</p><div class="div2">
-<h3><a name="iddiv2_1_1895" id="iddiv2_1_1895"/>6.1 Enumeration Assertion</h3><p>
+<h3><a name="iddiv2_1_1996" id="iddiv2_1_1996"/>6.1 Enumeration Assertion</h3><p>
The mechanism for indicating that a binding or endpoint conforms to the
WS-Enumeration specification is through the use of the Web Services
Policy - Framework <a href="#wspolicy">[WS-Policy]</a> and Web Services Policy -
@@ -1348,7 +1365,7 @@
Yves Lafon (W3C).
</p></div><div class="div1">
<h2><a name="refs" id="refs"/>8 References</h2><div class="div2">
-<h3><a name="iddiv2_1_1984" id="iddiv2_1_1984"/>8.1 Normative References</h3><dl><dt class="label"><a name="RFC2119" id="RFC2119"/>RFC 2119</dt><dd><a href="http://www.ietf.org/rfc/rfc2119.txt"><cite>
+<h3><a name="iddiv2_1_2085" id="iddiv2_1_2085"/>8.1 Normative References</h3><dl><dt class="label"><a name="RFC2119" id="RFC2119"/>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.
@@ -1420,7 +1437,7 @@
, J. Clark, S. DeRose, Editors.
World Wide Web Consortium (W3C), 16 November 1999.
Available at <a href="http://www.w3.org/TR/xpath">http://www.w3.org/TR/xpath</a>.</dd></dl></div><div class="div2">
-<h3><a name="iddiv2_1_2170" id="iddiv2_1_2170"/>8.2 Informative References</h3><dl><dt class="label"><a name="WSSecureConversation" id="WSSecureConversation"/>WS-SecureConversation</dt><dd><a href="http://docs.oasis-open.org/ws-sx/ws-secureconversation/v1.4/os/ws-secureconversation-1.4-spec-os.doc"><cite>
+<h3><a name="iddiv2_1_2271" id="iddiv2_1_2271"/>8.2 Informative References</h3><dl><dt class="label"><a name="WSSecureConversation" id="WSSecureConversation"/>WS-SecureConversation</dt><dd><a href="http://docs.oasis-open.org/ws-sx/ws-secureconversation/v1.4/os/ws-secureconversation-1.4-spec-os.doc"><cite>
OASIS Standard, "Web Services Secure Conversation
(WS-SecureConversation) 1.4"
</cite></a>
@@ -1484,10 +1501,28 @@
</xs:restriction>
</xs:simpleType>
- <xs:simpleType name="ExpirationType">
- <xs:union memberTypes="xs:dateTime tns:NonNegativeDurationType" />
+ <simpleType name="DurationDateTime">
+ <xs:union memberTypes="xs:dateTime tns:NonNegativeDurationType" />
</xs:simpleType>
+ <xs:complexType name="MiniExpirationType">
+ <xs:simpleContent>
+ <xs:extension base="tns:DurationDateTime">
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+
+ <xs:complexType name="ExpirationType">
+ <xs:simpleContent>
+ <xs:extension base="tns:MiniExpirationType">
+ <xs:attribute name="min" type="tns:DurationDateTime" use="optional"/>
+ <xs:attribute name="max" type="tns:DurationDateTime" use="optional"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+
<xs:complexType name="EnumerationContextType">
<xs:complexContent mixed="true">
<xs:restriction base="xs:anyType">
@@ -1540,7 +1575,7 @@
<xs:element name="EnumerateResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="Expires" type="tns:ExpirationType"
+ <xs:element name="GrantedExpires" type="tns:MiniExpirationType"
minOccurs="0" />
<xs:element name="EnumerationContext"
type="tns:EnumerationContextType" />
@@ -1604,7 +1639,7 @@
<xs:element name="RenewResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="Expires" type="tns:ExpirationType"
+ <xs:element name="GrnatedExpires" type="tns:MiniExpirationType"
minOccurs="0" />
<xs:element name="EnumerationContext"
type="tns:EnumerationContextType"
@@ -1633,7 +1668,7 @@
<xs:element name="GetStatusResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="Expires" type="tns:ExpirationType"
+ <xs:element name="GrantedExpires" type="tns:MiniExpirationType"
minOccurs="0" />
<xs:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded" />
@@ -1892,4 +1927,5 @@
<a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=7716">7716</a></td></tr><tr><td> 2009/10/02 </td><td> DD </td><td> Added resolution of issue
<a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=7426">7426</a></td></tr><tr><td> 2009/10/05 </td><td> DD </td><td> Added resolution of issues
<a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=6403">6403</a>,
- <a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=6721">6721</a></td></tr></tbody></table></div></div></body></html>
\ No newline at end of file
+ <a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=6721">6721</a></td></tr><tr><td> 2009/10/06 </td><td> DD </td><td> Added resolution of issue
+ <a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=7587">7587</a></td></tr></tbody></table></div></div></body></html>
\ No newline at end of file
Index: wsenum.xml
===================================================================
RCS file: /w3ccvs/WWW/2002/ws/ra/edcopies/wsenum.xml,v
retrieving revision 1.63
retrieving revision 1.64
diff -u -d -r1.63 -r1.64
--- wsenum.xml 6 Oct 2009 12:29:42 -0000 1.63
+++ wsenum.xml 6 Oct 2009 16:40:20 -0000 1.64
@@ -612,7 +612,11 @@
<kw>[Body]</kw>
<wsen:Enumerate ...>
<wsen:EndTo><emph>endpoint-reference</emph></wsen:EndTo> ?
- <wsen:Expires>(<emph>xs:dateTime</emph> | <emph>xs:duration</emph>)</wsen:Expires> ?
+ <wsen:Expires min="(<emph>xs:dateTime</emph> | <emph>xs:duration</emph>)"?
+ max="(<emph>xs:dateTime</emph> | <emph>xs:duration</emph>)"?
+ exact="<emph>xs:boolean</emph>"? ...>
+ (<emph>xs:dateTime</emph> | <emph>xs:duration</emph>)
+ </wsen:Expires> ?
<wsen:Filter Dialect="<emph>xs:anyURI</emph>"?> <emph>xs:any</emph> </wsen:Filter> ?
<emph>xs:any</emph>*
</wsen:Enumerate></eg>
@@ -644,46 +648,58 @@
<label> <kw>[Body]</kw>/wsen:Enumerate/wsen:Expires </label>
<def>
<p>
- Requested expiration time for the
- enumeration. (No implied value.) The data source defines the actual
- expiration and is not constrained to use a time less or greater
- than the requested expiration. The expiration time MAY be a
- specific time or a duration from the enumeration's creation time.
- Both specific times and durations are interpreted based on the data
- source's clock.
+ This OPTIONAL element can be used by the Subscriber to indicate the
+ expiration time of the requested Subscription. The value of this
+ element indicates the desired expiration time for the subscription.
+ The implied default is indefinite (no expiry). The value of this
+ element MUST be between the values of the @min and @max attributes
+ inclusive. If the request is malformed, the event source
+ MUST generate a wsen:InvalidExpirationTime fault.
</p>
+
<p>
- If this element does not appear, then the
- request is for an enumeration that will not expire. That is, the
- consumer is requesting the data source to create an enumeration
- with an indefinite lifetime. If the data source grants such an
- enumeration, it will terminate when the end of the enumeration is
- reached, or if the consumer sends a Release request, or by the data
- source at any time for reasons such as connection termination,
- resource constraints, or system shut-down.
+ If the wsen:Expires element is present and the event source is not
+ able to grant an expiry time within range indicated by the @min and
+ @max attribute values, it MUST generate a
+ wsen:ExpirationTimeExceeded fault.
</p>
+
+ </def>
+ </gitem>
+
+ <gitem>
+ <label> <kw>[Body]</kw>/wsen:Enumerate/wsen:Expires@min </label>
+ <def>
<p>
- If the expiration time is either a zero
- duration or a specific time that occurs in the past according to
- the data source, then the request MUST fail, and the data source
- MUST generate a wsen:InvalidExpirationTime fault indicating that an
- invalid expiration time was requested.
+ The implied default is PT0S. This specifies the minimum expiration
+ time that the event subscriber is willing to accept.
</p>
-
+ </def>
+ </gitem>
+
+ <gitem>
+ <label> <kw>[Body]</kw>/wsen:Enumerate/wsen:Expires@max </label>
+ <def>
<p>
- Some data sources might not have a "wall time"
- clock available, and so are able only to accept durations as
- expirations. If such a source receives an Enumerate request
- containing a specific time expiration, then the request MUST fail;
- if so, the data source SHOULD generate a
- wsen:UnsupportedExpirationTime fault indicating that an
- unsupported expiration type was requested.
+ The implied default is indefinite (no expiry). This specifies the
+ maximum expiration time that the event subscriber is willing to accept.
</p>
-
</def>
</gitem>
<gitem>
+ <label> <kw>[Body]</kw>/wsen:Enumerate/wsen:Expires@exact </label>
+ <def>
+ <p>
+ The default value is "false" in which case this attribute has no
+ effect. If this attribute value is "true" both @min and @max
+ attributes MUST be ignored and are treated as if they had the same
+ value as the wsen:Expires element.
+ </p>
+ </def>
+ </gitem>
+
+ <gitem>
<label> <kw>[Body]</kw>/wsen:Enumerate/wsen:Filter </label>
<def>
<p>
@@ -821,7 +837,9 @@
<kw>[Body]</kw>
<wsen:EnumerateResponse ...>
- <wsen:Expires>(<emph>xs:dateTime</emph> | <emph>xs:duration</emph>)</wsen:Expires> ?
+ <wsen:GrantedExpires>
+ (<emph>xs:dateTime</emph> | <emph>xs:duration</emph>)
+ </wsen:GrantedExpires> ?
<wsen:EnumerationContext>...</wsen:EnumerationContext>
<emph>xs:any</emph>*
</wsen:EnumerateResponse></eg>
@@ -834,9 +852,14 @@
<glist>
<gitem>
- <label> <kw>[Body]</kw>/wsen:EnumerateResponse/wsen:Expires </label>
+ <label> <kw>[Body]</kw>/wsen:EnumerateResponse/wsen:GrantedExpires </label>
<def>
<p>
+ The value of this OPTIONAL element indicates the expiration time (or
+ duration) granted by the event source. If this element is missing the
+ granted expiration time is indefinite.
+ </p>
+ <p>
The expiration time assigned by the data
source. The expiration time MAY be either an absolute time or a
duration but SHOULD be of the same type as the requested expiration
@@ -1334,7 +1357,11 @@
<kw>[Body]</kw>
<wsen:Renew ...>
<wsen:EnumerationContext>...</wsen:EnumerationContext>
- <wsen:Expires>(<emph>xs:dateTime</emph> | <emph>xs:duration</emph>)</wsen:Expires> ?
+ <wsen:Expires min="(<emph>xs:dateTime</emph> | <emph>xs:duration</emph>)"?
+ max="(<emph>xs:dateTime</emph> | <emph>xs:duration</emph>)"?
+ exact="<emph>xs:boolean</emph>"? ...>
+ (<emph>xs:dateTime</emph> | <emph>xs:duration</emph>)
+ </wsen:Expires> ?
<emph>xs:any</emph>*
</wsen:Renew></eg>
</example>
@@ -1386,7 +1413,9 @@
<kw>[Body]</kw>
<wsen:RenewResponse ...>
- <wsen:Expires>(<emph>xs:dateTime</emph> | <emph>xs:duration</emph>)</wsen:Expires> ?
+ <wsen:GrantedExpires>
+ (<emph>xs:dateTime</emph> | <emph>xs:duration</emph>)
+ </wsen:GrantedExpires> ?
<wsen:EnumerationContext>...</wsen:EnumerationContext> ?
<emph>xs:any</emph>*
</wsen:RenewResponse></eg>
@@ -1400,7 +1429,7 @@
<glist>
<gitem>
- <label> <kw>[Body]</kw>/wsen:RenewResponse/wsen:Expires </label>
+ <label> <kw>[Body]</kw>/wsen:RenewResponse/wsen:GrantedExpires </label>
<def>
<p>
If the requested expiration is a duration,
@@ -1474,7 +1503,9 @@
<kw>[Body]</kw>
<wsen:GetStatusResponse ...>
- <wsen:Expires>(<emph>xs:dateTime</emph> | <emph>xs:duration</emph>)</wsen:Expires> ?
+ <wsen:GrantedExpires>
+ (<emph>xs:dateTime</emph> | <emph>xs:duration</emph>)
+ </wsen:GrantedExpires> ?
<emph>xs:any</emph>*
</wsen:GetStatusResponse></eg>
</example>
@@ -1817,9 +1848,8 @@
<head>InvalidExpirationTime</head>
<p>
- This fault is generated if the Enumerate expiration time is either a
- zero duration or a specific time that occurs in the past according to
- the data source.
+ This fault is generated when a request specifies an
+ expiration that is malformed.
</p>
<table border="1">
@@ -1846,6 +1876,38 @@
</table>
</div2>
+ <div2 id="ExpirationTimeExceeded">
+ <head>ExpirationTimeExceeded</head>
+
+ <p>
+ This fault is generated when a request specifies an
+ expiration that is not within the min/max range.
+ </p>
+
+ <table border="1">
+ <tbody>
+ <tr>
+ <td> <kw>[Code]</kw> </td>
+ <td> s12:Sender </td>
+ </tr>
+ <tr>
+ <td> <kw>[Subcode]</kw> </td>
+ <td> wsen:ExpirationTimeExceeded </td>
+ </tr>
+ <tr>
+ <td> <kw>[Reason]</kw> </td>
+ <td>
+ The expiration time requested is not within the min/max range.
+ </td>
+ </tr>
+ <tr>
+ <td> <kw>[Detail]</kw> </td>
+ <td> </td>
+ </tr>
+ </tbody>
+ </table>
+ </div2>
+
<div2 id="UnsupportedExpirationTime">
<head>UnsupportedExpirationTime</head>
@@ -2707,10 +2769,28 @@
</xs:restriction>
</xs:simpleType>
- <xs:simpleType name="ExpirationType">
- <xs:union memberTypes="xs:dateTime tns:NonNegativeDurationType" />
+ <simpleType name="DurationDateTime">
+ <xs:union memberTypes="xs:dateTime tns:NonNegativeDurationType" />
</xs:simpleType>
+ <xs:complexType name="MiniExpirationType">
+ <xs:simpleContent>
+ <xs:extension base="tns:DurationDateTime">
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+
+ <xs:complexType name="ExpirationType">
+ <xs:simpleContent>
+ <xs:extension base="tns:MiniExpirationType">
+ <xs:attribute name="min" type="tns:DurationDateTime" use="optional"/>
+ <xs:attribute name="max" type="tns:DurationDateTime" use="optional"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+
<xs:complexType name="EnumerationContextType">
<xs:complexContent mixed="true">
<xs:restriction base="xs:anyType">
@@ -2763,7 +2843,7 @@
<xs:element name="EnumerateResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="Expires" type="tns:ExpirationType"
+ <xs:element name="GrantedExpires" type="tns:MiniExpirationType"
minOccurs="0" />
<xs:element name="EnumerationContext"
type="tns:EnumerationContextType" />
@@ -2827,7 +2907,7 @@
<xs:element name="RenewResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="Expires" type="tns:ExpirationType"
+ <xs:element name="GrnatedExpires" type="tns:MiniExpirationType"
minOccurs="0" />
<xs:element name="EnumerationContext"
type="tns:EnumerationContextType"
@@ -2856,7 +2936,7 @@
<xs:element name="GetStatusResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="Expires" type="tns:ExpirationType"
+ <xs:element name="GrantedExpires" type="tns:MiniExpirationType"
minOccurs="0" />
<xs:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded" />
@@ -3373,6 +3453,13 @@
<loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=6721">6721</loc>
</td>
</tr>
+ <tr>
+ <td> 2009/10/06 </td>
+ <td> DD </td>
+ <td> Added resolution of issue
+ <loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=7587">7587</loc>
+ </td>
+ </tr>
</tbody>
</table>
</div1>
Received on Tuesday, 6 October 2009 16:40:25 UTC