[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: mustUnderstand, mustIgnore [was: Posted PaceEntryOrder]

On Feb 6, 2005, at 6:50 PM, Mark Nottingham wrote:
On Feb 5, 2005, at 6:01 PM, Roy T.Fielding wrote:
The problem with that statement (about HTTP) is that absence of a must-understand in HTTP is not one of its big problems. Yes, I know lots of people have talked about it as a limiting factor in the syntax of HTTP, but to call it an actual problem would say that it prevented some good from being accomplished.

It arguably tipped some people towards SOAP when HTTP would have been adequate. That's not a prevention of good, but we've already seen enough fragmentation in the syndication world.

Well, arguably, those same applications should have been tipped into the waste basket in the first place. But I don't think you followed my main point: must understand is a mechanism to enable fragmentation -- its very presence leads away from standardization. Lack of mU is one of the reasons that HTTP is not fragmented (along with me being a stubborn pain in the ass). Hence, it is only a problem for some applications that were of questionable character, and it remains unclear whether HTTP would have benefitted by having a mU feature or if its presence would have led to a complete meltdown.

Things that a syndication format might want to make mandatory are copyright controls and micropayments, but both have been shown in practice to require either a willingness on the part of the recipient to accept that specific restriction (i.e., human intervention and understanding) or forceful requirement by the sender (i.e., encryption). In both cases, agreements have to be established with the user in advance, before they even receive the content, and thus do not need a "must understand" feature.

I don't think mU is intended for such things; rather, the case for mU could be characterised as extensions that change the operation of the protocol in a manner that renders it useless or misleading to try to use the feed if you don't know what to do with the extension. It's advisory.

Right, but look at my examples and try to think of any others that would require changes in operation on the behalf of recipients. There may be others, but I am not aware of any more.

In fact, "must understand" has no value in a network-based application except as positive guidance for intermediaries, which is something that can still be accomplished under mustIgnore with a bit of old-fashioned advocacy.

So, if I can restate your position, you're saying that you don't dispute that understanding some extensions may be required, but that it isn't necessary to make that visible to the processor, because it'll be co-ordinated beforehand (e.g., through market forces, out-of-band-communication), correct?

No, my position is that it isn't necessary to include mU in the format. Within the control data of an interaction protocol, sure, but not within the payload of completed actions, wherein any such requirements are far too late and susceptible to abuse.

Just to be clear that I am not completely against mU in
all protocols, that feature does exist in waka because it is
useful when talking through intermediaries.