{_root} none _root node_null node_document node_element name={name,na} node_pcdata value={value,na} node_cdata value={value,na} node_comment value={value,na} node_pi name={name,na} node_declaration name={name,na} node_doctype value={value,na} value,na curr,view(child)na curr = curr->next_attribute first_child next_sibling this,na {_attr} none _attr {name,na} = {value,na} {value,na} name,na value,na {_node,na} "{_attribute._attr->name,na}"="{_attribute._attr->value,na}" {_node,na} {_attribute} empty _node _attribute _node,na _attribute,na _type _end - _begin _begin