On Thursday, May 12, 2005, at 02:11 PM, Paul Hoffman wrote:
So, if atom:summary is a MAY, then applications MUST be able to deal with feeds whether they have it or not. The text for SHOULD does not call out any such requirements. This omission suggests to me that the intent of SHOULD is to NOT REQUIRE implementations to interoperate with implementations that don't follow the recommendation. Otherwise, would that not have been spelled out? What are "the full implications", if not the possibility of failed interoperability? Reduced functionality? I don't think so, because that is what MAY is about.

You are reading *way* too much into 2119; this is a normal thing to do.

I realize I was going beyond what it actually says, thus:

RFC 2119 isn't explicit on this point.
and:
Perhaps the best we can do from that document is to attempt to divine from what it says about MAY, what it means about SHOULD, but I don't know whether this is valid or not.

The problem we have, as I pointed out earlier on the thread, is that we do not specify whether senders and receivers have the same SHOULD. I made one assumption, and Rob pointed out that I had made one different than he did.

So because both RFC 2119 and the current Atom draft are not explicit on this point, it is open either to varied interpretations, or at least to misinterpretations.


The way I read 2119 is that if a sender MAY or SHOULD include something, the receiver MUST NOT fall over if it is in what they receive, and MUST NOT fall over if it is not in what they receive. Does that clarify where I got to on this thread?

Fortunately, as you suggest above, we can resolve the issue at hand by clarifying our spec (by explicitly stating the SHOULDs, MUSTs and MAYs for both the producer and consumer)...if we can come to consensus on what we want, that is! That would probably be a lot easier than coming to consensus on the one true reading of RFC 2119 and figuring out how to apply it to the Atom spec.




Reply via email to