Re: Fuzzy words [was Uppercase question for RFC2119 words]

"Heather Flanagan (RFC Series Editor)" <rse@rfc-editor.org> Tue, 29 March 2016 14:18 UTC

Return-Path: <rse@rfc-editor.org>
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 E380E12D83E; Tue, 29 Mar 2016 07:18:36 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.2
X-Spam-Level:
X-Spam-Status: No, score=-3.2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, MISSING_HEADERS=1.021, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Nk7DR4KZsB21; Tue, 29 Mar 2016 07:18:35 -0700 (PDT)
Received: from mail.amsl.com (c8a.amsl.com [4.31.198.40]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3577812D856; Tue, 29 Mar 2016 07:18:35 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by c8a.amsl.com (Postfix) with ESMTP id 03F991E5D6A; Tue, 29 Mar 2016 07:17:48 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
Received: from c8a.amsl.com ([127.0.0.1]) by localhost (c8a.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id iW1F4vbELxhw; Tue, 29 Mar 2016 07:17:47 -0700 (PDT)
Received: from Heathers-MacBook-Pro.local (unknown [98.125.209.239]) by c8a.amsl.com (Postfix) with ESMTPSA id AA46B1E5D68; Tue, 29 Mar 2016 07:17:47 -0700 (PDT)
Subject: Re: Fuzzy words [was Uppercase question for RFC2119 words]
References: <20160320223116.8946.76840.idtracker@ietfa.amsl.com> <949EF20990823C4C85C18D59AA11AD8BADEAFFC7@FR712WXCHMBA11.zeu.alcatel-lucent.com> <CA+9kkMCsT43ZCSdq8gdKXu1k4pJgbf0ab5tE=dDiFfrTT2gtkA@mail.gmail.com> <949EF20990823C4C85C18D59AA11AD8BADEB0D16@FR712WXCHMBA11.zeu.alcatel-lucent.com> <56F79D05.8070004@alvestrand.no> <326E6502-28E5-4D09-BB99-4A5D80625EB0@stewe.org> <56F88E18.2060506@it.aoyama.ac.jp> <20160328104731.GO88304@verdi> <CALaySJ+hYMMsKE7Ws-NJbyqH55E-mQM-duTEcJGc0TWvTP88Ew@mail.gmail.com> <20160328132859.GP88304@verdi> <28975138-9EA1-4A9F-A6C0-BC1416B8EA44@sobco.com> <CALaySJJkNj2jfm0gJpuDzq8oFDjTNn-uQ5MHdmEOLwTiFZUyQQ@mail.gmail.com> <8975F15F-5C4C-4D02-98CD-BF4FDF104D35@sobco.com> <56F98CD1.10706@gmail.com>
From: "Heather Flanagan (RFC Series Editor)" <rse@rfc-editor.org>
Message-ID: <56FA8EB8.5050701@rfc-editor.org>
Date: Tue, 29 Mar 2016 07:18:32 -0700
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:38.0) Gecko/20100101 Thunderbird/38.7.1
MIME-Version: 1.0
In-Reply-To: <56F98CD1.10706@gmail.com>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit
Archived-At: <http://mailarchive.ietf.org/arch/msg/ietf/baMbfjJcoTRsCSAobwIPxL6qZYg>
Cc: "rtcweb@ietf.org" <rtcweb@ietf.org>, IETF discussion list <ietf@ietf.org>, IESG <iesg@ietf.org>
X-BeenThere: ietf@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Tue, 29 Mar 2016 14:18:37 -0000

On 3/28/16 12:58 PM, Brian E Carpenter wrote:
> There are times when I think RFC2119 was a really bad idea, despite it having
> become probably the most frequently cited RFC (inside and outside the IETF).
> It seems to create as much confusion as it avoids.
>
> There are four words whose RFC2119 meaning is different from the dictionary
> meaning: should, recommended, may and optional. Having special typography
> for them is useful, because it signals the RFC2119 meanings. But if a spec
> uses, for example, a mixture of SHOULD and should, who knows what the authors
> intended? To that extent, the proposed clarification is helpful.
>
> The other words (must, shall, required, not) mean what they always mean.
> The only argument for upper-casing them is aesthetic symmetry. If a spec
> uses alternatives like mandatory, necessary or forbidden, they are just as
> powerful.
>
> So
>> these definitions are only meaningful if the words are capitalized
> can be applied to should, recommended, may and optional if we want,
> but strictly doesn't apply to must, shall, required, not, mandatory,
> necessary, forbidden, need, or any other such words.
>
> Where we can get into real trouble is if a spec contains should, recommended,
> may and optional *plus* other non-categorical (fuzzy) words like ought,
> encourage, suggest, can, might, allowed, permit (and I did not pull those
> words out of the air, but out of draft-hansen-nonkeywords-non2119). What do
> they mean? It can be very unclear. If a node receives a message containing
> an element covered in the spec by "allowed" instead of "OPTIONAL", is the
> receiver supposed to interoperate or to reject the message?
>
> If we are issuing guidance, it should probably include a specific warning
> to use any such fuzzy words with extreme care.

I've been watching this thread and am thrilled to see these
clarifications coming through. Changes to RFC 2219 are a community
decision, not an RFC Editor decision, but the RFC Editor definitely
appreciates consistency and clarity!

-Heather


>    Brian
> On 29/03/2016 03:13, Scott O. Bradner wrote:
>> one minor tweak
>>
>>> On Mar 28, 2016, at 10:09 AM, Barry Leiba <barryleiba@computer.org> wrote:
>>>
>>>> The wishy washy descriptive rather than proscriptive language in the abstract was because I,
>>>> the IESG and the community were not of one mind to say that the use of such capitalized
>>>> terms should be mandatory - quite a few people felt that the english language was at
>>>> least good enough to convey  the writer’s intent without having to aggrandize specific words.
>>>> Thus the abstract basically was saying: if you want to use capitalized words here is a standard
>>>> way to say what they mean
>>> Ah.  Then perhaps the clarification needs to go a little further and
>>> make this clear:
>>> - We're defining specific terms that specifications can use.
>>> - These terms are always capitalized when these definitions are used.
>> these definitions are only meaningful if the words are capitalized
>>
>>> - You don't have to use them.  If you do, they're capitalized and
>>> their meanings are as specified here.
>>> - There are similar-looking English words that are not capitalized,
>>> and they have their normal English meanings; this document has nothing
>>> to do with them.
>>>
>>> ...and I'd like to add one more, because so many people think that
>>> text isn't normative unless it has 2119 key words in all caps in it:
>>>
>>> - Normative text doesn't require the use of these key words.  They're
>>> used for clarity and consistency when you want that, but lots of
>>> normative text doesn't need to use them, and doesn't use them.
>>>
>>> Barry
>>