@main[]
^domdata[]
^show_xnode1[$xdoc.documentElement;0;1]
^show_xdoc2[$xdoc]
@domdata[]
$xdoc[^xdoc::create[doc]]
$doc[$xdoc.documentElement]
$name[^doc.appendChild[^xdoc.createElement[name]]]
$text[^name.appendChild[^xdoc.createTextNode[петросян&coz]]]
@show_xnode1[x;level;single][l]
^if(def $x){
^for[l](0;$level-1){ ^; ^; ^; ^;}
^if($x.nodeType == $xnode:ELEMENT_NODE){
<^;$x.nodeName
$pairs[$x.attributes]
^if(def $pairs){
$names[^pairs._keys[]]
^names.menu{ $names.key="$pairs.[$names.key].nodeValue"}
}
>^;
}{
[$x.nodeType]
}
^if(def $x.nodeValue){$x.nodeValue}
^show_xnode1[$x.firstChild]($level+1)
^if(!$single){
^show_xnode1[$x.nextSibling]($level)
}
^if($x.nodeType == $xnode:ELEMENT_NODE){
^for[l](0;$level-1){ ^; ^; ^; ^;}<^;/$x.nodeName>^;
}
}
@show_xdoc2[xdoc]
^taint[html][^xdoc.string[
$.method[html]
]]