RFC (Request For Comments) 是指網路上標準的討論草案. 每個編號都代表一個獨立的文件, 像是 RFC3261 專門講 SIP (Session Initiation Protocol) 的規範等等. 發行 RFC 的單位是 IETF (Internet Engineering Task Force). 由於 IETF 只是一個鬆散的組織, 背後由 The Internet Society 提供支援. 因此 RFC 文件的 copyright 屬於 The Internet Society 所擁有.
相較於每份標準要賣百塊瑞士法郎的 ISO/IEEE, The Internet Society 的文件都可以免費地由網站上取得. 其中 RFC2119 很特別地不是講技術, 而是講規格中幾個常用詞的定義. SHALL 可以例外嗎? MAY 到底是有規定還是沒規定?
如果我們以光譜來看, 最左邊是一定要, 最右邊是一定不要. MUST 和 SHALL 都是同級的, 表示最強烈的意思. 退而求其次就是 SHOULD, 它允許有例外. MAY 的話, 就有點不置可否了. 很有趣地, RFC 2119 這本規格就只講了這些.
絕對肯定 —————————————————————————————絕對否定 | ||||
MUST
REQUIRED SHALL |
SHOULD
RECOMMENDED |
MAY
OPTIONAL |
SHOULD NOT
NOT RECOMMENDED |
MUST NOT
SHALL NOT |
絕對要 | 一般要, 可以有例外 | 可以做, 也可以不做 | 一般不可以, 可以例外 | 絕對不可以 |
版主您好:
請教一下 “SHOULD, 它允許有例外".
在 Android 5.0 Compatibility Definition Document (CDD)
按一下以存取 android-5.0-cdd.pdf
的7.3.1. Accelerometer 中提到
MUST be able to report events up to a frequency of at least 100 Hz and SHOULD report events up to at least 200 Hz
如果我們公司的產品只能到125Hz, “MUST 100Hz" 這一關是過了
那 “SHOULD 200Hz" 允許例外的話, 我們可以通過測試嗎?? 會被標註什麼訊息嗎?
感恩 !!
Steve 您好, 這個測項在我們公司的產品中沒有, 所以我只能講個概念. 我的認知是 CDD 會反映在 CTS 測項. 如果測項 pass 就不用擔心, 如果測項 fail, 也有機會 waive 掉. 通常找到別家產品一樣沒過這項 (特別是 Nexus 產品), 但有 pass CTS/GTS, Google 就允許 waive. 產品 pass CTS 之後, 沒有再細分等級, 一樣都算 pass. 就算是 Nexus 系列的量產產品再拿來重測 CTS 也會 fail 100 多條.
感謝您的答覆 !!
“Should" 這個詞還真是很清楚地被定義得很模糊將就啊….