\subsection{Node and Edge Attributes}
At present, it is assumed that the input graph has been laid out. In particular,
each node should have a {\tt pos} attribute specifying 2 or 3 real numbers giving the
-x and y and, if applicable, z coordinates of the node. {\bf edge pos}
+x and y and, if applicable, z coordinates of the node.
+
+{\bf edge pos}
If an edge does not possess a {\tt pos} attribute, the edge will be drawn as a line segment
connect its end vertices.
If a node or edge has a {\tt color} attribute, that will be used as its color.
-Similarly, a node may have a {\tt color} attribute, which will affect the node's size if
+Similarly, a node may have a {\tt size} attribute, which will affect the node's size if
{\tt defaultnodeshape == 1}.
+If a node or edge has a {\tt visible} attribute, that will be used to determine whether
+to draw the object or not. By default, the object is drawn.
+To make an object invisible, set {\tt visible = 0}.
+
\smyrna\ also checks for a {\tt \_draw\_} attribute
for nodes, edges and graphs. This is assumed to be a valid xdot string describing how to
render the object. If the graph has a {\tt \_draw\_} attribute, this will be drawn first to serve