I'm working on some REST project and I agree with you. We use POST for CREATE (aka append to some collection) and append operations, but PUT only for UPDATE (aka replace existing resource). We are not using use case PUT on non exists URI aka CREATE so we have it as allowed design if need.<br>
<br><div class="gmail_quote">On Tue, Mar 18, 2008 at 8:52 AM, bryan rasmussen <<a href="mailto:rasmussen.bryan@gmail.com">rasmussen.bryan@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Well the problem is probably more PUT, PUT has three possible uses,<br>
CREATE, APPEND, UPDATE:<br>
<br>
1. PUT a resource for the first time on the server. Thus matching<br>
CREATE in a CRUD operation.<br>
2. PUT using Content-Range: to append to the end of a resource.<br>
3. PUT new version of resource on the  server. Thus matching UPDATE in<br>
a CRUD operation.<br>
<br>
However these usages are not specified as such - IIRC they are<br>
implicit not explicit - thus a particular REST system could specify<br>
further:<br>
<br>
1. PUT a resource for the first time on the server, disallow other uses of PUT<br>
2. POST an update on any resource, disallow uses of PUT to append or UPDATE.<br>
<br>
personally I don't think there is a problem (theoretically) with<br>
specifying PUT with Content-Range to append, and specifying that if a<br>
resource exists you can only put to it with a Content-Range, and the<br>
method to calculate what ranges are allowed. However it is sort of low<br>
level to have to be doing that kind of thing.<br>
<br>
Cheers,<br>
<font color="#888888">Bryan Rasmussen<br>
</font><div><div></div><div class="Wj3C7c"><br>
<br>
On Tue, Mar 18, 2008 at 6:27 AM, Matthew Dempsky <<a href="mailto:matthew@dempsky.org">matthew@dempsky.org</a>> wrote:<br>
> On 3/17/08, Joe Armstrong <<a href="mailto:erlang@gmail.com">erlang@gmail.com</a>> wrote:<br>
>  >  Email is pretty much like Erlang. Pid ! X appends X to Pid's message queue,<br>
>  >  just like mailing to somebody@somwhost.<br>
><br>
>  POST seems perfectly suited for this.  Pid becomes a URI, and X<br>
>  becomes the request entity.<br>
><br>
><br>
> _______________________________________________<br>
>  erlang-questions mailing list<br>
>  <a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a><br>
>  <a href="http://www.erlang.org/mailman/listinfo/erlang-questions" target="_blank">http://www.erlang.org/mailman/listinfo/erlang-questions</a><br>
><br>
_______________________________________________<br>
erlang-questions mailing list<br>
<a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a><br>
<a href="http://www.erlang.org/mailman/listinfo/erlang-questions" target="_blank">http://www.erlang.org/mailman/listinfo/erlang-questions</a><br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>--Hynek (Pichi) Vychodil