In addition, an edge may store local attributes in its attributes slot (an edge-attributes tuple).
Notes By convention, an edge orders its endpoints "from" tail "to" head, even if it belongs to an undirected graph, where such a distinction is generally meaningless. See the Graphviz documentation (https://graphviz.org/Documentation.php), and specifically the notes about ambiguous attributes (in https://graphviz.org/content/attrs) for more information.