[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Gramática de GraphViz
- To: mindfood@xxxxxxxxxxxxxxx
- Subject: Gramática de GraphViz
- From: Jose San Leandro <jose.sanleandro@xxxxxxxxxxxx>
- Date: Tue, 24 Jan 2006 20:50:01 +0100
- Delivered-to: mailing list mindfood@orange-soft.com
- Delivered-to: moderator for mindfood@orange-soft.com
- Mailing-list: contact mindfood-help@orange-soft.com; run by ezmlm
- Organization: Ventura24
- User-agent: KMail/1.8.3
Hola,
Acabo de añadir a la lista de gramáticas disponibles [1] para el compilador de
compiladores ANTLR [2] una que permite leer documentos en formato Dot[3] de
GraphViz[4].
GraphViz es un conjunto de herramientas que generan representaciones visuales
de grafos, organizando los nodos conforme a distintos criterios. Graphviz
espera que los grafos se proporcionen en ficheros de texto en formato Dot.
El parseador [5] analiza ese tipo de ficheros y crea un modelo de objetos
representando la topología del grafo.
Esta gramática constituye el primer paso en un roadmap orientado a utilizar el
formato .dot para realizar el diseño tanto de modelos E/R como de diagramas
de flujo, y poder implementar generadores que transformen dicho diseño en
DDLs (posiblemente usando DdlUtils[6]), en un caso, y en clases e interfaces
particulares, en el otro.
Esto es conveniente para evitar las penalidades derivadas de usar herramientas
gráficas para realizar los diseños, como la dificultad o inadaptabilidad de
los formatos (p.ej. Dia[7] usa SVG[8], pero no permite especificar metadatos
ni dar más peso a unos elementos frente a otros), y sobre todo el retraso en
el que se incurre por el hecho de organizar los modelos manualmente conforme
éstos crecen, por no citar las dificultades al hacer "merge" en el CVS :).
Afortunadamente he podido hacer la gramática free.
Un saludo,
Jose.
P.S.: GraphViz también se puede integrar en MediaWiki.
[1] http://www.antlr.org/grammar/list
[2] http://www.antlr.org/
[3] http://www.graphviz.org/doc/info/lang.html
[4] http://www.graphviz.org
[5] http://www.antlr.org/grammar/1138116546902/dot/index.html
[6] http://db.apache.org/ddlutils/
[7] http://www.gnome.org/projects/dia/
[8] http://www.w3.org/TR/SVG/