- From: Doug Davis via cvs-syncmail <cvsmail@w3.org>
- Date: Fri, 29 Jan 2010 04:01:01 +0000
- To: public-ws-resource-access-notifications@w3.org
Update of /w3ccvs/WWW/2002/ws/ra/edcopies
In directory hutz:/tmp/cvs-serv23967
Modified Files:
wsfrag.html wsfrag.xml wst.html wst.xml
Log Message:
8302, 8180, 8299
Index: wst.xml
===================================================================
RCS file: /w3ccvs/WWW/2002/ws/ra/edcopies/wst.xml,v
retrieving revision 1.98
retrieving revision 1.99
diff -u -d -r1.98 -r1.99
--- wst.xml 28 Jan 2010 18:37:29 -0000 1.98
+++ wst.xml 29 Jan 2010 04:00:59 -0000 1.99
@@ -106,16 +106,32 @@
absence of any third parties. The server MAY change the representation of a
resource, MAY remove a resource entirely, or MAY bring back a resource that
was deleted.</p>
- <p>For instance, the server might store resource state information on a disk
- drive. If that drive crashes and the server recovers state information from a
- backup tape, changes that occurred after the backup was made will be
- lost.</p>
- <p>A server MAY have other operational processes that change resource state
- information. A server might run a background process that examines resources
- for objectionable content and deletes any such resources it finds. A server
- can purge resources that have not been accessed for some period of time. A
- server could apply storage quotas that cause it to occasionally purge
- resources.</p>
+ <p>
+ For instance, the server might store resource state information on a
+ disk drive. If that drive crashes and the server recovers state
+ information from a backup tape, changes that occurred after the
+ backup was made will be lost.
+ </p>
+
+ <p>
+ A server MAY have other operational processes that change resource state
+ information. For example, a server could purge resources that have not
+ been accessed for some period of time.
+ </p>
+
+ <p>
+ In addition to this, there MAY be application or process specific
+ reasons for a server to augment or transform the representation
+ provided by an update or create operation. For example, the server
+ might populate the optional properties of a newly created resource
+ with meaningful default values.
+ </p>
+
+ <p>
+ Finally all clients need to be aware that there might be other clients
+ simultaneously accessing, creating, and updating the same resources.
+ </p>
+
<p>In essence, the confirmation by a service of having processed a request to
create, modify, or delete a resource implies a commitment only at the instant
that the confirmation was generated. While the usual case is that
@@ -567,6 +583,9 @@
<kw>[Body]</kw>
<wst:GetResponse ...>
+ <wst:Representation ...>
+ <emph>xs:any</emph>?
+ </wst:Representation>?
<emph>xs:any</emph>*
</wst:GetResponse></eg>
</example>
@@ -578,11 +597,14 @@
<glist>
<gitem>
- <label> <kw>[Body]</kw>/wst:GetResponse </label>
+ <label> <kw>[Body]</kw>/wst:GetResponse/wst:Representation </label>
<def>
<p>
- This REQUIRED element MUST have as its first child element,
- an element that comprises the representation of the resource.
+ This element acts as a container for the full representation of
+ the resource. This element MUST be present if the corresponding
+ Get request did not specify a Dialect attribute. This element
+ MAY have no children in cases where there is no resource
+ representation.
</p>
</def>
</gitem>
@@ -655,13 +677,15 @@
</s:Header>
<s:Body>
<wst:GetResponse>
- <xxx:Customer>
- <xxx:first>Roy</xxx:first><xxx:last>Hill</xxx:last>
- <xxx:address>123 Main Street</xxx:address>
- <xxx:city>Manhattan Beach</xxx:city>
- <xxx:state>CA</xxx:state>
- <xxx:zip>90266</xxx:zip>
- </xxx:Customer>
+ <wst:Representation>
+ <xxx:Customer>
+ <xxx:first>Roy</xxx:first><xxx:last>Hill</xxx:last>
+ <xxx:address>123 Main Street</xxx:address>
+ <xxx:city>Manhattan Beach</xxx:city>
+ <xxx:state>CA</xxx:state>
+ <xxx:zip>90266</xxx:zip>
+ </xxx:Customer>
+ </wst:Representation>
</wst:GetResponse>
</s:Body>
</s:Envelope></eg>
@@ -711,6 +735,9 @@
<kw>[Body]</kw>
<wst:Put Dialect="<emph>xs:anyURI</emph>"? ...>
+ <wst:Representation ...>
+ <emph>xs:any</emph>?
+ <wst:Representation>?
<emph>xs:any</emph>*
</wst:Put></eg>
</example>
@@ -722,18 +749,6 @@
<glist>
<gitem>
- <label> <kw>[Body]</kw>/wst:Put </label>
- <def>
- <p>
- This REQUIRED element MUST have as its first child element,
- an element that comprises the representation of the resource
- that is to be replaced or instructions for updating the
- resource.
- </p>
- </def>
- </gitem>
-
- <gitem>
<label> <kw>[Body]</kw>/wst:Put@Dialect </label>
<def>
<p>
@@ -760,6 +775,19 @@
</def>
</gitem>
+ <gitem>
+ <label> <kw>[Body]</kw>/wst:Put/wst:Representation </label>
+ <def>
+ <p>
+ This element acts as a container for the full representation
+ of the resource. This element MUST be present if the Dialect
+ attribute is absent. This element MAY have no children. This
+ case MUST be interpreted as a request to remove the
+ resource's representation, not the resource itself.
+ </p>
+ </def>
+ </gitem>
+
</glist>
<p>
@@ -817,36 +845,24 @@
<kw>[Body]</kw>
<wst:PutResponse ...>
+ <wst:Representation ...>
+ <emph>xs:any</emph>?
+ </wst:Representation>?
<emph>xs:any</emph>*
</wst:PutResponse></eg>
</example>
<glist>
<gitem>
- <label> <kw>[Body]</kw>/wst:PutResponse </label>
+ <label> <kw>[Body]</kw>/wst:PutResponse/wst:Representation </label>
<def>
<p>
- This REQUIRED element, if it contains any child elements,
- MUST have as its first child element, an element that
- comprises the representation of the resource that has been
- updated.
- </p>
-
- <p>
- As an optimization and as a service to the requester,
- if there are no extension elements this
- element SHOULD be empty if the updated
- representation does not differ from the representation sent in
- the Put request message; that is, if the service accepted the
- new representation verbatim.
- </p>
-
- <p>
- Such a response (an empty wst:PutResponse) implies that the
- update request was successful in its entirety (assuming no
- intervening mutating operations are performed). A service MAY
- return the current representation of the resource as the
- child of the wst:PutResponse element even in this
- case, however.
+ This OPTIONAL element acts as a container for the full
+ representation of the resource. This element is intended for
+ use as an optimization to save the client the overhead of
+ having to perform a subsequent Get operation. A service
+ MAY include this element to return the current
+ representatin of the resource. This element MAY have no children
+ in cases where there is no resource representation.
</p>
</def>
@@ -882,13 +898,15 @@
</s:Header>
<s:Body>
<wst:Put>
- <xxx:Customer>
- <xxx:first>Roy</xxx:first><xxx:last>Hill</xxx:last>
- <xxx:address>321 Main Street</xxx:address>
- <xxx:city>Manhattan Beach</xxx:city>
- <xxx:state>CA</xxx:state>
- <xxx:zip>90266</xxx:zip>
- </xxx:Customer>
+ <wst:Representation>
+ <xxx:Customer>
+ <xxx:first>Roy</xxx:first><xxx:last>Hill</xxx:last>
+ <xxx:address>321 Main Street</xxx:address>
+ <xxx:city>Manhattan Beach</xxx:city>
+ <xxx:state>CA</xxx:state>
+ <xxx:zip>90266</xxx:zip>
+ </xxx:Customer>
+ </wst:Representation>
</wst:Put>
</s:Body>
</s:Envelope> </eg>
@@ -1116,6 +1134,9 @@
<kw>[Body]</kw>
<wst:Create Dialect="<emph>xs:anyURI</emph>"? ...>
+ <wst:Representation ...>
+ <emph>xs:any</emph>?
+ >/wst:Representation>?
<emph>xs:any</emph>*
</wst:Create></eg>
</example>
@@ -1126,22 +1147,6 @@
<glist>
<gitem>
- <label> <kw>[Body]</kw>/wst:Create </label>
- <def>
- <p>
- This REQUIRED element MAY contain zero or more child elements.
- If this element does not contain a child element then the
- resource will be created using default values. The first
- child element, if present, MUST be the literal resource
- representation, a representation of the constructor for the
- resource, or other instructions for creating the resource.
- If present, any extension elements MUST be included after
- the mandated first child element.
- </p>
- </def>
- </gitem>
-
- <gitem>
<label> <kw>[Body]</kw>/wst:Create@Dialect </label>
<def>
<p>
@@ -1156,6 +1161,20 @@
</def>
</gitem>
+ <gitem>
+ <label> <kw>[Body]</kw>/wst:Create/wst:Representation </label>
+ <def>
+ <p>
+ This OPTIONAL element acts as a container for the full
+ representation of the resource. If this element is not
+ present the resource MUST be created using default values
+ (equivalent to a null constructor). This element MAY have
+ no children, in which case the resource MUST be created with
+ an empty representation (equivalent to an empty constructor).
+ </p>
+ </def>
+ </gitem>
+
</glist>
<p>
@@ -1186,60 +1205,36 @@
<kw>[Body]</kw>
<wst:CreateResponse ...>
<wst:ResourceCreated><emph>endpoint-reference</emph></wst:ResourceCreated>
+ <wst:Representation ...>
+ <emph>xs:any</emph>?
+ </wst:Representation>?
<emph>xs:any</emph>*
</wst:CreateResponse></eg>
</example>
<glist>
<gitem>
- <label> <kw>[Body]</kw>/wst:CreateResponse </label>
+ <label> <kw>[Body]</kw>/wst:CreateResponse/wst:ResourceCreated </label>
<def>
<p>
- This REQUIRED element MUST have as its first child element
- an Endpoint Reference (wst:ResourceCreated element) to the
- newly created resource.
- </p>
-
- <p>
- A service MUST also return the current
- representation of the new resource as the second child
- of the wst:CreateResponse element if the
- created representation logically differs from the
- representation sent in the Create request message. That is,
- the initial representation is returned if one or more
- values present in Create message was specifically
- overridden with a different value during resource
- creation. If default values are used to complete a resource
- creation which were not present in the Create message, then
- this does not constitute a logical difference.
- </p>
-
- <p>
- As an optimization and as a service to the requestor, the
- wst:CreateResponse element of the response message SHOULD be
- empty, other than the ResourceCreated element, if the created
- representation does not logically differ from the
- representation sent in the Create request message and there
- are no extension elements; that is,
- if the service accepted the new representation or
- creation instructions verbatim. Such a response indicates
- that the request was completely successful
- (assuming no intervening mutating
- operations are performed). A service MAY return the current
- representation of the resource as the second child of the
- wst:CreateResponse element even in this case, however.
+ This required element MUST be an endpoint reference for the
+ newly created resource. This endpoint reference MUST
+ identify the resource for future Get, Put, and Delete
+ operations.
</p>
-
</def>
</gitem>
<gitem>
- <label> <kw>[Body]</kw>/wst:CreateResponse/wst:ResourceCreated </label>
+ <label> <kw>[Body]</kw>/wst:CreateResponse/wst:Representation </label>
<def>
<p>
- This required element MUST be an endpoint reference for the
- newly created resource. This endpoint reference MUST
- identify the resource for future Get, Put, and Delete
- operations.
+ This OPTIONAL element acts as a container for the full
+ representation of the resource. This element is intended for
+ use as an optimization to save the client the overhead of
+ having to perform a subsequent Get operation. A service
+ MAY include this element to return the current representation
+ of the resource. This element MAY have no children in cases
+ where there is no resource representation.
</p>
</def>
</gitem>
@@ -1270,13 +1265,15 @@
</s:Header>
<s:Body>
<wst:Create>
- <xxx:Customer>
- <xxx:first>Roy</xxx:first><xxx:last>Hill</xxx:last>
- <xxx:address>123 Main Street</xxx:address>
- <xxx:city>Manhattan Beach</xxx:city>
- <xxx:state>CA</xxx:state>
- <xxx:zip>90266</xxx:zip>
- </xxx:Customer>
+ <wst:Representation>
+ <xxx:Customer>
+ <xxx:first>Roy</xxx:first><xxx:last>Hill</xxx:last>
+ <xxx:address>123 Main Street</xxx:address>
+ <xxx:city>Manhattan Beach</xxx:city>
+ <xxx:state>CA</xxx:state>
+ <xxx:zip>90266</xxx:zip>
+ </xxx:Customer>
+ </wst:Representation>
</wst:Create>
</s:Body>
</s:Envelope> </eg>
@@ -2120,6 +2117,13 @@
<xs:import
namespace='http://www.w3.org/2005/08/addressing'
schemaLocation='http://www.w3.org/2006/03/addressing/ws-addr.xsd' />
+
+ <xs:complexType name='Representation'>
+ <xs:sequence>
+ <xs:any minOccurs='0' processContents='lax'/>
+ </xs:sequence>
+ <xs:anyAttribute namespace='##other' processContents='lax'/>
+ </xs:complexType>
<xs:element name='Get'>
<xs:complexType>
@@ -2134,6 +2138,7 @@
<xs:element name='GetResponse'>
<xs:complexType>
<xs:sequence>
+ <xs:element name='Representation' type='tns:Representation' minOccurs='1'/>
<xs:any minOccurs='1' maxOccurs='unbounded' namespace='##other' processContents='lax' />
</xs:sequence>
<xs:anyAttribute namespace='##other' processContents='lax' />
@@ -2143,6 +2148,7 @@
<xs:element name='Put'>
<xs:complexType>
<xs:sequence>
+ <xs:element name='Representation' type='tns:Representation' minOccurs='1'/>
<xs:any minOccurs='1' maxOccurs='unbounded' namespace='##other' processContents='lax' />
</xs:sequence>
<xs:attribute name='Dialect' type='xs:anyURI' use='optional' />
@@ -2153,6 +2159,7 @@
<xs:element name='PutResponse'>
<xs:complexType>
<xs:sequence>
+ <xs:element name='Representation' type='tns:Representation' minOccurs='1'/>
<xs:any minOccurs='1' namespace='##other' processContents='lax' />
</xs:sequence>
<xs:anyAttribute namespace='##other' processContents='lax' />
@@ -2181,6 +2188,7 @@
<xs:element name='Create'>
<xs:complexType>
<xs:sequence>
+ <xs:element name='Representation' type='tns:Representation' minOccurs='1'/>
<xs:any minOccurs='0' maxOccurs='unbounded' namespace='##other' processContents='lax' />
</xs:sequence>
<xs:attribute name='Dialect' type='xs:anyURI' use='optional' />
@@ -2192,6 +2200,7 @@
<xs:complexType>
<xs:sequence>
<xs:element name='ResourceCreated' type='wsa:EndpointReferenceType' />
+ <xs:element name='Representation' type='tns:Representation' minOccurs='1'/>
<xs:any minOccurs='0' namespace='##other' processContents='lax' />
</xs:sequence>
<xs:anyAttribute namespace='##other' processContents='lax' />
@@ -2737,6 +2746,15 @@
<loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=7774">7774</loc>
</td>
</tr>
+ <tr>
+ <td> 2010/01/27 </td>
+ <td> DD </td>
+ <td> Added resolution of issues
+ <loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8302">8302</loc>,
+ <loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8180">8180</loc>,
+ <loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8299">8299</loc>
+ </td>
+ </tr>
</tbody>
</table>
</div1>
Index: wsfrag.html
===================================================================
RCS file: /w3ccvs/WWW/2002/ws/ra/edcopies/wsfrag.html,v
retrieving revision 1.45
retrieving revision 1.46
diff -u -d -r1.45 -r1.46
--- wsfrag.html 28 Jan 2010 19:04:14 -0000 1.45
+++ wsfrag.html 29 Jan 2010 04:00:59 -0000 1.46
@@ -53,8 +53,8 @@
3.2 <a href="#Put">Put</a><br/>
3.3 <a href="#Delete">Delete</a><br/>
3.4 <a href="#Create">Create</a><br/>
-4 <a href="#iddiv1_1_776">Examples</a><br/>
- 4.1 <a href="#iddiv2_1_779">Examples</a><br/>
+4 <a href="#iddiv1_1_779">Examples</a><br/>
+ 4.1 <a href="#iddiv2_1_782">Examples</a><br/>
5 <a href="#QName">QName Expression Language</a><br/>
6 <a href="#XPathL1">XPath Level 1 Expression Language</a><br/>
7 <a href="#XPath10">XPath 1.0 Expression Language</a><br/>
@@ -63,10 +63,10 @@
8.2 <a href="#InvalidExpression">InvalidExpression</a><br/>
8.3 <a href="#UnsupportedMode">UnsupportedMode</a><br/>
9 <a href="#metadata">WS-Fragment Metadata</a><br/>
- 9.1 <a href="#iddiv2_1_1394">Fragment Assertion</a><br/>
+ 9.1 <a href="#iddiv2_1_1397">Fragment Assertion</a><br/>
10 <a href="#acks">Acknowledgements</a><br/>
11 <a href="#refs">References</a><br/>
- 11.1 <a href="#iddiv2_1_1447">Normative References</a><br/>
+ 11.1 <a href="#iddiv2_1_1450">Normative References</a><br/>
</p>
<h3><a name="appendices" id="appendices"/>Appendices</h3><p class="toc">A <a href="#Appendix_I__E2_80_93_XSD">XML Schema</a><br/>
B <a href="#changelog">Change Log</a><br/>
@@ -410,6 +410,9 @@
<b>[Body]</b>
<wst:PutResponse ...>
+ <wst:Representation ...>
+ <em>xs:any</em> ?
+ </wst:Representation ...> ?
<em>xs:any</em> *
</wst:PutResponse></pre></div></div><p>
There are no additional constraints beyond what WS-Transfer defines.
@@ -422,8 +425,8 @@
This specification does not extend the Create operation defined in
WS-Transfer.
</p></div></div><div class="div1">
-<h2><a name="iddiv1_1_776" id="iddiv1_1_776"/>4 Examples</h2><div class="div2">
-<h3><a name="iddiv2_1_779" id="iddiv2_1_779"/>4.1 Examples</h3><p>
+<h2><a name="iddiv1_1_779" id="iddiv1_1_779"/>4 Examples</h2><div class="div2">
+<h3><a name="iddiv2_1_782" id="iddiv2_1_782"/>4.1 Examples</h3><p>
In the following examples, and Expression Language definitions,
the following representation of a resource is used for
informational purposes:
@@ -828,7 +831,7 @@
doing so the endpoint is indicating that the corresponding WS-Fragment
features are supported by that endpoint.
</p><div class="div2">
-<h3><a name="iddiv2_1_1394" id="iddiv2_1_1394"/>9.1 Fragment Assertion</h3><p>
+<h3><a name="iddiv2_1_1397" id="iddiv2_1_1397"/>9.1 Fragment Assertion</h3><p>
The mechanism for indicating that a binding or endpoint conforms to the
WS-Fragment specification is through the use of the Web Services
Policy - Framework <a href="#wspolicy">[WS-Policy]</a> and Web Services Policy -
@@ -896,7 +899,7 @@
Yves Lafon (W3C).
</p></div><div class="div1">
<h2><a name="refs" id="refs"/>11 References</h2><div class="div2">
-<h3><a name="iddiv2_1_1447" id="iddiv2_1_1447"/>11.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_1450" id="iddiv2_1_1450"/>11.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.
@@ -1058,4 +1061,7 @@
<a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8283">8283</a></td></tr><tr><td> 2010/01/26 </td><td> DD </td><td> Added resolution of issue
<a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8181">8181</a></td></tr><tr><td> 2010/01/26 </td><td> DD </td><td> Added resolution of issue
<a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8257">8257</a></td></tr><tr><td> 2010/01/28 </td><td> DD </td><td> Added resolution of issue
- <a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8229">8229</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=8229">8229</a></td></tr><tr><td> 2010/01/27 </td><td> DD </td><td> Added resolution of issues
+ <a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8302">8302</a>,
+ <a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8180">8180</a>,
+ <a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8299">8299</a></td></tr></tbody></table></div></div></body></html>
\ No newline at end of file
Index: wst.html
===================================================================
RCS file: /w3ccvs/WWW/2002/ws/ra/edcopies/wst.html,v
retrieving revision 1.99
retrieving revision 1.100
diff -u -d -r1.99 -r1.100
--- wst.html 28 Jan 2010 18:37:29 -0000 1.99
+++ wst.html 29 Jan 2010 04:00:59 -0000 1.100
@@ -59,12 +59,12 @@
5.4 <a href="#UnknownResource">UnknownResource</a><br/>
6 <a href="#Security_Considerations">Security Considerations</a><br/>
7 <a href="#metadata">WS-Transfer Metadata</a><br/>
- 7.1 <a href="#iddiv2_1_1357">TransferResource Assertion</a><br/>
- 7.2 <a href="#iddiv2_1_1427">TransferResourceFactory Assertion</a><br/>
+ 7.1 <a href="#iddiv2_1_1368">TransferResource Assertion</a><br/>
+ 7.2 <a href="#iddiv2_1_1438">TransferResourceFactory Assertion</a><br/>
8 <a href="#acks">Acknowledgements</a><br/>
9 <a href="#refs">References</a><br/>
- 9.1 <a href="#iddiv2_1_1480">Normative References</a><br/>
- 9.2 <a href="#iddiv2_1_1653">Informative References</a><br/>
+ 9.1 <a href="#iddiv2_1_1491">Normative References</a><br/>
+ 9.2 <a href="#iddiv2_1_1664">Informative References</a><br/>
</p>
<h3><a name="appendices" id="appendices"/>Appendices</h3><p class="toc">A <a href="#Appendix_I__E2_80_93_XSD">XML Schema</a><br/>
B <a href="#WSDL">WSDL</a><br/>
@@ -83,15 +83,25 @@
with the confirmed representation, but this is not a guarantee, even in the
absence of any third parties. The server MAY change the representation of a
resource, MAY remove a resource entirely, or MAY bring back a resource that
- was deleted.</p><p>For instance, the server might store resource state information on a disk
- drive. If that drive crashes and the server recovers state information from a
- backup tape, changes that occurred after the backup was made will be
- lost.</p><p>A server MAY have other operational processes that change resource state
- information. A server might run a background process that examines resources
- for objectionable content and deletes any such resources it finds. A server
- can purge resources that have not been accessed for some period of time. A
- server could apply storage quotas that cause it to occasionally purge
- resources.</p><p>In essence, the confirmation by a service of having processed a request to
+ was deleted.</p><p>
+ For instance, the server might store resource state information on a
+ disk drive. If that drive crashes and the server recovers state
+ information from a backup tape, changes that occurred after the
+ backup was made will be lost.
+ </p><p>
+ A server MAY have other operational processes that change resource state
+ information. For example, a server could purge resources that have not
+ been accessed for some period of time.
+ </p><p>
+ In addition to this, there MAY be application or process specific
+ reasons for a server to augment or transform the representation
+ provided by an update or create operation. For example, the server
+ might populate the optional properties of a newly created resource
+ with meaningful default values.
+ </p><p>
+ Finally all clients need to be aware that there might be other clients
+ simultaneously accessing, creating, and updating the same resources.
+ </p><p>In essence, the confirmation by a service of having processed a request to
create, modify, or delete a resource implies a commitment only at the instant
that the confirmation was generated. While the usual case is that
resources are long-lived and stable, there are no guarantees, and clients
@@ -294,13 +304,19 @@
<b>[Body]</b>
<wst:GetResponse ...>
+ <wst:Representation ...>
+ <em>xs:any</em>?
+ </wst:Representation>?
<em>xs:any</em>*
</wst:GetResponse></pre></div></div><p>
The following describes additional, normative constraints on the
outline listed above:
- </p><dl><dt class="label"><b>[Body]</b>/wst:GetResponse </dt><dd><p>
- This REQUIRED element MUST have as its first child element,
- an element that comprises the representation of the resource.
+ </p><dl><dt class="label"><b>[Body]</b>/wst:GetResponse/wst:Representation </dt><dd><p>
+ This element acts as a container for the full representation of
+ the resource. This element MUST be present if the corresponding
+ Get request did not specify a Dialect attribute. This element
+ MAY have no children in cases where there is no resource
+ representation.
</p></dd></dl><p>
Other components of the outline above are not further constrained
by this specification.
@@ -357,13 +373,15 @@
</s:Header>
<s:Body>
<wst:GetResponse>
- <xxx:Customer>
- <xxx:first>Roy</xxx:first><xxx:last>Hill</xxx:last>
- <xxx:address>123 Main Street</xxx:address>
- <xxx:city>Manhattan Beach</xxx:city>
- <xxx:state>CA</xxx:state>
- <xxx:zip>90266</xxx:zip>
- </xxx:Customer>
+ <wst:Representation>
+ <xxx:Customer>
+ <xxx:first>Roy</xxx:first><xxx:last>Hill</xxx:last>
+ <xxx:address>123 Main Street</xxx:address>
+ <xxx:city>Manhattan Beach</xxx:city>
+ <xxx:state>CA</xxx:state>
+ <xxx:zip>90266</xxx:zip>
+ </xxx:Customer>
+ </wst:Representation>
</wst:GetResponse>
</s:Body>
</s:Envelope></pre></div></div><p>In this example, the representation of the resource is the following XML
@@ -399,16 +417,14 @@
<b>[Body]</b>
<wst:Put Dialect="<em>xs:anyURI</em>"? ...>
+ <wst:Representation ...>
+ <em>xs:any</em>?
+ <wst:Representation>?
<em>xs:any</em>*
</wst:Put></pre></div></div><p>
The following describes additional, normative constraints on the
outline listed above:
- </p><dl><dt class="label"><b>[Body]</b>/wst:Put </dt><dd><p>
- This REQUIRED element MUST have as its first child element,
- an element that comprises the representation of the resource
- that is to be replaced or instructions for updating the
- resource.
- </p></dd><dt class="label"><b>[Body]</b>/wst:Put@Dialect </dt><dd><p>
+ </p><dl><dt class="label"><b>[Body]</b>/wst:Put@Dialect </dt><dd><p>
When this OPTIONAL attribute is present it contains a IRI that
refers to additional information for the service on how to
process this element. If the attribute is present but the
@@ -421,6 +437,12 @@
this dialect IRI. Use of this IRI indicates that the contents
of the Put element MUST be processed as specified by the
WS-Fragment <a href="#WsFrag">[WS-Fragment]</a> specification.
+ </p></dd><dt class="label"><b>[Body]</b>/wst:Put/wst:Representation </dt><dd><p>
+ This element acts as a container for the full representation
+ of the resource. This element MUST be present if the Dialect
+ attribute is absent. This element MAY have no children. This
+ case MUST be interpreted as a request to remove the
+ resource's representation, not the resource itself.
</p></dd></dl><p>
If the request message reaches a conformant implementation of
WS-Transfer and the message refers to an unknown resource, then the
@@ -461,26 +483,18 @@
<b>[Body]</b>
<wst:PutResponse ...>
+ <wst:Representation ...>
+ <em>xs:any</em>?
+ </wst:Representation>?
<em>xs:any</em>*
- </wst:PutResponse></pre></div></div><dl><dt class="label"><b>[Body]</b>/wst:PutResponse </dt><dd><p>
- This REQUIRED element, if it contains any child elements,
- MUST have as its first child element, an element that
- comprises the representation of the resource that has been
- updated.
- </p><p>
- As an optimization and as a service to the requester,
- if there are no extension elements this
- element SHOULD be empty if the updated
- representation does not differ from the representation sent in
- the Put request message; that is, if the service accepted the
- new representation verbatim.
- </p><p>
- Such a response (an empty wst:PutResponse) implies that the
- update request was successful in its entirety (assuming no
- intervening mutating operations are performed). A service MAY
- return the current representation of the resource as the
- child of the wst:PutResponse element even in this
- case, however.
+ </wst:PutResponse></pre></div></div><dl><dt class="label"><b>[Body]</b>/wst:PutResponse/wst:Representation </dt><dd><p>
+ This OPTIONAL element acts as a container for the full
+ representation of the resource. This element is intended for
+ use as an optimization to save the client the overhead of
+ having to perform a subsequent Get operation. A service
+ MAY include this element to return the current
+ representatin of the resource. This element MAY have no children
+ in cases where there is no resource representation.
</p></dd></dl><p>Other components of the outline above are not further constrained by this
specification.</p><p>The following shows a sample SOAP envelope containing a Put request:</p><div class="exampleOuter"><div class="exampleInner"><pre><s:Envelope
xmlns:s="http://www.w3.org/2003/05/soap-envelope"
@@ -508,13 +522,15 @@
</s:Header>
<s:Body>
<wst:Put>
- <xxx:Customer>
- <xxx:first>Roy</xxx:first><xxx:last>Hill</xxx:last>
- <xxx:address>321 Main Street</xxx:address>
- <xxx:city>Manhattan Beach</xxx:city>
- <xxx:state>CA</xxx:state>
- <xxx:zip>90266</xxx:zip>
- </xxx:Customer>
+ <wst:Representation>
+ <xxx:Customer>
+ <xxx:first>Roy</xxx:first><xxx:last>Hill</xxx:last>
+ <xxx:address>321 Main Street</xxx:address>
+ <xxx:city>Manhattan Beach</xxx:city>
+ <xxx:state>CA</xxx:state>
+ <xxx:zip>90266</xxx:zip>
+ </xxx:Customer>
+ </wst:Representation>
</wst:Put>
</s:Body>
</s:Envelope> </pre></div></div><p>The following shows the corresponding response message indicating
@@ -668,20 +684,14 @@
<b>[Body]</b>
<wst:Create Dialect="<em>xs:anyURI</em>"? ...>
+ <wst:Representation ...>
+ <em>xs:any</em>?
+ >/wst:Representation>?
<em>xs:any</em>*
</wst:Create></pre></div></div><p>
The following describes additional, normative constraints on the
outline listed above:
- </p><dl><dt class="label"><b>[Body]</b>/wst:Create </dt><dd><p>
- This REQUIRED element MAY contain zero or more child elements.
- If this element does not contain a child element then the
- resource will be created using default values. The first
- child element, if present, MUST be the literal resource
- representation, a representation of the constructor for the
- resource, or other instructions for creating the resource.
- If present, any extension elements MUST be included after
- the mandated first child element.
- </p></dd><dt class="label"><b>[Body]</b>/wst:Create@Dialect </dt><dd><p>
+ </p><dl><dt class="label"><b>[Body]</b>/wst:Create@Dialect </dt><dd><p>
When this OPTIONAL attribute is present it contains a IRI that
refers to additional information for the service on how to
process this element. If the attribute is present but the
@@ -689,6 +699,13 @@
wst:UnknownDialect fault. There is no default value for the
attribute. If the attribute is absent, then the base
behavior is used.
+ </p></dd><dt class="label"><b>[Body]</b>/wst:Create/wst:Representation </dt><dd><p>
+ This OPTIONAL element acts as a container for the full
+ representation of the resource. If this element is not
+ present the resource MUST be created using default values
+ (equivalent to a null constructor). This element MAY have
+ no children, in which case the resource MUST be created with
+ an empty representation (equivalent to an empty constructor).
</p></dd></dl><p>
A Create request MUST be targeted at a resource factory capable of
creating the desired new resource. This factory is distinct from the
@@ -711,42 +728,23 @@
<b>[Body]</b>
<wst:CreateResponse ...>
<wst:ResourceCreated><em>endpoint-reference</em></wst:ResourceCreated>
+ <wst:Representation ...>
+ <em>xs:any</em>?
+ </wst:Representation>?
<em>xs:any</em>*
- </wst:CreateResponse></pre></div></div><dl><dt class="label"><b>[Body]</b>/wst:CreateResponse </dt><dd><p>
- This REQUIRED element MUST have as its first child element
- an Endpoint Reference (wst:ResourceCreated element) to the
- newly created resource.
- </p><p>
- A service MUST also return the current
- representation of the new resource as the second child
- of the wst:CreateResponse element if the
- created representation logically differs from the
- representation sent in the Create request message. That is,
- the initial representation is returned if one or more
- values present in Create message was specifically
- overridden with a different value during resource
- creation. If default values are used to complete a resource
- creation which were not present in the Create message, then
- this does not constitute a logical difference.
- </p><p>
- As an optimization and as a service to the requestor, the
- wst:CreateResponse element of the response message SHOULD be
- empty, other than the ResourceCreated element, if the created
- representation does not logically differ from the
- representation sent in the Create request message and there
- are no extension elements; that is,
- if the service accepted the new representation or
- creation instructions verbatim. Such a response indicates
- that the request was completely successful
- (assuming no intervening mutating
- operations are performed). A service MAY return the current
- representation of the resource as the second child of the
- wst:CreateResponse element even in this case, however.
- </p></dd><dt class="label"><b>[Body]</b>/wst:CreateResponse/wst:ResourceCreated </dt><dd><p>
+ </wst:CreateResponse></pre></div></div><dl><dt class="label"><b>[Body]</b>/wst:CreateResponse/wst:ResourceCreated </dt><dd><p>
This required element MUST be an endpoint reference for the
newly created resource. This endpoint reference MUST
identify the resource for future Get, Put, and Delete
operations.
+ </p></dd><dt class="label"><b>[Body]</b>/wst:CreateResponse/wst:Representation </dt><dd><p>
+ This OPTIONAL element acts as a container for the full
+ representation of the resource. This element is intended for
+ use as an optimization to save the client the overhead of
+ having to perform a subsequent Get operation. A service
+ MAY include this element to return the current representation
+ of the resource. This element MAY have no children in cases
+ where there is no resource representation.
</p></dd></dl><p>Other components of the outline above are not further constrained by this
specification.</p><p>The following shows a sample SOAP envelope containing a Create
request:</p><div class="exampleOuter"><div class="exampleInner"><pre><s:Envelope
@@ -769,13 +767,15 @@
</s:Header>
<s:Body>
<wst:Create>
- <xxx:Customer>
- <xxx:first>Roy</xxx:first><xxx:last>Hill</xxx:last>
- <xxx:address>123 Main Street</xxx:address>
- <xxx:city>Manhattan Beach</xxx:city>
- <xxx:state>CA</xxx:state>
- <xxx:zip>90266</xxx:zip>
- </xxx:Customer>
+ <wst:Representation>
+ <xxx:Customer>
+ <xxx:first>Roy</xxx:first><xxx:last>Hill</xxx:last>
+ <xxx:address>123 Main Street</xxx:address>
+ <xxx:city>Manhattan Beach</xxx:city>
+ <xxx:state>CA</xxx:state>
+ <xxx:zip>90266</xxx:zip>
+ </xxx:Customer>
+ </wst:Representation>
</wst:Create>
</s:Body>
</s:Envelope> </pre></div></div><p>The following shows the corresponding response message indicating
@@ -945,7 +945,7 @@
that indicate a particular security mechanism used to protect
the WS-Transfer operations supported by this endpoint.
</p><div class="div2">
-<h3><a name="iddiv2_1_1357" id="iddiv2_1_1357"/>7.1 TransferResource Assertion</h3><p>
+<h3><a name="iddiv2_1_1368" id="iddiv2_1_1368"/>7.1 TransferResource Assertion</h3><p>
The mechanism for indicating that a binding or endpoint conforms to the
WS-Transfer specification's definition of a Transfer Resource
is through the use of the Web Services
@@ -1013,7 +1013,7 @@
the Global Element Declaration (GED) or type of this resource. This
QName can be used in order to retrieve the schema of the resource.
</p></dd></dl></div><div class="div2">
-<h3><a name="iddiv2_1_1427" id="iddiv2_1_1427"/>7.2 TransferResourceFactory Assertion</h3><p>
+<h3><a name="iddiv2_1_1438" id="iddiv2_1_1438"/>7.2 TransferResourceFactory Assertion</h3><p>
The mechanism for indicating that a binding or endpoint conforms to the
WS-Transfer specification's definition of a Transfer Resource Factory
is through the use of the Web Services
@@ -1085,7 +1085,7 @@
Yves Lafon (W3C).
</p></div><div class="div1">
<h2><a name="refs" id="refs"/>9 References</h2><div class="div2">
-<h3><a name="iddiv2_1_1480" id="iddiv2_1_1480"/>9.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_1491" id="iddiv2_1_1491"/>9.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.
@@ -1153,7 +1153,7 @@
, 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 class="div2">
-<h3><a name="iddiv2_1_1653" id="iddiv2_1_1653"/>9.2 Informative References</h3><dl><dt class="label"><a name="WsFrag" id="WsFrag"/>WS-Fragment</dt><dd><a href="http://www.w3.org/TR/ws-fragment"><cite>
+<h3><a name="iddiv2_1_1664" id="iddiv2_1_1664"/>9.2 Informative References</h3><dl><dt class="label"><a name="WsFrag" id="WsFrag"/>WS-Fragment</dt><dd><a href="http://www.w3.org/TR/ws-fragment"><cite>
W3C Working Group Draft, "Web Services Fragment (WS-Fragment) 1.0"
</cite></a>
, D. Davis, et al., Editors.
@@ -1203,6 +1203,13 @@
<xs:import
namespace='http://www.w3.org/2005/08/addressing'
schemaLocation='http://www.w3.org/2006/03/addressing/ws-addr.xsd' />
+
+ <xs:complexType name='Representation'>
+ <xs:sequence>
+ <xs:any minOccurs='0' processContents='lax'/>
+ </xs:sequence>
+ <xs:anyAttribute namespace='##other' processContents='lax'/>
+ </xs:complexType>
<xs:element name='Get'>
<xs:complexType>
@@ -1217,6 +1224,7 @@
<xs:element name='GetResponse'>
<xs:complexType>
<xs:sequence>
+ <xs:element name='Representation' type='tns:Representation' minOccurs='1'/>
<xs:any minOccurs='1' maxOccurs='unbounded' namespace='##other' processContents='lax' />
</xs:sequence>
<xs:anyAttribute namespace='##other' processContents='lax' />
@@ -1226,6 +1234,7 @@
<xs:element name='Put'>
<xs:complexType>
<xs:sequence>
+ <xs:element name='Representation' type='tns:Representation' minOccurs='1'/>
<xs:any minOccurs='1' maxOccurs='unbounded' namespace='##other' processContents='lax' />
</xs:sequence>
<xs:attribute name='Dialect' type='xs:anyURI' use='optional' />
@@ -1236,6 +1245,7 @@
<xs:element name='PutResponse'>
<xs:complexType>
<xs:sequence>
+ <xs:element name='Representation' type='tns:Representation' minOccurs='1'/>
<xs:any minOccurs='1' namespace='##other' processContents='lax' />
</xs:sequence>
<xs:anyAttribute namespace='##other' processContents='lax' />
@@ -1264,6 +1274,7 @@
<xs:element name='Create'>
<xs:complexType>
<xs:sequence>
+ <xs:element name='Representation' type='tns:Representation' minOccurs='1'/>
<xs:any minOccurs='0' maxOccurs='unbounded' namespace='##other' processContents='lax' />
</xs:sequence>
<xs:attribute name='Dialect' type='xs:anyURI' use='optional' />
@@ -1275,6 +1286,7 @@
<xs:complexType>
<xs:sequence>
<xs:element name='ResourceCreated' type='wsa:EndpointReferenceType' />
+ <xs:element name='Representation' type='tns:Representation' minOccurs='1'/>
<xs:any minOccurs='0' namespace='##other' processContents='lax' />
</xs:sequence>
<xs:anyAttribute namespace='##other' processContents='lax' />
@@ -1481,4 +1493,7 @@
<a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8176">8176</a></td></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=8301">8301</a></td></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=8283">8283</a></td></tr><tr><td> 2010/01/26 </td><td> DD </td><td> Added resolution of issue
- <a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=7774">7774</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=7774">7774</a></td></tr><tr><td> 2010/01/27 </td><td> DD </td><td> Added resolution of issues
+ <a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8302">8302</a>,
+ <a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8180">8180</a>,
+ <a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8299">8299</a></td></tr></tbody></table></div></div></body></html>
\ No newline at end of file
Index: wsfrag.xml
===================================================================
RCS file: /w3ccvs/WWW/2002/ws/ra/edcopies/wsfrag.xml,v
retrieving revision 1.47
retrieving revision 1.48
diff -u -d -r1.47 -r1.48
--- wsfrag.xml 28 Jan 2010 19:04:15 -0000 1.47
+++ wsfrag.xml 29 Jan 2010 04:00:59 -0000 1.48
@@ -786,6 +786,9 @@
<kw>[Body]</kw>
<wst:PutResponse ...>
+ <wst:Representation ...>
+ <emph>xs:any</emph> ?
+ </wst:Representation ...> ?
<emph>xs:any</emph> *
</wst:PutResponse></eg>
</example>
@@ -2099,6 +2102,15 @@
<loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8229">8229</loc>
</td>
</tr>
+ <tr>
+ <td> 2010/01/27 </td>
+ <td> DD </td>
+ <td> Added resolution of issues
+ <loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8302">8302</loc>,
+ <loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8180">8180</loc>,
+ <loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=8299">8299</loc>
+ </td>
+ </tr>
</tbody>
</table>
</div1>
Received on Friday, 29 January 2010 04:01:04 UTC