If the Atom server is allowed to make changes to the posted entry, such as dropping extension elements or adding or reordering stuff, there probably needs to be some way to let the client know. Alternatively, there could be some statement generally that "clients MUST NOT assume that the server stored the entry as requested, and thus MUST retrieve the newly-created entry if the client wishes to have an accurate offline representation of the entry."

(Personally I feel it's a mistake not to require servers to store extension elements. Yes, it's work for the server, but think of how this could be used in 10 years if it's as successful as I suspect it will be. Many conceivable extensions can work between clients, with no new code required on servers, provided the server faithfully stores and provides the extension data as part of the feed/entry.)

Lisa

On Jun 13, 2006, at 8:51 PM, Mark Baker wrote:


On 6/14/06, Joe Gregorio <[EMAIL PROTECTED]> wrote:
On 6/13/06, Mark Baker <[EMAIL PROTECTED]> wrote:
> If it's not capable of storing entities as requested, then it
> shouldn't send a successful response message to a PUT request, since
> that's what PUT means.

I'm sorry but there is nothing in RFC 2616 that
calls for a  'byte-for-byte' interpretation of PUT.
And since the APP is not a 'must-understand' protocol
there is nothing wrong with a server ignoring foreign
markup.

I didn't say byte-for-byte.

It's simply a matter of whether the server can do what the client
asked of it.  In order to answer 2xx to a PUT, the server needs to
have set the state of the identified resource to that represented by
the entity body in the request.  As the extension in question is part
of what the client is asking to be stored, the server can only ignore
it if it knows it to be a no-op, just as if it were whitespace as Rob
points out.

Luckily, there's no grey area here that I'm aware of.

Mark.


Reply via email to