def METHOD_NAME(self, node: InstanceNode) -> None:
    # create subgraph to represent the instance node. Attribute nodes will be nodes in the subgraph
    with self.digraph.subgraph(name=self.node_key(node)) as subgraph:
        label: str = "?" if node.entity is None else node.entity.get_name()
        subgraph.attr(label=label)
    if node is node.get_self():
        for attribute in node.attributes.values():
            self.add_node(attribute)
        for index_node in node.get_all_index_nodes():
            self.add_node(index_node)
    else:
        self.add_node(node.get_self())
        self.digraph.edge(self.node_key(node), self.node_key(node.get_self()), label="index")