在 json.org 上使用的生成铁路图的工具[已关闭]

问题描述 投票:0回答:9

我喜欢 json.org 上的铁路图的语法,它是 BNF 语言的图形表示。我还没有找到任何工具可以产生如此雄辩的结果。

任何人都可以识别用于生成这些图表的工具吗?

bnf diagramming
9个回答
103
投票

有一个在线铁路图生成器。它根据 EBNF 中指定的上下文无关语法创建 SVG 语法图,也称为铁路图。您可以复制 SVG 代码或截屏。

你必须输入语法,它就会生成图表。

例如,要创建您显示的第一个铁路图,您可以使用以下代码:

object ::= '{' ((string ':' value ) ( ',' string ':' value )*)? '}'

enter image description here

然后您可以继续使用

string
value
定义
string ::= ...
value ::= ...
参考文献均已显示。

查看页面上的一些示例图。他们有 XML,甚至 EBNF 本身。


53
投票

来自道格拉斯·克罗克福德
到阿利姆B
日期 2009 年 4 月 28 日星期二下午 6:01
主题回复:json.org 上的铁路图

我用 Visio 画的。有创造力的 Docs.NET 也运行良好。

--

Aleem B 写道:

你好道格拉斯,

我非常喜欢你放的大部分东西 那里还有铁路图 json.org 也不例外。我已经 试图四处寻找一个工具 会生成图表几乎 雄辩但没有运气:

json.org 上使用的生成铁路图的工具

有没有什么工具可以用来转换 这些图的 BNF 还是它们 手工制作?

--阿利姆


29
投票

Tab Atkins Jr. 使用 svg 创建了一个 Javascript 铁路图生成器,特别是因为他找不到具有他想要的视觉吸引力的一个,即“JSON.org 外观”。


9
投票

前几天也有类似的问题: 创建铁路图的好工具是什么?

这个问题是关于 SQLite 语法图中的铁路图是如何生成的。 接受的答案发现这些图是使用 Tcl 编写的 DSL 生成的。

另一个答案提出了使用基于 EBNL 语法的图表生成器的建议。


5
投票

我也一直在寻找用于生成这些语法图表的工具,如果可能的话在

js library
中,这样就可以对其进行编辑和显示,而无需等待无聊的时间来生成图形。

我知道有工具在那里,但我想说来自www.bottlecaps.de的生成器有一个漂亮的图形和颜色选项。不幸的是我无法在那里获得该工具本身的源代码。

我还在这里找到了相关问题的答案,但只得到了以下内容,我们可以将其作为开源

js library
获取,并提供在线演示,我们可以尝试使用


4
投票

IBM 的铁轨生成器处理得很好的事情之一就是默认值。我还没有见过另一个发电机可以做到这一点。

一个例子是

          ┌─────◀────┐┌(──«defaults»─)─┐                        
▶▶─COMMAND┴«argument»┴┼────────────────┼──────────────────────▶◀
                      │ ┌────◀─────┐   │                        
                      └(┴┬«option»┬┴┬─┬┘                        
                         └Help────┘ └)┘                         

4
投票

我找到了J-algo工具。我认为绘制图表很容易,但我无法导出到图像或其他类型。

enter image description here

http://j-algo.binaervarianz.de/index.php


0
投票

查看 http://code.google.com/p/html-railroad-diagram/,它可以生成 HTML 铁路图。有一个 example 显示了通过 JavaScript 在 HTML 页面中生成的带有链接的 JSON 铁路。


0
投票

我似乎记得 IBM 有一个工具可以构建此类图表,作为其 BookMaster SGML 套件的一部分。铁路图经常用于大型机文档中。

© www.soinside.com 2019 - 2024. All rights reserved.