IT::Scripting::SQLite::解析用テーブル定義
これのSQLite用スキーマ定義
細かい突っ込みは却下!まずはデータを蓄積するべくこれを作成。
基本となる情報用
create table lost_age( --”失われた時代”解析の中心となるテーブル no INTEGER primary key, -- 連番 age integer, -- 起きた時期。西暦2000年からの年数 continent text, -- 大陸 area1 text, -- 地方(大地域) area2 text, -- 地方(中地域) area3 text, -- 地方(小地域) memo text -- その他 ); careate table lost_age_source( -- 情報元 no INTEGER primary key, -- 連番 lost_age_no INTEGER primary key, -- lost_ageテーブルの連番 source text, -- url/book その他書籍名など div text, -- 部 chap text, -- 章 a_bar text, -- 小節 para text, -- 段落 track_back text, -- url情報の場合の参照元 abstract text -- ); careate table lost_age_character( --情報もとの人物情報 no INTEGER primary key, -- 連番 lost_age_no INTEGER primary key, -- lost_ageテーブルの連番 char_name text, -- 登場人物・物 flag integer, -- 判別フラグ -- 1 ... gods -- 2 ... human -- 3 ... animal -- 4 ... etc memo text -- 特記事項 ); careate table lost_age_myth( -- 伝承など lost_age_source とかぶっているのが・・・ no INTEGER primary key, -- 連番 lost_age_no INTEGER primary key, -- lost_ageテーブルの連番 article text -- 伝承文・記述など ); careate table lost_age_relation( -- lost_age の資料のレベル(元・1次引用・2次引用など) no INTEGER primary key, -- 連番 p_lost_age_no INTEGER primary key, -- 元となったlost_ageのレコード c_lost_age_no INTEGER primary key, -- 伝承先のlost_ageのレコード ); careate table bref_ref( --引用文献 no INTEGER primary key, -- 連番 lost_age_no INTEGER primary key, -- lost_ageテーブルの連番 ref_level integer, -- 0 ... 直接 -- 1 ... 1次資料 -- 2 ... 2次資料 -- 3 ... それ以外 memo text -- メモランダム );
GoogleMAP用データテーブルの定義
create table google_map_trans ( no INTEGER primary key, -- 連番 lost_age_no INTEGER primary key, -- lost_ageテーブルの連番 longitude integer , -- 経度 latitude integer , -- 緯度 logitude_span integer , -- 経度許容範囲 longitude±n latitude_span integer , -- 緯度許容範囲 longitude±n higher integer , -- 標高 lost_logitude integer , -- ポールシフト前の予想経度 lost_latitude integer , -- ポールシフト前の予想経度 lost_higher integer , -- ポールシフト前の標高 --relation_area memo -- メモランダム ); create table google_map_trans_age_relate( -- 同じ場所の場合、それを明記するための関係テーブル no INTEGER primary key, -- 連番 lost_age_no INTEGER primary key, -- lost_ageテーブルの連番 lost_googlemap_no INTEGER primary key, -- GoogleMapテーブルの連番 age integer -- 起きた時期。西暦2000年からの年数 );
後は実際にデータを入れて妥当性を勘案する作業なわけだが・・・