On Mon, May 19, 2025 at 07:21:21AM -0700, Wes Hardaker wrote: > Nico Williams <[email protected]> writes: > > ASN.1 is much better, though of course you still need a ton of normative > > natural language. The example RFC regarding ASN.1 as normative would be > > RFC 5912. It's not possible to write all of RFC 5912's contents as > > normative natural language text. The _semantics_ of all the things in > > RFC 5912 require normative natural language text, but the OIDs, the > > types, the object sets, etc. should be kept in ASN.1. > > When trying to improve the quantity and quality of encodable information > in network management models when moving from MIBs (ASN.1-like) to YANG > we ran into this sort of issue. Though YANG allows for greater formal > definition of things, it was very clear that text descriptions would > always be needed to describe additional semantics of objects and the > restrictions on their use, beyond just a description (aka "what is it").
That's basically what I said: some things have to be left to natural language. We _could_ have a language for specifying protocols, and the ITU-T has developed such a language called Specification and Description Language (SDL), but I am unaware of any Internet protocols that use SDL (a quick search indicates that none do). SDL looks... pretty good actually, being something like a formal pseudocode language of sorts. But even with SDL we would need some normative natural language text. My take is that as much as possible we should use formal languages for normative details like the ones you see in RFC 5912 (which is Informative, I know, but we could upgrade it to standards-track). Mind you, I'm skeptical of expressing any normative requirements with ABNF. Or even in an LALR(1), LALR(k), LR, GLR, or other parser grammars unless code, pseudocode, or normative natural language text is associated with relevant "actions". Nico -- _______________________________________________ rfc-interest mailing list -- [email protected] To unsubscribe send an email to [email protected]
