-Kariyushi

私的ローカルR&Dプロジェクト「Kariyushi」。「Kariyushi」は以下を目的としたパーサー&ユーティリティです。

  • ランタイムは普通のDOM3 or SAX2パーサー
  • デザインタイムでは文法エラーがおきているXMLおよびHTMLでも指定Offsetまで欠如した文法を補いながらパースするSAX2ならすでにできてる
  • デザインタイムではIgnorableWhitespaceおよびエレメント内の空白改行と属性の出現順序を保存したDOMを作り、永続化時にはそのWhitespaceも復元する
  • XercesのXNIを使ってつくるが、Scannerはいじらないこと目標。なぜならNekoHTMLをそのまま使えるようにするため。普通のSAXプログラミングでできそう?
  • ランタイムはjava.lang.Classとjava.lang.reflection.*を使ってオブジェクト生成やリフレクションをする
  • デザインタイムはorg.seasar.kijimuna.core.rtti.*を使ってオブジェクト生成やリフレクションをする

ランタイムとデザインタイムの「調和」のためのミッシングリングを補うものです。が、ちょっと書いてうんざりしてきた。。。もう地味すぎて(笑。
追記
NekoHTMLもFilterとConfigurationでなんとかなってるのね、なるほど。あとはNekoHTMLのSAXParserがちゃんと(S2JSFで必要な機能が)動作するのかを確かめて、動けばパーサーではなくSAX2+ユーティリティで実装。動かなければXNIのFilterとかで付加機能のついたDOMParserをつくるっと。