MyXMLElement[title_,attributes_List,children_List]:=Module[{visible=Module[{y=#[[1]]},Row[{Button[Style[Dynamic[y],#[[2]]],CreateDialog[InputField[Dynamic[y],String]],AppearanceNone]," ",Dynamic[If[StringContainsQ[y,HexStringPattern],RGBColor[StringCases[y,HexStringPattern][[1]]],""]]}]]&/@Join[{{If[Head[title]===List,StringRiffle[title,"⁃"],title],tagStyle}},List[StringJoin[If[Head[Keys[#]]===List,StringRiffle[Keys[#],"⁃"],Keys[#]],": ",Values[#]],attStyle]&/@attributes]},If[Length[children]0,Column[visible],OpenerView[{Column[visible],Column[If[Head[#]===String,Module[{y=#},Button[Style[Dynamic[y],baseStyle],CreateDialog[InputField[Dynamic[y],String]],AppearanceNone]],#]&/@Cases[children,x___/;!(Head[x]===XMLObject["Comment"])]]},FrameMargins10]]]