A Graph::Easy::Node represents a node in a simple graph. Each node has contents (a text, an image or another graph), and dimension plus an origin. The origin is typically determined by a graph layouter module like Graph::Easy.

For a node that has no origin (is not relative to another), returns $node. For all others, follows the chain of origin back until a node without a parent is found and returns this node. This code assumes there are no loops, which origin() prevents from happening.

The return value of that method is added as extra params to the HTML tag for a node when as_html() is called. Returns the empty string by default, and can be overridden in subclasses. See also use_class().

Overridden method should return a text with a leading space, or the empty string.