XSS対策として入力値チェックライブラリを考えているんですが、入力値としてHTMLを許可する場合、これを解析してなんとかならんもんかと思ってたりします。
JavaのHTMLパーサ
XMLスキーマとかも使えそうなもんですが、柔軟になる分、ユーザはXMLスキーマの書き方を覚えなければならないわけで、いろんなチェックを、フィルタを通すように使える設計で作っておいて、「IE8がでたー!」となったときでも「IE8Filter」を追加で作って、フィルタに追加するだけー・・・とかにしようかと。
調べてみると、いがぴょんさんのJavaで実装された HTML Parser (HTMLパーサ) を調べてみましたがとても素敵です。これにパフォーマンスとか、使い勝手を加えてまとめてみます。
今回、Google先生や、いがぴょんさんも言及しているOpen Source HTML Parsers in Javaから、以下を調査対象とした。結果はそれぞれまとめていき、結果はまとめページに載せる予定です。