kdoc - 新bloc

  • 作成日:2012-02-29 16:15:41
  • 修正日:2015-12-10 18:47:46

URL

↑ページトップへ

  • ユーザページ
    http://www.bloc.jp/user/officek(こっちが正解にしていく。Googleに教えるcanonicalなURLはこちら)
    http://www.bloc.jp/officek(こちらも残す)
  • グループページ
    http://www.bloc.jp/group/pascals(いずれ新設する)
  • atページ
    http://www.bloc.jp/at/00001(たぶんゼロパディングはしない)
    http://www.bloc.jp/at/1(こっちになると思う)
  • dataページ
    http://www.bloc.jp/data/1(旧ページはこれで)
    http://www.bloc.jp/ja/event/1(新ページはこれでいこうかな/たとえばprogramでもeventでも結局同じ、みたいな運用とか)
    http://www.bloc.jp/ja/event/1?style=user_name(誰かのユーザスタイルで。あ、でもgroupの場合もあるかー)
    item/point/dat/info/detail/var...

メモ

↑ページトップへ

  • 誰でも編集できるモード。
  • Ustreamアドレス登録欄。
  • そいえば、Ustreamのチャンネルとかってどうしようか。
  • 画像はあちこちの画像サービスにあるものをリンク埋め込みで。APIがあるやつ。
  • イベントデータの統合機能。
  • 外部公開APIの設計。

イベントスキーマ

場所スキーマもある。

地域関係

ja、en等の振り分け。

言語コードは以下。

国コードは以下。

地域コード。

日本の地域。

日本国内では、北海道・東北・関東・中部・近畿・中国・四国・九州沖縄に分ける「八地方区分」の方が多く用いられる。

WOEID なる地域ID(by Yahoo!)が誕生していた。
-WOEID - Wikipedia, the free encyclopedia
Key Concepts - YDN
-Syun -News&Column- » 日本の市区町村のWOEID一覧
-Yahoo! APIを使ってWOEIDを取得する方法(いろんな情報あり)
http://syncer.jp/how-to-use-woeid-api

Geo関係

Base32

Base32 は 40 ビットを 8 文字に変換するエンコード方式である[1]。Base64 と異なり、大文字、小文字の違いが無視される環境においても正しく処理できる。以下に Base32 で用いる文字を示す。O, I と紛らわしい 0, 1 はない。

at関係

↑ページトップへ

  • world→country→area→prefの階層。
  • 「某会館〈Aホール〉〈Bホール〉」は、某会館で1つのatレコードで、sub_atテーブルを持つってことでどうだろう。〈Aホール〉と〈Bホール〉がすごく離れていたり独立した感じならば、別々のatレコードとして持つことにする。そしてsub_atテーブルを持つのは面倒な気がするので、atの中に改行区切りで突っ込んでしまおう。

考慮すべき会場のいろんな場合

  • 会場が閉店して、同じ場所にまったく違う店ができた。(→違う店として扱うのがいいんじゃないか)
  • 会場が改名した。(→同じ店として扱うのがいいんじゃないか)
  • 会場が移転して、同じ店名で営業を再開した。(→違う店として扱うのがいいんじゃないか/前の店はクローズさせつつリレーションが張れればいいかも知れない)
    • 近場で移転したなら、同じ店として扱えばいい。名古屋から東京のように大きく変わった場合は違う店とする。接頭辞の地名(荻窪ABC→吉祥寺ABCのように)が変わったなら別の店とすればいいかなぁ。
  • 同じ場所にサブ会場が複数ある(小ホール/大ホール)。(→仕組みとして持つべきなんじゃないか)

world

世界の地域テーブル。

name sample
world_id    
world_name    
world_name_e   英語表記
order_key    

country

国テーブル。
"全世界"(country_id: 250)、"ウェブ全域"(country_id: 251)というレコードあり。

name sample
country_id    
country_name    
country_name_e   英語表記
world_id  
alfa2code "IS" ISO 3166 - Wikipedia
alfa3code "ISL" ISO 3166 - Wikipedia
flag_filename   国旗画像のWikipediaでのファイル名
order_key    

area

国内のエリア。
アメリカの場合、州名。
"全世界"(country_id: 250)、"ウェブ全域"(country_id: 251)というレコードあり(whole_flag: 1)。それぞれに対して"未指定"(undecided_flag: 1)があり。

name sample
area_id    
area_name    
area_name_e   英語表記
country_id  
undecided_flag   未指定フラグ。その国の中でどこのエリアだか決めない/決まってない/どこでもない場合に選択されるレコード。同一国の中で1つだけフラグON。この時area_nameは"未指定"。
whole_flag   (その国)全体/全国フラグ。その国全体を表すレコード。同一国の中で1つだけフラグON。この時area_nameは国名になる。
order_key    

pref

県。
県はイベントデータの階層的には重要ではない扱いになりそう。atに対してprefの登録があれば、pref名を使うし、なければarea名を使う。なのでarea指定は必須。

name sample
pref_id    
pref_name    
pref_name_e    
code "01" ISO 3166の行政区画コード(JP:ISO 3166-2:JP - Wikipedia)。今のところ特に使用目的はない。
area_id  
order_key    

at

場所、放送局。

name sample
at_id    
area_id   pref(県)ではなくarea(国内地域)にぶら下がる。
at_name    
kind "event" or "broadcast"  
old_at_id   旧システムat_id
live_flag "0" or "1" このatが生きてるか死んでるか
lat REAL 世界測地系緯度
lon REAL 世界測地系経度

old_at

旧テーブル

name sample
old_at_id    
old_at_name    
old_cat "event" or "tvradio"  
old_atcat_id   ライブハウスとかギャラリーとか
old_url    
old_tel    
old_area "関東", "東海"…  
old_area_id    
old_kana "きちじょうじまんだらつーmandala2" 検索用
old_subcat "ライブ", "コンサート", "演劇"… イベントデータでこのsubcatが選ばれた際にこのatレコードが候補としてリストアップされる。
old_country_id    
old_country    
old_zipcode    
old_ken    
old_address1    
old_address2    
old_address3    
old_nl   日本測地系 緯度
old_el   日本測地系 経度
old_info   メモ欄。主に駅からの道順やオープン年月日など。
old_urlm   モバイル用URL
old_lat   世界測地系 緯度
old_lon   世界測地系 経度
old_hz   ラジオのバンド
old_status "0" or "1" 生きてるかどうか
at_id   新at_id

カテゴリ関係

↑ページトップへ

cat

イベントデータのカテゴリテーブル。

name sample
cat_id    
cat_name "イベント", "TV/ラジオ"…  
cat_name_e   英語表記
cat_caption   カテゴリの説明
cat_caption_e   カテゴリの説明(英語)
order_key    

subcat

イベントデータのサブカテゴリテーブル。

name sample
subcat_id    
subcat_name "ライブ", "コンサート", "演劇"…  
subcat_name_e   英語表記
cat_id  
order_key    

event

↑ページトップへ

旧dataidlist

name sample
uid    
dataId    
addTime    
modTime    
myCheck "0" or "1"  

旧data

name sample
dataId    
uid   ユーザID
dateS "1973-03-07" 必須。"1973-??-??"も可。終了日を指定した場合は、開始日に「??」は使用不可。
dateE "1973-03-07" 必須。"1973-??-??"も可。
title   必須。全角スペース→半角、連続スペース→圧縮、英数半角化。
atId   会場id
areaId   atIdがない時のエリアid
area   atIdがない時のエリア名
at   atIdがない時の会場名。全角スペース→半角、連続スペース→圧縮、英数半角化。
atSub "大ホール" サブ会場名(atIdがあってもなくても使用)。全角スペース→半角、連続スペース→圧縮、英数半角化。
openTime "18:30" 開場時間
startTime "19:30" 開演時間
closeTime "22:00" 終演時間
artist   アーティスト名。全角スペース→半角、連続スペース→圧縮、英数半角化。
content   説明文。手動罫線削除。
pCode1   P(ぴあ)コードの前3桁
pCode2   P(ぴあ)コードの後3桁
code   ASIN(Amazon)
gCode   テレビ番組予約のGコード
url   改行区切りのURLリスト。「:」区切りでターゲットURLとアンカー文字列。
noticeCat   「注意」種別。
notice   「注意」内容。
private "" or "1" プライベートフラグ。
priority "5" リスト表示時の表示順プライオリティ。tvradioでGコード入力があれば+1、ASINがあれば+2、会場が独自入力でなければ+1、パブリックなら+4。
addTime   データ作成日時
modTime   データ更新日時
seq   更新回数
dataIdPre   コピー元のdataId
cat "event", "tvradio"…  
subCat "ライブ", "映画"… サブカテゴリ名
subCatId   サブカテゴリid
errFlag   0しかなさそう
copyed    
planeTextAt   会場名をノーマライズしたテキスト。(あとで会場登録された際にこのテキストを元にatIdをつけるため)
shareCnt "4" シェアされている数。
kind "classic" or "neo" 旧更新ページ(古いブラウザ用)か新更新ページ、どちらのページから更新したのか。
00 dataId
01 uid
02 dataIdPre
03 cat
04 private
05 title
06 dateS
07 dateE
08 openTime
09 startTime
10 atId
11 at
12 atSub
13 content
14 errFlag
15 modTime
16 copyed
17 artist
18 code
19 area
20 url
21 addTime
22 closeTime
23 subCat
24 subCatId
25 seq
26 priority
27 notice
28 gCode
29 noticeCat
30 planeTextAt
31 areaId
32 pCode1
33 pCode2
34 shareCnt
35 kind

旧user

↑ページトップへ

name sample
uid    
email    
p   暗号化済パスワード
expire   パスワードの有効期限
sid   セッションID
status "0", "1", "2" "0"…通常、"1"
regDate   登録日時
pageTitle    
profile    
css "bloc.css" or "green.css"… 選択したcss
lastMod    
イベントデータ表示方法
viewAfter "通常" or "シンプル"  
viewNow "通常" or "シンプル"  
viewPast "通常" or "シンプル"  
ショートカット
scToday "0" or "1"  
scNow "0" or "1"  
scTommorrow "0" or "1"  
scYesterday "0" or "1"  
scBlocNews "0" or "1"  
scLast "0" or "1"  
scUser "0" or "1"  
scNewAt "0" or "1"  
マーク
todayMark   「今日のデータ」に表示するテキスト。
myCheck    
myCheckText    
プロフィール
profHome   ホームページのURL
profHatenaD   はてなダイアリーのID
profMixi   mixiのID番号
profFoaf   URL
profKanshin   関心空間のID
メッセージ
messageLevel    
messageFrom    
messageReceive    
rss3days    
openEmail    
openEmailOpen    
public    
keyword    
blocLinkLastMod "0" or "1" ※これなんだろう?
javascriptCode "utf8" or "euc" 外部用の
newsRead    
savedAreaId   手違い?で全ユーザが「関東」になってる。

旧db

↑ページトップへ

at階層

  • worldarea
  • country
  • area
  • ken
  • at
  • atcat

カテゴリ

↑ページトップへ

  • cat
  • subcat

data

↑ページトップへ

  • data
  • dataidlist
  • blocLink
  • blocLog
  • blocNews
  • doc
  • docCat
  • group (未使用)
  • help
  • logOperate
  • lookupAt
  • message
  • messageSend
  • myAt(ユーザのatリスト)
  • noticeAt
  • preAt(未登録atリスト)
  • uid