Dave,
See inline below...
--
Eric Gray
Principal Engineer
Ericsson
-----Original Message-----
From: Dave Crocker [mailto:dcrocker(_at_)bbiw(_dot_)net]
Sent: Friday, June 27, 2008 12:04 PM
To: Eric Gray
Cc: IETF Discussion
Subject: SHOULD vs MUST case sensitivity
Importance: High
Eric Gray wrote:
(By the way, I hope folks are clear that IETF use of these words as
normative does not depend upon the case that is used?)
This is NOT true. These terms are explicitly defined in
all capital letters to make it possible to distinguish when
they are being used as normative and when they are not.
Sorry, no. Please re-read rfc 2219. Specifically:
"These words are often capitalized."
The key word is "often" which means not always which means
not required.
I assume you meant to refer to RFC 2119, rather than 2219.
I specifically refer to usage, rather than RFC 2119. We often
do that.
You, for instance, recently co-authored an RFC that is a full
standard, uses lower case instances of these terms, and does
not refer to RFC 2119 at all. RFC 5234/STD 68, I believe.
I suspect that this wording is an aspect of RFC 2119 that
should be changed - and probably would have been were it not
for the fact that capitalization has not always been used
consistently and RFC 2119 is supposed to be a "Best Current
Practices" RFC.
In English, "best current practices" cannot typically be used
to refer to what we wish to be true.
I strongly suspect that RFC 2219 should say "SHOULD be"
instead of "are often" - if for no other reason than to
encourage consistency.
Computer science long ago made the mistake of imposing
semantic difference on case differences, which is distinct
from other uses of case. Absent explicit specification of
case sensitivity for the keywords, the rules of English
writing apply, I would think.
Yeah, you're not that much older than I am.
However, in this case, people who actually include a section
that lists the RFC 2219 normative terms effectively DO make
an implicit specification of case sensitivity and - unless
the reader decides to read RFC 2219, the reader may not know
otherwise.
The statement that "should" be contained in any RFC that is
intended to use the "requirements level" aspect of RFC 2119
terms is:
'The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in
RFC 2119.'
There is nothing in this statement that indicates that these
terms are meant to be anything other than capitalized.
In text that is not meant to be normative, the special
terms should be avoided - even in lower case - but this
can lead to exceptionally stilted use of the English
language.
Not really. Words like "can" and "ought" do the job nicely.
Actually, no they do not.
As most of us know, "can" is NOT a synonym for "may" and
(as most anyone who would be familar with the word ought
would know) "ought" is also a synonym for "zero."
If you decided to use the word "may" in a non-normative
sense - but wished to be consistent with Enlgish usage -
you would need to say something like "is allowed to."
That seems to me to be a fine example of "stilted" usage.
An example of a non-normative use of "should" is this:
"The reader should already be aquainted with the contents
of ..."
Assuming this statement is normative is absurd. Re-writing
it to use "ought" makes it read "... reader ought to be ...
- which seems like another fine example of stilted English.
And a good example of when you might use the word "must"
in a non-normative sense is when describing something
that is unavoidable (e.g. - what goes up, must come down)
and describing such a thing "normatively" is also absurd.
Would you write "what goes up, would need to come down"?
Strictly speaking, inanimate objects (rocks, balls, etc.)
have no "needs" and many animate objects (kittens, puppies,
etc.) would not necessarily feel any such need.
And, before you dismiss these as irrelevant examples, ask
yourself whether or not the statement "a message must have
a finite number of octets" is normative...
d/
--
Dave Crocker
Brandenburg InternetWorking
bbiw.net
_______________________________________________
Ietf mailing list
Ietf(_at_)ietf(_dot_)org
https://www.ietf.org/mailman/listinfo/ietf