職場実習6日目

今日はperl CGI掲示板(SS投稿サイト)の基本的な仕様を考える。
機能については前日書いた通りだが、どういう仕組みのサイトにするのか触れていない。

DB仕様を決めるのに役に立ったサイト
PostgreSQL 8.2.5文書

SQLテーブル定義をいくつか考えているうちに、とんでもなく単純化できてしまう事に気付いた。
サイトで扱うデータは以下の通り。

  • 会員情報
  • SS情報
    • SS文書情報
    • SS挿絵情報
    • SS書式情報
    • SS用語情報
      • SS固有名詞情報
      • SS登場人物情報
  • SSグループ情報
    • 章情報
    • 部情報
    • 巻情報
    • 作品(シリーズ)情報
    • ジャンル情報
  • サークル情報
    • サークルのメンバー情報

これらのうち、SS単体を節という区分と見なし、以下のようなツリー構造を見出す事ができる。

最上位グループ
├ジャンル
├┼サークル
├┼┼作品シリーズ
├┼┼┼巻(作品)
├┼┼┼┼部
├┼┼┼┼┼章
├┼┼┼┼┼┼節(SS)
│││││││├書式
├┼┼┼┼┼┼┼用語
│││├┼┼┼┼┼固有名詞
│││├┼┼┼┼┼┼登場人物
└┴┴┴┴┴┴┴┴┴┴挿絵

つまり、このツリー構造に入る物は全て同じ属性を持たせて一括管理できるという事。
DBで使用するテーブルは、会員情報、サークルメンバー情報、オブジェクト情報の3つだけで済む事になる。