HTMLの補完制作してみました。面倒だこいつ。
ElementとAttributeとNodeValueを区別するのが面倒で、Elementツリーの解析が面倒。
ドキュメントを先頭から順に読んでいって、スタックに積んでいけば良いんですが、close省略できるElementがあったり、IE(HTML 4.0 Tranditional辺り)がSyntaxSugarでClose読み飛ばしてくれるElementがあったり( img とか tdとか) 。サポートが面倒。
DTD参照しながらパースすすると重い。JavaScriptを諦めて、PerlやPythonのElementパーサを利用した方が早道かもしれませんなぁ。