ページ名クラス。
項目名、見解ID、番号
ファイル名として使えるように区切りは「_」


内部名ページ名の分だけ Edit

外部名」があるのはページ名だけ。ページ名にのみ内部名を用意。他の区分はシステムが生成するIDしかないので、内部/外部の区別なし。

同名ページがあっても重複しないように。外部名が同じページでも内部名は異なる。ひとつの外部名に複数の内部名が結び付く。

メジャーID、マイナーID Edit

編集をするとが変わる。それでも同じページには同じ内部名であって欲しいので、編集ごとに変わる部分と変わらない部分とに分ける。
ユーザーが決められる部分…ページ名(+ディレクトリ名)→メジャーID

見解名は上位の名前(ページ名)に依存、合わせないと意味を成さないし、ページ名を指定しないと見解名のリストアップもできない。番号も上位2つを指定しないとリストアップ不可能。

独立できるのはページ名だけ。→内部では分ける。メジャーID依存しているのをマイナーIDとして、2部構成に。

Entry:Side:Rev → Major:Miner

ファイル構成は内部名依存。Major(Entry)を指定するとMiner(Side:Rev)をリストアップ可能。3層にそれぞれ代表があるから、どれが欠けていても扱うべき内部名は得られるけど。

辞書ファイルはEntryごと:編集があるたびに更新しなければならないので。EntryのメジャーIDと同じ生存期間。ページ名リストは1つじゃないと意味をなさない

を含まない Edit

内部名番号を分けたとしても、番号はページ名に依存する。ページごとに存在する番号が異なるので。

内部名ページ名に分ける。のほうは外部名とも組み合わせられるので、内部名と呼べるのはページ名に対応する部分だけ。は外部と共通。
本当にページ名に対応するだけの内部名同名ページの数だけ同一内部名が存在する。内部名は裏のページ名

同名ページ内のIDが必要 Edit

ページ名に対応する内部名だけでは複数ある同名ページに対応できないので、それを区別するIDが必要。
→ 結局、同名ページを区別するID(見解のID)が必要になる。自動リンクを維持するための外部名と一対一になる内部ページ名同名ページを区別するための見解ID、を区別するための番号。

自動リンクされる内部名はどう決まるか Edit

自動リンクではページ名変更に対応するため内部名を記録する。でもひとつのページ内部名は複数。複数ある中から選ぶ方法は?

結局、外部名リンクするしかない?
外部名だと自動リンクの維持が困難。ページ名変更のたびに自動リンクを更新しないと。
自動リンク用の「第二の外部名」必要?
内部名のメジャーIDが必要。
ページ名が変わらない限り同じで、番号を含まない。

外部名投票を加味しないと特定のページにはならないし、ならなくていい。でも自動リンクを作るにはページを特定した上で、その内部名を調べなければならない。内部名ページ名変更しても自動リンクを維持するはずなのに、外部名を記録するのでは維持できない。
自動リンク内部名ページ名に対応して、それだけではページを特定できない部分)と関連付ける。

結局、内部名は必要 Edit

メジャーID(同名ページの集約に付けるID)と、マイナーID(これだけでページを特定するGUID)。
同名ページをひとつでも残して名前変更すると、メジャーIDは新しくつけないといけない。古いメジャーIDを残さなければならないうえに、それとは異なるメジャーIDが必要になるので。

ページ名を変更した場合2通り Edit

いずれにしてもマイナーIDはそのまま。
を重ねても既存のマイナーIDはGUIDとして有効なまま。

マイナーIDのほうがメジャーぽい Edit

GUIDのほうを「メジャー」としたほうが分かりやすい。
ページ名に対応するほうを「裏ページ名」とでもしたほうがいい?
GUIDのほうは「ページID」。
このふたつはつなげたりしない。

外部名と内部名.png

ページ名変更に対応するため、外部名ーー内部名ーーページIDのほうがいい。

変更点 Edit

最新版を指すURIがない Edit

ページではなく特定でもなく、
同名ページの中のあるページ最新版をURIで指すには?
やはり見解IDは必要?

→ フォークを含んだり含まなかったりするので、ここでは用意しない。
特定のページIDページ名と「この特定ページの直系子孫のうち最新のもの」や「この特定ページの派生を含む子孫のうち最新のもの」といった問い合わせで、最新版を指定。
URIにはページ内容と同じ記法を書けるので、そこで特定のページIDページ名最新版のものに変換する。
汎用記法

ページIDからでは投票を反映した最新版が得られないので、ページ名を指定。内部名でも可。それで最新版を指す。

再々考 Edit

やはり内部名ページインスタンスのIDにすべき?

ページ/名前と、ID(内部名でGUID)だけで良さそう。特定とはID(ページインスタンスのID)のこと。
名前変更してもリンクを維持するためには?パーマリンクとしても使う。
→ 全共通のIDが要る。編集しても最新版に引き継がれ、ページ名変更しても変わらないID。ページ名と異なりシステムが生成する。このIDを指定するだけでページひとつの編集履歴が手に入る。フォークには引き継がれない。マージでは一方の全共通IDだけ引き継ぐ。

image.png

ページ名変更は編集のうち Edit

ページ名を変更しても過去に影響しない。履歴には異なるページ名が並ぶことになる。列挙されるのは同じ内部名を持つ
当時のページ名を調べやすい。ページ名ページ本文のうちという考え方に合っている。

自動リンク内部名を保持 Edit

ページ名変更時、自動リンクを維持する(変更に合わせて置き換える)なら自動リンク内部名を持っていなければならない。
自動リンク利用者によって異なる閲覧時展開ページ名変更に追従する必要はない。(明示的リンクは投稿者が作る投稿時展開なので追従する)ページ名ページ本文と同じように変更できるようにするため、ページ名変更時には追従するかどうかなどを選択させない。