83 messages in org.w3.www-tagRe: draft findings on Unsafe Methods ...
FromSent OnAttachments
Dan ConnollyApr 15, 2002 8:50 am 
Larry MasinterApr 15, 2002 1:44 pm 
David OrchardApr 15, 2002 3:01 pm 
David OrchardApr 15, 2002 3:19 pm 
Mark BakerApr 15, 2002 8:00 pm 
Keith MooreApr 15, 2002 8:37 pm 
Scott CantorApr 15, 2002 9:28 pm 
Edwin KhodabakchianApr 15, 2002 9:34 pm 
David OrchardApr 15, 2002 10:18 pm 
Paul PrescodApr 15, 2002 11:17 pm 
Tim BrayApr 15, 2002 11:32 pm 
Mark NottinghamApr 16, 2002 1:01 am 
Tim BrayApr 16, 2002 1:02 am 
Mark NottinghamApr 16, 2002 1:09 am 
Paul PrescodApr 16, 2002 2:11 am 
Paul PrescodApr 16, 2002 3:02 am 
Mark BakerApr 16, 2002 4:54 am 
Williams, StuartApr 16, 2002 8:22 am 
Keith MooreApr 16, 2002 8:32 am 
jon...@research.att.comApr 16, 2002 8:44 am 
Scott CantorApr 16, 2002 8:55 am 
Paul PrescodApr 16, 2002 9:40 am 
Mark NottinghamApr 16, 2002 9:42 am 
Hutchison, NigelApr 16, 2002 9:43 am 
Henrik Frystyk NielsenApr 16, 2002 10:48 am 
Bullard, Claude L (Len)Apr 16, 2002 1:46 pm 
Larry MasinterApr 16, 2002 6:39 pm 
Roy T. FieldingApr 16, 2002 7:54 pm 
Larry MasinterApr 16, 2002 10:10 pm 
Graham KlyneApr 17, 2002 1:54 am 
Paul PrescodApr 18, 2002 12:33 am 
Graham KlyneApr 18, 2002 9:11 am 
Alex RousskovApr 18, 2002 9:30 am 
Paul PrescodApr 18, 2002 9:45 am 
Graham KlyneApr 18, 2002 11:58 am 
Roy T. FieldingApr 18, 2002 3:11 pm 
Don BoxApr 18, 2002 6:28 pm 
Mark BakerApr 18, 2002 8:50 pm 
Keith MooreApr 18, 2002 8:54 pm 
Paul PrescodApr 18, 2002 10:00 pm 
Graham KlyneApr 19, 2002 12:53 am 
Bill de hÓraApr 19, 2002 4:18 am 
Roy T. FieldingApr 19, 2002 1:20 pm 
Anne Thomas ManesApr 22, 2002 3:23 pm 
Paul PrescodApr 22, 2002 4:01 pm 
Anne Thomas ManesApr 22, 2002 8:17 pm 
Paul PrescodApr 22, 2002 10:21 pm 
Anne Thomas ManesApr 23, 2002 5:36 am 
Paul PrescodApr 23, 2002 12:03 pm 
Paul PrescodApr 23, 2002 2:09 pm 
Roy T. FieldingApr 23, 2002 2:14 pm 
Bullard, Claude L (Len)Apr 23, 2002 2:50 pm 
Joshua AllenApr 23, 2002 2:53 pm 
David OrchardApr 23, 2002 4:14 pm 
Keith MooreApr 23, 2002 5:05 pm 
Roy T. FieldingApr 23, 2002 5:14 pm 
Simon St.LaurentApr 23, 2002 5:18 pm 
Larry MasinterApr 23, 2002 6:31 pm 
Mark BakerApr 23, 2002 6:36 pm 
Paul PrescodApr 23, 2002 8:03 pm 
Tim BrayApr 23, 2002 8:30 pm 
Dan ConnollyApr 23, 2002 9:05 pm 
Joshua AllenApr 23, 2002 9:10 pm 
Anne Thomas ManesApr 23, 2002 9:28 pm 
Mark NottinghamApr 23, 2002 9:42 pm 
Jeff BoneApr 23, 2002 9:42 pm 
Joshua AllenApr 23, 2002 10:02 pm 
Paul PrescodApr 23, 2002 10:05 pm 
Joshua AllenApr 23, 2002 10:27 pm 
Joshua AllenApr 23, 2002 10:38 pm 
Mark NottinghamApr 23, 2002 10:57 pm 
Mark NottinghamApr 23, 2002 11:16 pm 
Joshua AllenApr 23, 2002 11:20 pm 
Dan ConnollyApr 23, 2002 11:23 pm 
Tim BrayApr 23, 2002 11:56 pm 
Bullard, Claude L (Len)Apr 24, 2002 7:23 am 
Larry MasinterApr 24, 2002 8:47 am 
Keith MooreApr 24, 2002 10:46 am 
Bullard, Claude L (Len)Apr 24, 2002 10:56 am 
Aaron SwartzApr 24, 2002 11:27 am 
Mike DierkenApr 24, 2002 12:06 pm 
David OrchardApr 25, 2002 10:54 am 
Roy T. FieldingMay 5, 2002 3:38 am 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:Re: draft findings on Unsafe Methods (whenToUseGet-7)Actions...
From:Paul Prescod (pa@prescod.net)
Date:Apr 18, 2002 12:33:42 am
List:org.w3.www-tag

Graham Klyne wrote:

...

This suggests two possible ideas of "safe":

- an operation that has no (externally visible) side effects

It isn't about visibility. We're not talking about programming languages. I think that the HTTP specification is clear that it is about *responsibility*.

"Naturally, it is not possible to ensure that the server does not generate side-effects as a result of performing a GET request; in fact, some dynamic resources consider that a feature. The important distinction here is that the user did not request the side-effects, so therefore cannot be held accountable for them."

A safe operation is one that a service provider commits to executing over and over, anytime, or more than once, or never. It's a contract that says that the user will never be penalized in any way for executing the method.

Safety is important because when a program processes hypertext (in the general sense of nodes with arcs), it may follow arcs over and over again, whenever it feels like, and may pass node references to other processes which will also follow arcs over and over again, whenever THEY feel like it. You cannot do that if the act of following an arc may have an implicit constraint like: "you should only follow it once, or only after following that other arc in the last five minutes."

That's why Roy is right that labeling the operation *after the fact* is almost always a waste of time.

- an operation that is idempotent: has no further side effects if repeated after it has been performed once

The HTTP specification uses the term idempotent to mean idempotent.

http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.1.2

PUT is safe but not idempotent.

In the context of GET, I think the first is desired/needed.

Agreed.