我希望将我们的规范提升到更好的语法、语义等细粒度定义的水平。我阅读了我的公平份额的RFCs,只是喜欢他们定义的东西,如“电子邮件地址的样子”或“什么是正确的URL”。
但是,我还没有找到这些定义的语法定义。例如,你如何定义可选部件?你如何定义重复?如何正确定义替代方案(/
与|
)
是否有一个RFC定义了所有其他RFCs使用的语法来定义它们的实际域特定的定义,我可以适应我们的规范?
发布于 2014-04-30 02:02:55
在许多现代RFCs中使用的语法形式称为增广Backus,并在RFC 5234-用于语法规范的增强BNF : ABNF中指定:
Internet技术规范通常需要定义一个正式的语法。多年来,Backus ( BNF )的一种改进版本被称为增广BNF (ABNF),在许多Internet规范中都很流行。当前的规范记录了ABNF。它以合理的表现力平衡紧凑性和简洁性。标准BNF和ABNF的区别包括命名规则、重复、替代、顺序无关和值范围。该规范还为几个Internet规范所共有的类型的核心词法分析器提供了额外的规则定义和编码。
https://softwareengineering.stackexchange.com/questions/237471
复制