Skip to content

Add a "Collected ABNF for IDL" appendix to spec #488

@mtdowling

Description

@mtdowling

The ABNF for the IDL in the specification is currently defined in chunks as each feature is explored and introduced. It would be nice to add an appendix of some kind that contained the collected ABNF, similar to many RFCs.

This change requires some hackery in Sphinx to listen for productionlist blocks with a name of "smithy", aggregate the data (not HTML), and then somehow generate a section that contains the aggregate ABNF, along with unique anchors that allow jumping around the aggregate ABNF. We don't want to give them normal production treatment in Sphinx since that would result in ambiguous references in the docs. The location where the aggregate ABNF is placed likely needs a custom directive (e.g., collected-productionlist or something with a required name).

  • Create Python code to aggregate productionlist blocks by name
  • Create a collected-productionlist directive that requires a name (e.g., "smithy")
  • Create Python code to generate a standalone productionlist output for an aggregated name using a custom collected-productionlist directive
  • Add an appendix section to the spec that uses collected-productionlist

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationThis is a problem with documentation.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions