Web上の物置サービスを考える

結局、原点に戻るのだ。
Web上の本棚サービスを考える - 永字八法の続き。
Web上で、本棚に限らない棚を提供するサービスを考えた。
アクセス方法は三種類を想定

  1. APIでアクセスし、誰かの作成したアプリに組み込む
  2. ブラウザでのアクセスCGIを作成する
  3. スタンドアローンのアプリを提供し、アプリがAPIを叩く。

複数人との共有も視野に入れて設計する。
なので、名前は、Shared Shelf Service、略してSSSになる。イタい。

基本構造

三つのテーブルからなる。

  1. objectテーブル:それぞれのアイテムの種類ひとつにつき、1レコードが用意される。
  2. attrテーブル:objectが持つべき属性をどんどん記録していく。
  3. object_attrテーブル:objectとattrの組み合わせを記録していく。
objectテーブル
object_id regist_timestamp update_timestamp
1 200*-**-** **:**:** 200*-**-** **:**:**
attrテーブル
attr_id category name
1 gtin 09784047139886
2 ean 9784047139886
3 isbn10 4047139882
4 amazon_ja_asin 4047139882
5 price 540円
6 amazon_ja_image http://ec2.images-amazon.com/images/I/51LvTK7xEpL._SS500_.jpg
7 amazon_ja_author 左菱 虚秋
8 amazon_ja_author 矢立 肇
9 amazon_ja_longest_size 18cm
10 amazon_ja_middle_size 13cm
11 amazon_ja_smallest_size 2cm
12 release_year_month 2007-11
13 release_year 2007
14 release_month 11
15 amazon_ja_title ガンオタの女 1 (1) (角川コミックス・エース 194-1) (コミック)
16 title ガンオタの女
17 volume 1
18 label 角川コミックスエース
19 code 194-1
20 size B6
object_attrテーブル
object_id attr_id
1 1
1 2
1 3
1 4
1 5
1 6
1 7
1 8
1 9
1 10
1 11
1 12
1 13
1 14
1 15
1 16
1 17
1 18
1 19
1 20
以上

まあ、こんな感じ。