JA:地物ひとつにOSM要素はひとつ
Jump to navigation
Jump to search
地物ひとつに OSM 要素はひとつ はグッドプラクティスの原則のひとつです。地上にある実世界の地物ひとつを OSM 要素ひとつだけでマッピングするべきだという意味です。
オブジェクトのマッピング
1つの OSM 要素で地上の地物を一度、そして一度だけ表現してください。
- 複数の建物で構成される地物(例:学校)は、敷地を一つのエリアオブジェクトとしてマッピングし、その中に建物を複数のエリアオブジェクトとして作成してください。建物毎に異なるタグでない限り、タグは建物ではなく、敷地に付与します(例えば、学校の敷地内に置かれた建物は学校の一部とみなすことができます)。
- 形状と位置が分かる建物からなる地物は、適切なタグの付いたエリアオブジェクトとしてください。
- 位置は分かるものの、形状が不明か重要ではない地物は、適切なタグが付いたポイントオブジェクトとして表現してください。
- 単一のエリアに合わない地物は、リレーションを使って記述するのが最適です。また、すべてのメンバーに適用されるタグは、リレーションのメンバーではなく、リレーションに対して付けてください。例:
- 長い川には waterway リレーションを使います。
- ハイキングコース、名前のついた自動車専用道路、公共交通機関の路線は、 route リレーションを使います。
- 2つのキャンパスに分かれた大学のように、異なる場所で同じものに所属する建物群は、 relation:site を使います。
悪い状況の例:
- 単一用途の建物を表すエリアオブジェクトのなかにポイントオブジェクトがある場合。タグをエリアオブジェクトに移してポイントを削除してください。
- 敷地を表すエリアオブジェクト上に、タグ付けされた建物を表すエリアオブジェクトが一つだけある場合。タグを外側のエリアオブジェクトに移し、内側のエリアからは削除してください。
- 敷地を表すエリアオブジェクト上に、タグ付けされた建物を表すエリアオブジェクトが一つだけあり、さらにそのなかにポイントオブジェクトがある。タグをいちばん外側のエリアオブジェクトに移し、内側のエリアからは取り除き、さらにポイントを削除してください。
複数のタグが必要かもしれない状況:
- 同じ場所にある、何かひとつ以上のもの、例えばグラウンドを共有している2つの学校。通常は学校が分かれていれば別々に隣接するグラウンドがあります。しかし、2つの学校を区分するものが建物だけだとしたら、そこに含まれるエリアは適切なlanduse=*タグでタグ付けされるべきであり、建物は個々にタグ付けされるべきです。
- 多目的ビル。建物は建物としてタグ付けされるべきであり、その中にあるものの位置を表すポイントやエリアオブジェクトを持つべきです。例えば、ショッピングモール内のお店
データのタグ付け
タグは概念の一つ、そして一つだけに対応させてください。
- 同一のコンセプトに言及しようとすれば、コンセプトには多くの派生があるかもしれません。説法のような形式でひとつ持つのは良いアイディアです。
- タグはひとつのコンセプトに対する数種類の変種をカバーするかもしれません。しかし、1つのタグの中に複数のコンセプトを統一してはなりません。
- 高水準のタグは、より具体的なものがなかったり(おそらく作るべきです)、種別が不明であったりした場合は、考え方の階層構造を表すことがあります。属性を展開すると便利なことがあります(例えば、 natural=wetland + wetland=reedbed)。
悪いもの:
- "アンブレラ"タグ。(訳注:範囲が広く及ぶもの)人は飲み物をいろんな場所で買うでしょう。これらの場所はコンセプトが異なります - バー, カフェ, お店, 自動販売機, 噴水, 等々。飲み物をデザインしようとする人は、これらの地物を使い、選択肢を狭める適切なルールを考案することができるでしょう。
通りに関する特筆するべき例外
通りは(議論がありますが)上記のルールの例外です。単一の名称を持つ1本の通りは、ほとんどの人が単一の「地物」と考えていますが、ふつうは複数の接続されたウェイで表現されており、同じ "name" タグを持ちます(他のタグは異なります)。これはこのルールを破っているように見えます。しかし、この方法はしっかりと確立されており、変更できそうにありません。通りのウェイをグループ化するリレーションがありますが(Relation:street)、あまり利用されていないので、推奨しません。
なお、これは通り(つまり "highway" とタグ付けされたウェイ)にのみ適用される特殊なケースです。他のすべての地物は、上記のとおり、単一の(一連の)タグだけで表すようにしてください。
関連項目
- multipolygon リレーション 複雑なエリアを示す方法(よくある事例は、道路によって分割された地物)
- Relation:site 地物が単一のマルチポリゴンで説明できない場合(よくある事例は、複数の地区や地域に点在している場合)
- building:part=* 複雑な建物をタグ付けする方法について