Bill de hÓra wrote:
>[snip]
> So I understand things:
>
> - collections might reject submissions based on the media type
> - when they do they will indicate this with a 405
>
> is that right?
>
Assuming you meant 415 and not 405, yes.
>
>
>> On successful
>> creation, the response to the POST request MUST return a Location:
>> header with the URI of an Atom Entry Document representing the newly
>> created resource. If the server includes a body in the response, the
>> entity MUST be an Atom Entry Document representing the newly-created
>> resource, equivalent to that which would appear in the collection's feed
>> document.
>
> Why not say the server must return the location (so you where to find it
> later) and an atom:entry body (so you can do something now)?
>
Per the feedback from Joe, I've changed the pace to read that Location
AND an Atom entry in the response are both required.
>
>> 8.1.1 Example
>>
>> [...]
>> Note that the Entry created by the server may or may not exactly match
>> the Entry POSTed by the client. In particular, a server MAY change the
>> values of various elements in the Entry such as the atom:id,
>> atom:updated and atom:author values and MAY choose to remove or add
>> metadata elements.
>
> Are there any values in the entry the server can't change or remove?
>
No. When the client POST's the entry to the server, the server takes
complete control over what does and does not appear within the entry.
>
>> The Entry includes one atom:link with a link relation of "enclosure",
>> and a second with a link relation "edit-enclosure", respectively
>> identifying the IRI's used for public read-only referencing of the media
>> resource and the IRI to be used for modifying the media resource.
>
> I'm -1 to this part. Why do we need to divide safe and unsafe operations
> using URIs, when HTTP has methods for doing that across one URI already?
>
It's not a division between safe and unsafe operations. It's a division
between the URI used to publicly reference the resource and the URI used
to edit it. The former may point to a CDN while the latter may point to
some firewall protected endpoint.
I could add a statement to that pace indicating that the enclosure IRI
may be used for editing if an edit-enclosure link is not provided... or,
perhaps better, the enclosure IRI is used for editing unless an
edit-enclosure link is provided.
- James