JA:Key:is_in

From OpenStreetMap Wiki
Jump to navigation Jump to search
Public-images-osm logo.svg is_in
説明
is_inタグは地物がどこにあるかのインデックスに使用されます。 Show/edit corresponding data item.
グループ: 境界線
適用できる要素
ノードに使用可能ウェイに使用可能領域に使用可能リレーションに使用可能
よく併用されるタグ
状態:使用中

このタグの回避方法

使用方法

OSM の is_in タグは、 OSM でもっとも古くから使われているタグの一つであり、現在でもよく使われています。

is_in タグは境界のポリゴンに先行しています。領域の境界のポリゴンが良く発達している場合、 is_in タグに書かれている情報は、ふつうそれを含んでいる境界線から取得することができます。この場合、このタグの情報は冗長に見えます。境界情報と同じであるとして、このタグを削除することを支持している協力者もいます。他の協力者は、他の

このタグは境界線が完全に作成されていない時には重要な情報を含んでいます。この情報が冗長だとしても、検索を簡単にしたり、2つの似た名前のオブジェクトを簡単に識別したりすることができます(すべての含まれる境界を計算する必要がなく、より早く結果を出すことができます) [ citation needed ]。イギリスでの経験では、「場所」や「検索」機能でより正確な情報を提供できます [ citation needed ]

解説

このタグは、ある地物が世界のどこにあるかを規定するためのものです。このタグはパプや建物、道路、公園などあらゆるものに付けることができますが、一般的には place タグに付随して使うものです。全ての place タグこのタグを付随させることで、検索エンジンが市区町村などを探しやすくすることが推奨されます。例えば、サンフランシスコと呼ばれる場所はフィリピン、スペイン、アメリカ合衆国などに複数あります。アメリカのカリフォルニアにあるサンフランシスコは、次のように記述すればきちんと特定することができます。


タグの値については、このような順番で記述しなくてはいけないということはありません。また、全てを完全に記述しなくてはいけないわけでもありません。しかし、より小さい地域を表す地名を先に、大きな地域を表す地名を後に並べるのが推奨されます。また、国名より下のカテゴリーは、なるだけ略称ではなくフルネームで記述してください。以下のようなものも有効ではありますが、推奨されません。

  • name=SOMA
  • is_in=USA;CA;California;San Francisco
  • name=SOMA
  • is_in=San Francisco

カテゴリーの作成

あまり一般的ではありませんが、このタグは検索のためのカテゴリーを作るために使うことができます。例えば、

  • name=Canberra
  • is_in=capital_cities; Australian Capital Territory; ACT; Australia

このような記述によって Canberra (キャンベラ) が世界中の首都のリスト (capital_cities) に現れるようにできます。

これは Proposed features/capital でもっと良い方法で実現することができます。 --Gorm 15:08, 6 April 2010 (UTC)
次のリンクも参照してください: JA:リレーション/リレーションはカテゴリではない

精度を高める

このタグの弱点は、それぞれの値の意味が、プログラムによって確実に処理されるとは限らないことです。上に挙げた例では、CA は California (カリフォルニア)の略称なのか、Canada (カナダ)の略称なのか明確ではありません。また、capital_cities は場所 (place) なのかカテゴリーなのかもはっきりしません。

これを解決するためには、リレーションを使う方法があります。リレーションを使うことで、冗長性の問題、すなわち、ストックホルムにある全ての道に is_in=Sweden,Stockholms län,Stockholm というタグを付ける無駄を避けられます。

他の方法としては、次のように限定した is_in タグを使う方法があります。

  • name=Canberra
  • place=city
  • is_in=capital_cities; Australian Capital Territory; ACT; Australia
  • is_in:state=Australian Capital Territory
  • is_in:state_code=ACT
  • is_in:country=Australia (use english name of the country)
  • is_in:country_code=AU (ISO 3166-1 two-letter country code, in UPPER CASE to conform with addr:country tag)

このようにすると、キャンベラ市内の地名 (suburb)、道路や他の地物は、以下のようなタグのみで済みます。

place キーは次のような限定タグと共に使うことができます。

関連項目

"is_in" タグの例

  • 例: Bedford (ベッドフォード)
    place=town
    name=Bedford
    is_in=Bedfordshire; England; UK

背景

基本的には、このタグを用いて以下のようにプログラムが自動的にインデックスを生成することができます。以下は例です。

Bedfordshire を検索します。最初に1レベル上がって England または Home Counties に行きます。Bedfordshire にある街は Ampthill, Bedford, Clapham, Dunstableなどです。

  • 更に重要なことは、街路名(註 欧米の住所は街路の名前を使って表されます。)を使って検索するときです。例えば 'High Street' で検索すると、たくさんの結果が表示されるので、戻って次のようにどのカテゴリーか指定する必要があります。'High Street;Fulbourn;Cambridgeshire' と 'High Street;Chapel-en-le-Frith;Derbyshire' のように。 David.earl October 14, 2006
これは既に解決されており、最新の検索エンジンでは Nominatim によって is_in タグに頼らずに正しく検索できます。 --Gorm 15:08, 6 April 2010 (UTC)

拡張

なお、この is_in タグは、地理的な場所を示すだけでなく、「イギリス海峡 ("The English Channel")」のような地形学的なものにも使うことができます。