This parser reads ER diagrams definition files, and produces two types of diagrams + SQL code.
[Graphviz](https://www.graphviz.org/) is used on server side to translate parsed graph descriptions into SVG objects.
-*Note:* at the moment only the conceptual graph is implemented, and no comments are allowed in textual descriptions.
-At least the former is planned, and also probably a way to indicate relative identifiers, and maybe links between relationships.
-
-*Note bis:* temporary dependency to [underscore](http://underscorejs.org/); good library but used so far only for its shuffle() method.
-
-----
An entity is defined as follow
* 1 = 1..1
* ? = 0..1
+Special cardinalities are also available to indicate relative identification: `?R` and `1R`.
+
To mark a weak entity, just surround its name by extra-brackets
[[WeakEntity]]
Animal Cat Fish
Planet Mars Venus
-Finally, blocks must be separated by new lines. For a usage example, see example.html (it should render as seen in example.svg)
+Finally, blocks must be separated by new lines. For a usage example, see example.html (it should render as seen in example\_\*.svg)
Note that the "drawMcd" method can take a second argument, which indicates the type of graph.
* "bubble" draws the standard graph, as seen [here](https://en.wikipedia.org/wiki/Entity%E2%80%93relationship_model#/media/File:ER_Diagram_MMORPG.png) for example
* "compact" (default) use the same box for an entity and its attributes
+
+-----
+
+**TODO** list:
+
+ - functional integrity constraints (CIF)
+ - inter-relations constraints (or, and, xor...)
+ - inheritance with the right symbol (triangle)
+ - put online somewhere (user enter graph description and get SVG + SQL)
+
+*Implementation note:* temporary dependency to [underscore](http://underscorejs.org/); good library but used so far only for its shuffle() method.