#if defined _dom_included
  #endinput
#endif
#define _dom_included

native domGetTagName( xmltag:_id_, _value_[], _bufsize_ = sizeof _value_ );

native bool: domGetData( xmltag:_id_, const _attr_[]="", _value_[], _bufsize_ = sizeof _value_ );
native domSetData( xmltag:_id_, const _attr_[]="", const _value_[] );
native domRemoveData( xmltag:_id_, const _attr_[]="" );

native xmltag: domAddTag( xmltag:_parent_, const _tagname_[] );
native xmltag: domInsertTag( xmltag:_at_, const _tagname_[] );
native domRemoveTag( xmltag:_at_ );

native xmltag: domRoot();
native xmltag: domParent( xmltag:_id_ );
native xmltag: domFirstChild( xmltag:_id_, const _tagname_[] = "" );
native xmltag: domLastChild( xmltag:_id_, const _tagname_[] = "" );
native xmltag: domNext( xmltag:_id_, const _tagname_[] = "" );
native xmltag: domPrev( xmltag:_id_, const _tagname_[] = "" );

native xmltag: domFindTag( xmltag:_from_, const _tagname_[]="", const _id_[]="", bool:recursive=false );
