Przynależność drogi/ulicy do miasta

Mam oto taki dylemat. Jest sobie wycinek mapy, jakieś tam 2 miasta. Teraz, przeglądając plik z danymi dla tego wycinka mam powiedzmy ulicę o nazwie Żebraków. W jaki sposób ustalić czy ta ulica podlega pod pierwsze a może pod drugie miasto ?
W samym opisie drogi/ulicy nie ma nic coby wskazywało na konkretną miejscowość.

Znam dwa kryteria: jeśli ulica znajduje się w obrębie administracyjnym miejscowości (teren z admin_level=*), to nie ma problemu. Drugi przypadek - ulica ma tag is_in=nazwa_miasta, którego, jak mówisz, nie ma.

Przeważnie przynależność daje się ustalić bez problemu nawet, gdy tych tagów brakuje, ale czasem może być niezbędne inne źródło.

No i tutaj właśnie leży mój problem bo w żaden sposób ulica nie jest opisana. Miasto nie posiada naniesionych granic, a ulica nie jest opisana tagiem (np: Opole, Strzelce Opolskie, Tychy i wiele, wiele innych miast)

Potrzebuje tej informacji do wykonania konwersji osm->mp więc dodatkowa weryfikacja nie wchodzi w rachubę.

Ja w takiej sytuacji pewnie przypisywałbym ulice do najbliższej miejscowości, ale zdaję sobie sprawę, że rezultat nie zawsze będzie nadawał się do użytku. Chyba jedyną pewną drogą do rozwiązania problemu jest poprawienie samych danych OSM.
Ale może ktoś jeszcze będzie miał lepszy pomysł na to, co z tym zrobić.

Mozna by jeszcze sprobowac skorelowac to z TERYT-em, bo zdaje sie ze zawiera spisy ulic. Wiec jesli ulica o danej nazwie nie istnieje w najblizszej miescowosci, ale istnieje w troche dalszej, to pewnie o ta miejscowosc chodzi.

Jak mogę ściągnąć dane dotyczące ulic z tagiem tag is_in=nazwa_miasta? Pobrałem dane z http://download.geofabrik.de/osm/europe/ lecz tam nie ma tej informacji.

http://taginfo.openstreetmap.de/keys/is_in - tutaj są informacje o użyciu tagu is_in
http://wiki.openstreetmap.org/wiki/Xapi - używając odpowiednio XAPI możesz ściągnąć dowolne dane dla wybranego obszaru

Pliki .osm.bz2 z geofabrik napewno maja te informacje, tylko ze w OSM rzadko kiedy jest ona dodawana. Jesli potrzebujesz do konkretnego praktycznego zastosowania, to jednak polecilbym na dzien dzisiejszy mape UMP (ump.waw.pl) (wiem – herezja :)) – kazda ulica ma tam okreslona miejscowosc, pomijajac juz fakt ze jest wiecej ulic.

Proponuje stworzyc nazwe disputed_area lub cos w tym stylu. Problem jest czestszy a nazwa uzywana w dyplomacji miedzynarodowej. Automatyczne wyszukiwarki czy inne programy bedy musialy uwzglednic ta opcje pokazujac jednoczuesne jako sugestie najblizej polozone jednostki administracyjne…

Dziękuję za wszystkie odpowiedzi. Udało mi się podejrzeć dane z pliku .osm i faktycznie tag is_in jest praktycznie nie wypełniany. Ale wpisując na stonie OSM ulicę i miejscowość jest ona odnajdywana prawidłowo. Wyszukiwanie odbywa się prawdopodobnie po obszarach.
Problem w tym, że nie wiem jeszcze jak stworzyć zapytanie o ulice w okreslonym mieście (albo przynajmniej gminie) w XAPI

Wyszukiwanie odbywa sie niestety po obszarach, a wlasciwie szukaniu najblizej polozonego srodka miasta i jest to zródlem bledów. Prawidlowe szukanie ulicy mozna robic pradopodobnie dopiero wtedy, gdy wszystkie ulice beda opisane tagami add:city add:country

Tak naprawde tagi is_in, addr:city itd. nie pomoga w wyszukiwaniu. Nominatim (wyszuiwarka osm) bierze pod uwage tylko granice obszarow z tagiem admin_level. Jesli tych granic nie ma, to bierze wezly z tagiem place= i przy indeksowaniu tworzy sobie wirtualne granice w rownych odleglosciach od sasiadujacych lokalizacji (diagram Voronoi).

To pewnie dla tego mój dom znajduje w innej miejscowości mimo iż jest podany addr:city

No to wskazówka dla nas by wszędzie rysować admin_level. Przydalby sie tool pokazujacy tylko to, aby móc zobaczyć gdzie czego brakuje.

Polecam http://tools.geofabrik.de/osmi/?view=boundaries

Problemem jest oczywiscie znalezienie zrodla takich granic na kompatybilnej licencji, bo nie jest to cos co mozna przejsc z GPSem.

http://tools.geofabrik.de/osmi/?view=boundaries&lon=20.93976&lat=52.23470&zoom=9

Edit: eh zbyt wolno dodawałem odpowiedź :confused:

Bez ustawy o re-use chyba nic nie da się z tym zrobić.