RIGHT:[[:t/リンク]] [[:t/実装]]

リンクを表すクラスはクラス構造のどこに位置するか?

----
#contents

**リンクは関連名を持つが、その持たせ方は? [#q559051b]
%%ページはオブジェクトでいいが、Element系クラス。%%
%%Elementはタグを持ち、リンクの場合はタグを関連名として扱う、とすれば?%%

→リンクの属性として。

** [#t56ab59b]
%%でも他のElementはタグを持たない。ページ、リンクは持ち、リスト(ol)、見出しは持たない%%

この区別は?
→ページのみコンテナー、他はElementでタグを持たない。リンクもElement。タグを持たない。

**他オブジェクトとの関わり合い [#tf0129b8]
ページ…コンテナー。他のオブジェクトを含む。
見出し…アイテム。含まれる専門。
リンク…つなぐもの。コンテナーの中にあるので見出しと同じ。でも他のコンテナー(ページ)を指し示す。

この「指し示す」をどう表すか?

→検索さえできればいいので見出しと一緒でいい。
検索時のクラス別コードは既にある。
他の状況ではリンクを特別扱いすることはない。


** [#p5fa6cfd]
→ページにはタグオブジェクトを含め、リンクには属性「関連名」を持たせる。
リンクはコンテナーではないのでElementを持つことはない。
リンクはElementなのでページに含まれる。
関連名は検索時にリンクの検索時コードで特別扱い。
つまり、他のElementと全く同じ扱いになる。

**ページ? [#laea8e30]
リンクは「関連名」と「リンク先」という属性を持つElement。
ページではない。
%%ページにすべき。%%

リンクにタグ付けはできない。
関連名で。

**検証 [#ze809fb3]
整合性を検証。
-リンク
問題なし。
-検索
影響なし。
-ページ
問題ない。
-タグ
タグはページ。ということは''タグを付ける=タグ(ページ)に関連名「タグ」でリンクを張る''ということ。
特別なページではないので、違いは関連名「タグ」のリンクがバックリンクにあることだけ。


**解決済み [#nbc7757d]
リンクはElement。
[[リンク]]に反映。