Outil de génération de schéma de chemin de fer utilisé sur json.org [fermé]


99

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 alternatif

texte alternatif

Réponses:


94

Il existe un générateur de diagramme de chemin de fer en ligne . Il crée des diagrammes de syntaxe SVG , également connus sous le nom de diagrammes de chemin de fer, à partir de grammaires sans contexte spécifiées dans EBNF . Vous pouvez copier le code SVG ou prendre 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 utiliseriez le code:

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

entrez la description de l'image ici

Ensuite, vous pouvez continuer à définir stringet à valueutiliser string ::= ...et value ::= ...Les références sont toutes affichées.

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


Une idée sur la façon d'obtenir les graphiques dans votre propre document autre que a) faire une capture d'écran b) copier la source svg à partir de la source de la page?
rudolfson

1
@rudolfson - Vous pouvez écrire le vôtre, la logique centrale n'est pas trop mauvaise, et tout le code est là pour voir. Ensuite, intégrez simplement votre document. J'ai écrit un plugin WP basé sur cela. - Le plus dur est de rendre les graphismes jolis.
Peter Ajtai

2
Le générateur de diagrammes de chemin de fer en ligne mentionné ici propose désormais un fichier ZIP avec la version PNG des diagrammes générés. Excellent outil!
Sebastián Grignoli

2
Il semble que le webapp déplacé ici: bottlecaps.de/rr
enrico.bacis

Merci @ enrico.bacis - lien mis à jour
Peter Ajtai

50

de Douglas Crockford
à Aleem B
date mar, 28 avril 2009 à 18:01
sujet Re: Diagrammes de chemin de fer 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 beaucoup la plupart des choses que vous publiez 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 je n'ai pas eu de chance:

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

Avez-vous utilisé un outil pour convertir le BNF en ces diagrammes ou ont-ils été fabriqués à la main?

- Aleem


7
Pour compléter: Tab Atkins Jr. a créé un générateur de diagramme de chemin de fer Javascript utilisant SVG. spécifiquement parce qu'il n'a pas pu en trouver un qui avait l'attrait visuel qu'il voulait, c'est-à-dire "le look JSON.org".
Potherca du


8

Il y a quelques jours, il y avait une question similaire: quel est un bon outil pour créer des schémas ferroviaires?

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 révélé que les diagrammes ont été générés à l'aide d'un DSL écrit en Tcl.

Une autre réponse a proposé d'utiliser un générateur de diagrammes fonctionnant à partir de la grammaire EBNL.


Pour ajouter à cela, il existe également une liste d'outils dans l'article de Wikipédia auquel je renvoie. Un vrai schéma de chemin de fer ne devrait pas avoir besoin de flèches - si vous imaginez un train parcourant ces voies, il devrait être clair quels itinéraires vous pouvez ou ne pouvez pas emprunter. Et les diagrammes json.org sont tellement jolis, je dois savoir s'il existe un outil pour eux =) J'ai déjà vu ces liens mais cela pourrait aider les autres.
aleemb

4

Les valeurs par défaut sont l'une des choses que le générateur de voies ferrées d'IBM gère bien. Je n'ai pas vu d'autre générateur qui fasse cela.

Un exemple est

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

4

J'ai également recherché les outils utilisés pour générer ces diagrammes de syntaxe et si possible js librarypour qu'ils puissent être édités et affichés sans attendre un temps ennuyeux pour qu'un graphique vienne.

Je sais qu'il existe des outils , mais je dirais que le générateur de bottlecaps.de a un joli graphique avec une option de couleur. Malheureusement, je n'ai pas pu obtenir le code source de l'outil lui-même.

Je suis également allé aux questions de réponses connexes ici, mais je n'ai obtenu que les éléments suivants où nous pouvons l'obtenir en open source js libraryet fourni une démo en ligne avec laquelle nous pouvons essayer de jouer .




0

Il me semble que je me souviens qu'IBM a un outil qui construit de tels diagrammes dans le cadre de sa suite BookMaster SGML. Les diagrammes de chemin de fer sont souvent utilisés dans la documentation mainframe.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.