# (セミ)ダイナミックの表現
データ自体はRDBの attribute テーブルに入れる。
````
CREATE TABLE attribute(
  ename, attr TEXT, value TEXT,
  FOREIGN KEY(ename) REFERENCES mapitem(ename)
  ON DELETE CASCADE ON UPDATE CASCADE,
  UNIQUE(ename,attr,value)
);
````

やっぱりめっちゃシンプルにしよう (2018-12-01 17:51:39)  
description内の記法だけで切り替える

## 訪問回数によって見せるデータを変える
### 例1
* 山居倉庫は「訪問0」の人向け、本間美術館は「訪問1」向け、
  産直たわわは「訪問2以上」向け。
* 本間美術館は「観光マップ」と「museumマップ」両方に属すが、
  訪問回数に依存するのは「観光マップ」だけ。

※ attributeテーブルにdescriptionを入れておかなければならないことに気付いた。  
(でないとほかに格納するところがない)

description属性の値(uMapの概要に書く)

### レイヤ分けする(セミダイナミック)の場合

	layer[訪問0]=訪問0のときのdesc
	layer[訪問1]=訪問1のときのdesc
	layer[訪問2回以上]=訪問2回以上のときのdesc

例: 山居倉庫(訪問0)と産直たわわ(訪問2回以上)の場合

	[山居]
	layer[訪問0]=昔からある米倉で今も使われています
	[たわわ]
	layer[訪問2回以上]=おいしいソフトクリームがあります

レイヤ生成Rubyプログラムでは選別したデータ集合に対して layer[*] の
添字ごとに別々のレイヤに格納する。

### イベント分けする(フルダイナミック)の例

例: 丸池様の入口のdesc

	desc[1]=1回目のdesc
	desc[2]=2回目のdesc
	desc[3+]=3回目以降のdesc

レイヤ生成RubyプログラムではGeoJSONのプロパティ desc1, desc2, desc3+
を新規に作成してvalueとし、表示するJavaScriptで表示リクエストイベントを
数えて回に応じたdescriptionでpopUpする。

アルゴリズムとしては、そのときのrequestがNならまず desc#{N} のキーを調べ、
該当がなければ N..0 までの i に対し desc#{i}+ のキーの有無を調べてあれば
それを採用する。

### attributeテーブルに入れる属性


|属性キー	|意味			|取りうる値
|---------------|-----------------------|---------------------
|season		|季節			|春、夏、秋、冬
|era		|時代			|明治、大正、昭和、平成

### それをuMapでどう入れるか
プロパティ追加は作業者にとって面倒かな……?  
description に入れる記法にすればいいのか?
→ そうしよう

JSONかなあ → やめとく


大学中庭の春
大学中庭の夏
大学中庭の秋
大学中庭の冬

	season=春 のdesc
