• 追加された行はこの色です。
  • 削除された行はこの色です。
RIGHT:[[:t/属性]] [[:t/継承]] [[:t/記法]]

継承でのオーバーライドでは完全に上書き。これをデコレーションもできるようにしたい。
継承でのオーバーライドでは完全に上書き。これを%%デコレーション%%インジェクションもできるようにしたい。
例えばHTMLレンダリング用のテンプレートで使用できるように。上位ページのテンプレートを下位ページが継承。サイト全体で共通する部分は上位ページのテンプレートに書いておく。

実装は1つ上位(複数)の値を自身に埋め込めればいい。埋め込む場所さえあればいいということ。
~<super>のような記法を属性値に書けるように。それが書かれてない場合は完全に上書き。下位に値が設定されていれば上位の属性値は残らない。
実装は1つ上位(複数)の値に自身を埋め込めればいい。埋め込む場所(プレースホルダー)さえあればいいということ。
~%%<super>%%<sub>のような記法を属性値に書けるように。それが書かれてない場合は完全に上書き。下位に値が設定されていれば上位の属性値は残らない。

これで上位テンプレートの中に下位テンプレートを埋め込むことを可能に。

→<super>ではなく属性値の埋め込みで。
→ [[:Done/セレクターは属性値デコレーションに使えない]]
→%%<super>%%<sub>ではなく属性値の埋め込みで?
→ [[:/セレクターは属性値デコレーションに使えない]]



*** 継承が終わってから埋め込み処理をする [#p9bce88e]
%%[[:Done/属性の継承法則#h75f43d1]]%%
%%継承処理(の一部)を独自に定義して、上位のテンプレートを下位のテンプレートに埋め込み。%%
%%独自に定義できるのは同階層の場合も、異なる階層の場合も両方。%%

継承ではなく、異なる名前のテンプレートをコントロール層で集めて埋め込む。テンプレートには、属性名を含むプレースホルダーを書いておく。プレースホルダーを属性値に置き換え。継承は通常通り便利に使える。