RFC 2119 - Key words for use in RFCs to Indicate Requirement Levels (RFCで要求レベルを示すキーワード)
Network Working Group (ネットワークワーキンググループ): S. Bradner
Request for Comments (意見募集): 2119
BCP: 14
Category (カテゴリ): Best Current Practice (ベストカレントプラクティス)
Organization (組織): Harvard University (ハーバード大学)
Date (日付): March 1997 (1997年3月)
Updated By (更新文書): RFC 8174
Status of this Memo (このメモのステータス)
This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements. Distribution of this memo is unlimited.
この文書は, インターネットコミュニティのためのインターネットベストカレントプラクティスを規定し, 改善のための議論と提案を求めます。このメモの配布は無制限です。
Abstract (概要)
In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. Authors who follow these guidelines should incorporate this phrase near the beginning of their document:
多くの標準化トラック文書では, 仕様における要求事項を示すためにいくつかの単語が使用されます。これらの単語は大文字で書かれることが多いです。この文書は, これらの単語が IETF 文書でどのように解釈されるべきかを定義します。これらのガイドラインに従う著者は, 文書の冒頭近くに次のフレーズを組み込むべきです:
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.
この文書のキーワード "MUST" (しなければならない), "MUST NOT" (してはならない), "REQUIRED" (必須), "SHALL" (するものとする), "SHALL NOT" (しないものとする), "SHOULD" (すべきである), "SHOULD NOT" (すべきではない), "RECOMMENDED" (推奨される), "MAY" (してもよい), および "OPTIONAL" (オプション) は, RFC 2119 に記載されているとおりに解釈されるものとします。
Note that the force of these words is modified by the requirement level of the document in which they are used.
これらの単語の効力は, それらが使用される文書の要求レベルによって変更されることに注意してください。
1. MUST
This word, or the terms "REQUIRED" or "SHALL", mean that the definition is an absolute requirement of the specification.
この単語, または用語 "REQUIRED" または "SHALL" は, その定義が仕様の絶対的な要求事項であることを意味します。
日本語対応語: しなければならない
意味: その定義は仕様の絶対的な要求事項です。
2. MUST NOT
This phrase, or the phrase "SHALL NOT", mean that the definition is an absolute prohibition of the specification.
このフレーズ, またはフレーズ "SHALL NOT" は, その定義が仕様の絶対的な禁止事項であることを意味します。
日本語対応語: してはならない
意味: その定義は仕様の絶対的な禁止事項です。
3. SHOULD
This word, or the adjective "RECOMMENDED", mean that there may exist valid reasons in particular circumstances to ignore a particular item, but the full implications must be understood and carefully weighed before choosing a different course.
この単語, または形容詞 "RECOMMENDED" は, 特定の状況において特定の項目を無視する正当な理由が存在する可能性があることを意味しますが, 異なる方針を選択する前に, 完全な影響を理解し慎重に検討しなければなりません。
日本語対応語: すべきである
意味: 強く推奨されますが, 特定の状況では例外があり得ます。異なる方針を選択する前に影響を十分に理解する必要があります。
4. SHOULD NOT
This phrase, or the phrase "NOT RECOMMENDED" mean that there may exist valid reasons in particular circumstances when the particular behavior is acceptable or even useful, but the full implications should be understood and the case carefully weighed before implementing any behavior described with this label.
このフレーズ, またはフレーズ "NOT RECOMMENDED" は, 特定の状況において特定の動作が許容される, あるいは有用でさえある正当な理由が存在する可能性があることを意味しますが, このラベルで記述された動作を実装する前に, 完全な影響を理解し, ケースを慎重に検討すべきです。
日本語対応語: すべきではない
意味: 強く非推奨ですが, 特定の状況では例外があり得ます。その動作を実装する前に影響を十分に理解すべきです。
5. MAY
This word, or the adjective "OPTIONAL", mean that an item is truly optional. One vendor may choose to include the item because a particular marketplace requires it or because the vendor feels that it enhances the product while another vendor may omit the same item. An implementation which does not include a particular option MUST be prepared to interoperate with another implementation which does include the option, though perhaps with reduced functionality. In the same vein an implementation which does include a particular option MUST be prepared to interoperate with another implementation which does not include the option (except, of course, for the feature the option provides.)
この単語, または形容詞 "OPTIONAL" は, 項目が真にオプションであることを意味します。あるベンダーは, 特定の市場がそれを必要とするため, またはベンダーがそれが製品を強化すると感じるために項目を含めることを選択する一方, 別のベンダーは同じ項目を省略する可能性があります。特定のオプションを含まない実装は, そのオプションを含む別の実装と相互運用できるように準備しなければなりません (おそらく機能は低下しますが)。同様に, 特定のオプションを含む実装は, そのオプションを含まない別の実装と相互運用できるように準備しなければなりません (もちろん, そのオプションが提供する機能を除いて)。
日本語対応語: してもよい
意味: 完全にオプションであり, 実装者は実装するかどうかを自由に選択できます。
相互運用性要件:
- オプションを実装しない実装は, オプションを実装した実装と相互運用できなければなりません
- オプションを実装した実装は, オプションを実装していない実装と相互運用できなければなりません
6. Guidance in the use of these Imperatives (これらの命令語の使用に関するガイダンス)
Imperatives of the type defined in this memo must be used with care and sparingly. In particular, they MUST only be used where it is actually required for interoperation or to limit behavior which has potential for causing harm (e.g., limiting retransmissions). For example, they must not be used to try to impose a particular method on implementors where the method is not required for interoperability.
このメモで定義されたタイプの命令語は, 慎重かつ控えめに使用しなければなりません。特に, 相互運用に実際に必要な場合, または害を引き起こす可能性のある動作を制限する場合 (例えば, 再送信を制限する) にのみ使用しなければなりません。例えば, 相互運用性に必要でない方法を実装者に押し付けようとするために使用してはなりません。
7. Security Considerations (セキュリティに関する考慮事項)
These terms are frequently used to specify behavior with security implications. The effects on security of not implementing a MUST or SHOULD, or doing something the specification says MUST NOT or SHOULD NOT be done may be very subtle. Document authors should take the time to elaborate the security implications of not following recommendations or requirements as most implementors will not have had the benefit of the experience and discussion that produced the specification.
これらの用語は, セキュリティに影響を与える動作を指定するために頻繁に使用されます。MUST または SHOULD を実装しないこと, または仕様が MUST NOT または SHOULD NOT と言っていることを行うことのセキュリティへの影響は, 非常に微妙な場合があります。文書の著者は, 推奨事項や要求事項に従わないことのセキュリティへの影響を詳しく説明する時間を取るべきです。なぜなら, ほとんどの実装者は, 仕様を作成した経験と議論の恩恵を受けていないからです。
8. Acknowledgments (謝辞)
The definitions of these terms are an amalgam of definitions taken from a number of RFCs. In addition, suggestions have been incorporated from a number of people including Robert Ullmann, Thomas Narten, Neal McBurnett, and Robert Elz.
これらの用語の定義は, 多数の RFC から取られた定義の混合です。さらに, Robert Ullmann, Thomas Narten, Neal McBurnett, および Robert Elz を含む多くの人々からの提案が組み込まれています。
9. Author's Address (著者のアドレス)
Scott Bradner
Harvard University
1350 Mass. Ave.
Cambridge, MA 02138
phone - +1 617 495 3864
email - [email protected]
References (参考資料)
- 公式原文:
https://www.rfc-editor.org/rfc/rfc2119.txt - データトラッカー:
https://datatracker.ietf.org/doc/html/rfc2119 - 更新文書: RFC 8174 -
https://www.rfc-editor.org/rfc/rfc8174.html
クイックリファレンステーブル
| 英語キーワード | 日本語対応語 | 要求レベル | 違反可能? |
|---|---|---|---|
| MUST | しなければならない | 絶対要求 | ❌ 不可 |
| MUST NOT | してはならない | 絶対禁止 | ❌ 不可 |
| REQUIRED | 必須 | 絶対要求 | ❌ 不可 |
| SHALL | するものとする | 絶対要求 | ❌ 不可 |
| SHALL NOT | しないものとする | 絶対禁止 | ❌ 不可 |
| SHOULD | すべきである | 強く推奨 | ⚠️ 正当な理由が必要 |
| SHOULD NOT | すべきではない | 強く非推奨 | ⚠️ 正当な理由が必要 |
| RECOMMENDED | 推奨される | 強く推奨 | ⚠️ 正当な理由が必要 |
| NOT RECOMMENDED | 推奨されない | 強く非推奨 | ⚠️ 正当な理由が必要 |
| MAY | してもよい | オプション | ✅ 可 |
| OPTIONAL | オプション | オプション | ✅ 可 |
重要な注意: これはすべての RFC 文書を読んで理解するための必読の前提です。すべての IETF 標準化トラック文書は, この仕様で定義されたキーワードのセマンティクスに従うべきです。