必要な機能は以下のようなものです。
・データベースに,短い文章が登録されている。
・利用者は文章の特定の部分に対してコメントをつけることができる。
・つけられたコメントは,本文と共に表示される。
・コメントの対象となる文章及びコメントは変更・訂正される場合がある。
・文章,コメントの双方が検索の対象となる。
既に考えた事柄は以下の通りです。
・バイト数・文字数などの位置で特定する方法は,対象に変更があったときに注のデータを変更することになるので避けたい。
・文章中にタグ付きで埋め込む方法は検索が複雑になるので避けたい。
以上から,
・XMLデータにする
・タグ付きにし,検索対象データを別に保持する
の2通りの方法を考えたのですが,他により一般的な方法があればお教えください。
なお,「他の方法はない」という回答は不要です(ポイントは差し上げません)。
MySQLを使われるならテーブルつくらはったらどないです。
本文用テーブル
id
本文
作成者
コメント用テーブル
id
本文のid
コメント文
こんな感じで本文用とコメント用をidで結び付けして
本文や個々のコメント文はそれぞれのidをupdate条件にすると。
表示用の画面は好きにデザインすれば見易さを追及できますよ~
URLはダミー:http://www.google.com/
最初にMySQLでやると書いてあったので、短歌とか文章とかコメントも全部テーブルに格納するのかと思ったらそうじゃないんですね。
掲示板やブログもそうしていると思いますが、親子関係のインデックスをつけて、全部テーブルに格納した方がいいのではないですか。
検索については全文検索の実用化などもかなり進んでいます。
先ほどの方と同様の誤解ですね。
必要があれば全てテーブルに格納しますし,ファイルベースの方が便利ならファイルベースにします。
ツリー構造のデータを作りたいわけではなく,文章の特定の部位に事後的な変更の手間が小さい方法でコメントをつけたいだけです。
0pt
コメントをつけたいのは,「文章」に対してではなく「文章の部分」に対してです。
木構造のデータを作りたいわけではありません。
0pt