Re: Feedback on the ping="" attribute (ISSUE-1)

On Tue, 6 Nov 2007, Mark Baker wrote:
> On 11/6/07, Ian Hickson <ian@hixie.ch> wrote:
> > On Tue, 6 Nov 2007, Mark Baker wrote:
> > > >
> > > > In that case I don't understand what we are discussing. Could you
> > > > define the terms in more detail?
> > >
> > > Are there any specific terms you had in mind?  I think we all understand
> > > what "safe" means.
> >
> > I don't think I do, since the way you are using it doesn't match what I
> > understand of the term.
> 
> Ok.  The closest thing to a definition that Roy's cited, AFAIK, can be 
> found here;
> 
> http://lists.w3.org/Archives/Public/www-tag/2002Apr/0207.html
> 
> But again, the word can be used in many contexts, including both the 
> contexts that are of importance here: message and implementation.  So 
> I'm not sure that will help.

The above e-mail seems to imply that a message in HTTP is "safe" if it 
causes no loss of property for the user (with a loose definition of 
property here).

By that definition, any method would be safe for the purposes of 
processing ping="", because the semantics of the message are simply that 
the user agent is notifying the server of an action.

Note, though, that it seems that the danger is not in doing "safe" things 
with "unsafe" methods, but with doing "unsafe" things with "safe" methods. 
That is, doing "unsafe" work (work which can cause loss of property) is 
bad when you're using GET or HEAD -- but doing "safe" work as part of a 
message with "POST" is harmless. As far as I can tell.

On the other hand, if we agree that "idempotent" means "has no important 
side-effects" (for anyone), then clearly ping="" is not idempotent, and 
so we have to have a non-idempotent method.

Does that make sense?

Cheers,
-- 
Ian Hickson               U+1047E                )\._.,--....,'``.    fL
http://ln.hixie.ch/       U+263A                /,   _.. \   _\  ;`._ ,.
Things that are impossible just take longer.   `._.-(,_..'--(,_..'`-.;.'

Received on Tuesday, 6 November 2007 22:12:04 UTC