Ko:Nominatim

From OpenStreetMap Wiki
Jump to: navigation, search

Nominatim (라틴어로, '이름') 은 osm 자료의 이름과 주소를 검색하고, 위경도 좌표로 부터 주소를 생성하는 도구입니다. 홈페이지는 http://nominatim.openstreetmap.org 입니다. Nominatim 은 OpenStreetMap 홈페이지의 Search Box 중 하나로 사용되고 MapQuest Open Initiative, PickPoint, OpenCage Geocoder 홈페이지 검색을 도와줍니다.

이 페이지는 사용 방법을 제공합니다. Nominatim 에 대한 좀 더 자세한 내용을 원하신다면, Development Overview 와 FAQ 를 참조 해 주세요. 만약 문제를 발견하면, testcase 를 제공하거나 trac을 통해 버그를 제출해 주세요. Version 2에 대한 노트도 참조하세요.

검색

Nominatim 은 OSM data set 으로 주소(또는 숫자) 와 다른 주소가 아닌 (호프집, 호텔, 교회 등) 명칭으로 인덱싱 합니다.

검색 방법은 아래와 같이 왼쪽에서 오른쪽으로

pilkington avenue, birmingham

위와 같이 검색하면 정상적으로 동작하지만, 아래는

birmingham, pilkington avenue

검색에 실패 합니다. 컴마는 선택사항이지만 검색의 복잡도를 줄여서 성능을 향상하는 역할을 합니다. 아래 역시 검색에 성공합니다.

pilkington avenue birmingham

지번을 사용한 검색은 다음과 같이 사용됩니다 : 135 pilkington avenue, birmingham

특수 키워드

다양한 키워드는 osm 태그에 대한 검색 결과로 번역되어 집니다 (예. Pub => amenity=pub). 현재 다음 special phrases 항목들이 사용 가능합니다.

매개 변수

 http://nominatim.openstreetmap.org/search?<매개변수>
 http://nominatim.openstreetmap.org/search/<쿼리>?<매개변수>
 format=[html|xml|json]
   출력 방식
 json_callback=<string>
   Wrap json output in a callback function (JSONP) i.e. <string>(<json>) 
 accept-language=<브라우저 언어 문자열>
   검색 결과를 보여주기 위한 선호하는 언어, 브라우저 값을 오버라이드 함.
   표준 rfc2616 accept-language 문자열 또는 컴마로 구분되는 언어 코드 리스트
 q=<query>
   검색 하고자 하는 문자열.  아래와 같은 방식으로도 입력 가능:
 countrycodes=<countrycode>[,<countrycode>][,<countrycode>]...
   검색 결과를 특정 나라로 제한 (또는 나라들).  <countrycode> 는 반드시 ISO 3166-1
   alpha2 code 여야 함, 예를 들어 영국은 gb, 독일은 de 와 같이 사용.
 viewbox=<left>,<top>,<right>,<bottom>
 또는 viewboxlbrt=<left>,<bottom>,<right>,<top>
   검색하고자 하는 영역
 bounded=[0|1]
   bounding box 로 결과를 제한 함.  또한 bounding box 로 제한 하는 것은 amenity 로만 검색이 가능합니다.
   "[pub]" 쿼리의 예제는 bounded=1 외에는 reject 되어질 것입니다.
 polygon=[0|1]
   검색되는 항목의 영역을 표시함
 addressdetails=[0|1]
   주소를 세부 항목으로 분리하여 표시
 email=<valid email address>
   만약 많은 양의 조회를 요청한다면 email 주소를 포함하거나 User-Agent 문자열을 포함해 주세요.
   이 정보는 기밀로 유지되며, 오직 당신이 문제가 발생하면 연락하는데 사용됩니다. 
   자세한 내용은 사용 정책을 참조 하세요.
 exclude_place_ids=<place_id,[place_id],[place_id]>
   만약 당신이 특정 opensterrtmap objects 가 표시되지 않기를 원한다면, 컴마로 구분된 pace_id 리스트를 기술하세요.
 limit=<integer>
   검색 결과 수의 제한
 dedupe=[0|1]
   아직 설명 되지 않음.
 debug=[0|1]
  아직 설명 되지 않음.

예제

 http://nominatim.openstreetmap.org/search?q=135+pilkington+avenue,+birmingham&format=xml&polygon=1&addressdetails=1
 http://nominatim.openstreetmap.org/search/135%20pilkington%20avenue,%20birmingham?format=xml&polygon=1&addressdetails=1
 http://nominatim.openstreetmap.org/search/gb/birmingham/pilkington%20avenue/135?format=xml&polygon=1&addressdetails=1
<searchresults timestamp="Sat, 07 Nov 09 14:42:10 +0000" querystring="135 pilkington, avenue birmingham" polygon="true">
   <place 
     place_id="1620612" osm_type="node" osm_id="452010817" 
     boundingbox="52.548641204834,52.5488433837891,-1.81612110137939,-1.81592094898224" 
     polygonpoints="[['-1.81592098644987','52.5487429714954'],['-1.81592290792183','52.5487234624632'],...]" 
     lat="52.5487429714954" lon="-1.81602098644987" 
     display_name="135, Pilkington Avenue, Wylde Green, City of Birmingham, West Midlands (county), B72, United Kingdom" 
     class="place" type="house">
     <house>135</house>
     <road>Pilkington Avenue</road>
     <village>Wylde Green</village>
     <town>Sutton Coldfield</town>
     <city>City of Birmingham</city>
     <county>West Midlands (county)</county>
     <postcode>B72</postcode>
     <country>United Kingdom</country>
     <country_code>gb</country_code>
   </place>
 </searchresults>

좌표로 주소 검색 / 주소 검색

Reverse geocoding 은 위도와 경도 정보를 사용해서 주소를 제공합니다. 선택적으로 zoom level을 기술하므로써 openlayers zoom level 에 적합한 정보를 제공합니다.

매개변수

 http://nominatim.openstreetmap.org/reverse?<query>
 format=[xml|json]
   출력 방식
 json_callback=<string>
   Wrap json output in a callback function (JSONP) i.e. <string>(<json>) 
 accept-language=<브라우저 언어 문자열>
   검색 결과를 보여주기 위한 선호하는 언어, 브라우저 값을 오버라이드 함.
   표준 rfc2616 accept-language 문자열 또는 컴마로 구분되는 언어 코드 리스트
 osm_type=[N|W|R]
 osm_id=<value>
   A specific osm node / way / relation to return an address for
   Please use this in preference to lat/lon where possible 
 lat=<value>
 lon=<value>
   주소 제공을 위한 위치 정보
 zoom=[0-18]
         상세 수준. 0은 국가, 18은 집/건물
 addressdetails=[0|1]
         주소를 세부 항목으로 분리하여 표시
 email=<valid email address>
         만약 많은 양의 조회를 요청한다면 email 주소를 포함하거나 User-Agent 문자열을 포함해 주세요.
   이 정보는 기밀로 유지되며, 오직 당신이 문제가 발생하면 연락하는데 사용됩니다. 
   자세한 내용은 사용 정책을 참조 하세요.

예제

 http://nominatim.openstreetmap.org/reverse?format=xml&lat=52.5487429714954&lon=-1.81602098644987&zoom=18&addressdetails=1
 <reversegeocode timestamp="Fri, 06 Nov 09 16:33:54 +0000" querystring="...">
   <result place_id="1620612" osm_type="node" osm_id="452010817">
     135, Pilkington Avenue, Wylde Green, City of Birmingham, West Midlands (county), B72, United Kingdom
   </result>
   <addressparts>
     <house>135</house>
     <road>Pilkington Avenue</road>
     <village>Wylde Green</village>
     <town>Sutton Coldfield</town>
     <city>City of Birmingham</city>
     <county>West Midlands (county)</county>
     <postcode>B72</postcode>
     <country>United Kingdom</country>
     <country_code>gb</country_code>
   </addressparts>   
 </reversegeocode>