Outil de génération de schéma ferroviaire utilisé sur json.org

J’adore la syntaxe des diagrammes de chemin de fer sur json.org qui sont une représentation graphique du langage BNF. Je n’ai trouvé aucun outil capable de produire des résultats aussi éloquents.

Quelqu’un peut-il identifier l’outil utilisé pour générer ces diagrammes?

texte alt

texte alt

Il y a un générateur de diagramme de chemin de fer en ligne . Il crée des diagrammes de syntaxe SVG, également appelés diagrammes de chemin de fer, à partir de grammaires sans contexte spécifiées dans EBNF . Vous pouvez copier le code SVG ou effectuer des captures d’écran.

Vous devez taper la grammaire et cela fera le diagramme.

Par exemple, pour créer le premier diagramme de chemin de fer que vous montrez, vous devez utiliser le code:

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

entrer la description de l'image ici

Ensuite, vous pouvez définir la ssortingng et la value utilisant ssortingng ::= ... et value ::= ... Les références sont toutes affichées.

Découvrez quelques exemples de diagrammes sur la page. Ils ont XML et même EBNF lui-même.

de Douglas Crockford
à Aleem B
date mar 28 avr 2009 à 18h01
sujet Re: Schémas ferroviaires sur json.org

Je les ai dessinés avec Visio. Creative Docs.NET fonctionne également bien.

Aleem B a écrit:

Bonjour Douglas,

J’apprécie vraiment la plupart des choses que vous mettez là-bas et les schémas de chemin de fer sur json.org ne sont pas différents. J’ai essayé de chercher un outil qui génèrerait des diagrammes presque aussi éloquents mais qui n’ont pas eu de chance:

Outil de génération de schéma ferroviaire utilisé sur json.org

Y a-t-il un outil que vous avez utilisé pour convertir la BNF à ces diagrammes ou ont-ils été fabriqués à la main?

– Aleem

Tab Atkins Jr. a créé un générateur de diagrammes de chemin de fer Javascript en utilisant svg spécifiquement parce qu’il ne pouvait pas en trouver un qui avait l’attrait visuel qu’il voulait, à savoir ” l’apparence JSON.org “.

Il y a quelques jours, il y avait une question similaire: quel est un bon outil pour créer des diagrammes de chemin de fer?

Cette question portait sur la manière dont les diagrammes de chemin de fer dans les diagrammes de syntaxe SQLite étaient générés. La réponse acceptée a montré que les diagrammes étaient générés à l’aide d’un DSL écrit en Tcl.

Une autre réponse a suggéré d’utiliser un générateur de diagramme qui fonctionne à partir de la grammaire EBNL.

L’une des choses que le générateur de voies ferrées d’IBM gère bien est les valeurs par défaut. Je n’ai pas vu un autre générateur qui fait cela.

Un exemple est

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

J’ai trouvé l’outil J-algo. Je pense que c’est très facile de dessiner un diagramme mais je ne peux pas exporter vers une image ou un autre type.

entrer la description de l'image ici

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

J’ai également recherché les outils utilisés pour générer ces diagrammes de syntaxe et, si possible, dans la js library afin de pouvoir les éditer et les afficher sans attendre un temps ennuyeux pour un graphique.

Je sais qu’il existe des outils , mais je dirais que le générateur de bottlecaps.de a un joli graphisme avec l’option couleur. Malheureusement, je ne pouvais pas obtenir le code source de l’outil.

Je suis également allé sur les questions connexes de réponses ici, mais je n’ai reçu que les points suivants où nous pouvons l’obtenir en tant que js library open source js library et muni d’une démo en ligne sur laquelle nous pouvons essayer de jouer .

  • générateur de diagramme de chemin de fer à partir de tabatkins , en js (la syntaxe existe aussi en tant que bibliothèque Python )
  • js-sequence-diagrams de bramp , en js mais UML (la syntaxe est générée via bottlecaps.de )
  • umlClass de GoJS , en js mais trouvé uniquement pour UML

Jetez un coup d’œil à http://code.google.com/p/html-railroad-diagram/ qui génère des diagrammes de chemin de fer HTML. Il y a un exemple qui montre le chemin de fer JSON généré dans une page HTML par JavaScript avec des liens.

Je pense me souvenir qu’IBM a un outil qui construit de tels diagrammes dans le cadre de sa suite SGML BookMaster. Les schémas de chemin de fer sont souvent utilisés dans la documentation de l’ordinateur central.