Internet DRAFT - draft-hansen-nonkeywords-non2119
draft-hansen-nonkeywords-non2119
Network Working Group T. Hansen
Internet-Draft AT&T Laboratories
Intended status: Best Current Practice D. Crocker
Expires: October 31, 2012 Brandenburg InternetWorking
May 2012
Non-Normative Synonyms in RFCs
draft-hansen-nonkeywords-non2119-02
Abstract
Specifications in RFCs contain normative keywords, as defined in RFC
2119, to signify requirements, permission or prohibitions. These
include MUST, SHOULD and MAY, which are commonly recorded in all
CAPITALS (but need not be). The words are sometimes also intended
with non-normative meaning; this different usage can be confusing.
Happily there are adequate alternatives for non-normative meanings.
For such situations, this document provides some alternatives to the
normative vocabulary of RFC 2119.
Status of this Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on October 31, 2012.
Copyright Notice
Copyright (c) 2012 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (http://trustee.ietf.org/
license-info) in effect on the date of publication of this document.
Please review these documents carefully, as they describe your rights
and restrictions with respect to this document. Code Components
extracted from this document must include Simplified BSD License text
as described in Section 4.e of the Trust Legal Provisions and are
provided without warranty as described in the Simplified BSD License.
1. A List of Synonyms
Hansen & Crocker Expires October 31, 2012 [Page 1]
Internet-Draft RFC Non-Keywords May 2012
To indicate a degree of requirement, permission or prohibition for an
aspect of a specification, words such as MUST, SHOULD and MAY are
defined as normative vocabulary in the formal aspects of the RFC
series.[RFC2119]. However it is also natural to use them non-
normatively, in a narrative fashion. Even when this is permitted,
such as RFCs that do not invoke the conventions of RFC 2119, non-
normative use of these words is often confusing; their normative
meaning is too deeply ingrained in the culture of the RFC series.
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 [RFC2119].
Fortunately, there are other words readily available, in lieu of the
RFC 2119 words. These alternatives, or their equivalents, SHOULD be
used instead of their normatively-encumbered vocabulary.
MUST, REQUIRED, SHALL: The words "needs to" and "necessary" SHOULD
be used to connote that something is essential.
SHOULD, RECOMMENDED: The words "ought", "encouraged" and "suggest
strongly" SHOULD be used to connote that something is strongly
urged.
MAY, OPTIONAL: The words "can" and "might" SHOULD be used to
indicate the possibility or capability of performing an action.
The words "is allowed to" or "is permitted to" SHOULD be used
to indicate permission to perform an action.
NOT: The word "not" can be freely used with any of the above
suggestions and will not be taken to have any separate RFC 2119
connotation. The word only takes on a special meaning when it
is combined with one of the RFC 2119 normative words. For
example, "ought not" is non-normative, while "should not" and
"SHOULD NOT" are normative in the RFC 2119 sense.
RFCs that cite RFC2119 vocabulary usage MUST NOT employ the listed,
normative vocabulary for non-normative meaning. RFCs that do not
cite RFC2119 SHOULD NOT employ that vocabulary.
Note that the above list of synonyms is not meant to be exhaustive;
other non-RFC2119-normative words MAY also be used at the author's
discretion.
Authors who follow these guidelines MAY incorporate a declaration at
the beginning of their document, but note that this is not required.
This document can be discussed on the ietf@ietf.org mailing list.
2. Acknowledgements
Hansen & Crocker Expires October 31, 2012 [Page 2]
Internet-Draft RFC Non-Keywords May 2012
Ran Atkinson
3. IANA Considerations
This document has no IANA considerations.
4. Security Considerations
The 2119 terms are frequently used to specify behavior with security
implications. The effects on security of changing something from a
"MUST" to a "needs to", or vice versa, can be very subtle, as one has
normative meaning and the other does not. Document authors need to
take the time to consider the effects of using non-normative verbiage
as specified in this document instead of the normative verbiage from
2119.
5. References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
Authors' Addresses
Tony Hansen
AT&T Laboratories
200 Laurel Ave South
Middletown, NJ 07748
USA
Phone: +1.732.420.8934
Email: tony+nonkeywords@maillennium.att.com
D. Crocker
Brandenburg InternetWorking
675 Spruce Dr.
Sunnyvale,
USA
Phone: +1.408.246.8253
Email: dcrocker@bbiw.net
URI: http://bbiw.net
Hansen & Crocker Expires October 31, 2012 [Page 3]