我在生成 Internet 打印协议定义 RFC3382 中描述的集合记录时遇到了一点麻烦。有人用BNF写过语法吗?
2 回答
很难说!我经常在互联网上搜索有关 IPP 的信息,到目前为止还没有遇到任何与 IPP 和 BNF (Backus-Naur-Form) 相关的工作。
我想PWG IPP 邮件列表会更适合这个问题。大多数 ipp 实现不使用扫描器或解析器来处理 ipp 消息。我假设您实现了一个 ipp 服务器并且已经涵盖了 ipp 解析。
有时捕获真实打印机的 ipp 消息(响应)并查看其字节序列是一种很好的方法。根据要求(个人邮件),我可以提供二进制格式的响应(包括 media-col-default 和 media-col-database 属性)
我从打印机工作组 (PWG) 网站得到了答复。简短的回答是正在进行的 RFC 对集合有更精确的语法。
来自迈克尔·斯威特:
即将发布的 RFC 8010(取代 RFC 2910 和 3382)中有一个更新的 ABNF 语法以及可能会有所帮助的更好示例。这是作者评论副本的链接(应该很快就会发布!):
https://www.rfc-editor.org/authors/rfc8010.txt
3.1.6 节和 3.1.7 节分别介绍了集合属性及其成员属性的编码。
FWIW,3382 中集合的“设计”是专门为使它们看起来像具有混合值的 1setOf 属性,以便现有客户端/打印机可以更轻松地处理它们。在实践中,这使得支持集合比理想的更困难(并且集合值的编码更冗长)......:/
(Sweet 先生,我很抱歉在未咨询您的情况下重新分发您的信息)