-思いつき
jaxenのAPIを眺めていてわかったのは、このjaxenというものがXPath式で取り扱えるものはDOMやそれに類するものに限らないということです。JavaのソースコードやSQL、その他様々なものの取り扱いとして使えそう。jaxenの価値はXPathの解釈とコンテキストオブジェクトとの通信に集中しているところで、結構ベタな量のある実装です。これはなかなか作れない。そしてコンテキストオブジェクトとの取り扱いは柔軟にできている(ように見える)ので、たとえば以下のようなものもできるかなと。
- EclipseのJDTをツリーウォークするNavigatorを作ると、XPath式でIJavaElementを取り扱うことができる。
- DAOモデルとダイナミックにつなげてXPathでRDBMSにクエリーをかけるエンジンを作れる。
- XPathでSeasar2上のコンポーネントを透過的に取り扱う仕組みがつくれる。
ま、実装する意味があるかはそれぞれ「SQLテンプレート」以下かと思いますが。。。