docs: public String toDOTString() {
          StringBuilder sb = new StringBuilder();
  
          // id [label=id: value-type <value-type-attributes>];
          // id -> child_id;
          // id -> child_id;
  
          sb.append(m_id).append(" [label=\"").append(m_id).append(": ").append(getPlanNodeType()).append("\" ");
          sb.append(getValueTypeDotString());
          sb.append("];\n");
          for (AbstractPlanNode node : m_inlineNodes.values()) {
              sb.append(m_id).append(" -> ").append(node.getPlanNodeId().intValue()).append(";\n");
              sb.append(node.toDOTString());
          }
          for (AbstractPlanNode node : m_children) {
             sb.append(m_id).append(" -> ").append(node.getPlanNodeId().intValue()).append(";\n");
          }
  
          return sb.toString();
      }