From time to time it becomes necessary to specify grammars using a variant of the Backus-Naur-Form (BNF) or one of its extended forms (eBNF). BNFs are used e.g. for defining grammars in the RFCs (Request for Comments) standards of the IETF (Internet Engineering Task Force), but also in the context of the World-Wide-Web consortium for defining e.g. XML, but also in the context of the OpenOffice.org projects.
If it was possible to use BNFs to create nice renderings for documentation purposes, like syntax definitions in the form of raildiagrams and the like, then the changes to such BNFs could be easily reflected in exactly matching renderings for documentations.