Diagrama sintáctico
Los diagramas sintácticos, de sintaxis o del ferrocarril son una forma de representar una gramática libre de contexto. Representan una alternativa gráfica para la forma de Backus-Naur (BNF, por sus siglas en inglés) o la forma extendida de Backus-Naur (EBNF, por sus siglas en inglés). Los primeros libros usando diagramas de sintaxis incluyen el Manual del usuario de Pascal, escrito por Niklaus Wirth (los diagramas empiezan en la página 47) y el manual para CANDE de Burroughs. En el campo de la compilación, representaciones textuales como BNF o sus variantes son generalmente preferidos. BNF es bien entendido por los autores de compiladores y compiladores, pero no es bien entendido por la mayoría de los usuarios de las lenguas. Los diagramas de ferrocarril son más comprensibles para la mayoría de la gente. Alguna parte de la popularidad del formato de intercambio de datos JSON se debe a su representación en los diagramas de ferrocarril.
Principio
editarLa representación de una gramática que se haga de un conjunto de diagramas de sintaxis. Cada diagrama define un no terminal. Hay un diagrama principal que define el idioma de la siguiente manera: para pertenecer a la lengua, una palabra debe describir una trayectoria en el diagrama principal.
Cada diagrama tiene un punto de entrada y un punto final. El diagrama describe los caminos posibles entre estos dos puntos pasando a través de otros no terminales y terminales. Los terminales son representados por cajas redondas mientras los no terminales se representan por cajas cuadradas.