Re: RFC 2119 terms, ALL CAPS vs lower case

John C Klensin <john-ietf@jck.com> Sun, 20 May 2012 16:29 UTC

Return-Path: <john-ietf@jck.com>
X-Original-To: ietf@ietfa.amsl.com
Delivered-To: ietf@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5419721F8604 for <ietf@ietfa.amsl.com>; Sun, 20 May 2012 09:29:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.599
X-Spam-Level:
X-Spam-Status: No, score=-102.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id RnuYU1gmhA0N for <ietf@ietfa.amsl.com>; Sun, 20 May 2012 09:29:34 -0700 (PDT)
Received: from bsa2.jck.com (ns.jck.com [70.88.254.51]) by ietfa.amsl.com (Postfix) with ESMTP id C925021F85D3 for <ietf@ietf.org>; Sun, 20 May 2012 09:29:34 -0700 (PDT)
Received: from [198.252.137.7] (helo=PST.JCK.COM) by bsa2.jck.com with esmtp (Exim 4.71 (FreeBSD)) (envelope-from <john-ietf@jck.com>) id 1SW8v7-000KRl-MA; Sun, 20 May 2012 12:23:49 -0400
Date: Sun, 20 May 2012 12:29:27 -0400
From: John C Klensin <john-ietf@jck.com>
To: Brian E Carpenter <brian.e.carpenter@gmail.com>, Ofer Inbar <cos@aaaaa.org>
Subject: Re: RFC 2119 terms, ALL CAPS vs lower case
Message-ID: <C434362C680B405F6D53A6AB@PST.JCK.COM>
In-Reply-To: <4FB89502.3090702@gmail.com>
References: <562A61B995B24BD854A4D154@[192.168.0.2]> <m262bwchr9.wl%randy@psg.com> <01OFJXXZJB2I0006TF@mauve.mrochek.com> <3AAB0DB9-5E51-4117-B2BB-851700FD9CDC@gmail.com> <01OFK8GNXASC0006TF@mauve.mrochek.com> <384732C7-C0D6-4D00-B1A8-2B9B86587264@gmail.com> <m2396x73az.wl%randy@psg.com> <4FB7424C.8070508@gmail.com> <20120519193904.GD335@mip.aaaaa.org> <4FB89502.3090702@gmail.com>
X-Mailer: Mulberry/4.0.8 (Win32)
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
Cc: IETF list discussion <ietf@ietf.org>
X-BeenThere: ietf@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: IETF-Discussion <ietf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ietf>, <mailto:ietf-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/ietf>
List-Post: <mailto:ietf@ietf.org>
List-Help: <mailto:ietf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ietf>, <mailto:ietf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 20 May 2012 16:29:35 -0000

--On Sunday, May 20, 2012 07:53 +0100 Brian E Carpenter
<brian.e.carpenter@gmail.com> wrote:

> On 2012-05-19 20:39, Ofer Inbar wrote:
> ...
> 
>>  But don't change the rules.  2119 works well as is IMO.
> 
> Just to be clear about the current rules, 2119 makes it clear
> that upper case keywords are optional ("These words are often
> capitalized"). Indeed, numerous standards track documents
> don't use them.

Brian,

I've been trying really hard to avoid this discussion, but I
think the above is misleading.

In recent years, various IESG members have insisted that any
IETF Track document that contains anything approximating
conformance language include the 2119 reference and whatever the
strict interpretation of the week is about caps, etc.  As Randy
suggests, there have been signs of more nuance in the last IESG
or two, but...

The same problem applies to the other issue with 2119, which is
that we have history for at least two different interpretations
of those words, the ones in 2119 that are interpreted as
"necessary for interoperability" and the ones in, e.g.,
1122/1123 (Section 1.3.2 in the latter) which are "requirements
of the specification" without binding those requirements to a
particular reason.  From my point of view, the other difficulty
with treating 2119 like Received Wisdom and a set of absolute
requirements is that the interoperability criterion often makes
no sense for what are perfectly reasonable requirements.  As an
example drawn from 1123, a specification might reasonably say
"this option MUST be configurable" because it is necessary to
make things work in a plausible way even if that statement
cannot be explicitly linked to "won't interoperate unless it
does".   But again, in recent years, some IESG members (and
others) have insisted that only the 2119 definitions are
permitted.

The combination of the two is known in some quarters as writing
technically poor or deficient specs in the interest of clear
conformance to procedures.  At least historically, that was a
trap the IETF tried to avoid.

    john