-$remove

id:duranさんのBLOGにコメントしつつも、おや?と思ったので、サンプルを作ってみました。CVSには、/hello/hellomaya3.htmlとして追加してあります。

<html xmlns:m="http://www.seasar.org/maya">
  <head>
      <meta http-equiv="content-type" content="text/html; charset=Shift_JIS">
    <style type="text/css">
      div.box {
        text-align: center;
        border: dotted #3af 2px;
        background-color: #dfe;
        padding: 10px;
        width: 50%;
      }
    </style>
  </head>
  <body>
    <div><a href="../index.html">戻る</a></div>
    <h1>Remove sample</h1>
    <div class="box">
      <span m:inject="$remove">削除メッセージ</span>
    </div>
  </body>
</html>

0.1でも動きましたよ。m:injectと、名前空間が出てくるので、「xmlns:m="http://www.seasar.org/maya"」の宣言が必要です。これを、下記のようにすると、純粋HTMLですな。しかーし、下記のパターンは実装してない(笑。単純に忘れてました。remove設定エレメント用のSpecificationResolverを作って登録するとOK。0.2でやります。ちなみに、テンプレのマジックカスタムタグも、設定XMLのエレメント定義もカスタマイズ可能になってます。そのアダプター型のカスタマイズで仕様内の機能も積み重ねているので。。。アダプターエンジンは作りましたが、アダプターは網羅していないので、60%の出来と言っています。

テンプレート
<html>
...
      <span id="removeID">削除メッセージ</span>
...
設定XML
<maya>
      <remove id="removeID"/>
</maya>

こんな風に設定XMLに外だしできるっと(0.1ではこのremoveの処理アダプターの実装忘れていますが)。