Nazwa osiedla w addr:streetname, gdy nie ma takiej ulicy

Znalazłem wątki o zbliżonej tematyce ([1], [2]), jednak nie dokładne na ten temat, więc utworzyłem nowy.

Najpierw może przedstawię krótko mój problem:

W Poznaniu jest kilka osiedli takich jak np. Osiedle Wichrowe Wzgórze, Osiedle Pod Lipami, Osiedle Przyjaźni, Osiedle Zwycięstwa i są to ich oficjalne nazwy. Nie ma wokół nich ani w ich obrębie ulic o takich nazwach, są natomiast ulice o innych nazwach (np. ulica 9 Maja w obrębie Osiedla Zwycięstwa). Oficjalne adresy znajdujących się tam budynków (czy to mieszkalnych czy nie) mają w nazwie właśnie te osiedla, czyli np. Osiedle Przyjaźni 1. Jest to w sumie chyba dosyć częsta sytuacja w polskich miastach.

Takie budynki są oczywiście adresowane w sposób podany w [1], na przykład wspomniane wcześniej Osiedle Przyjaźni 1: http://www.openstreetmap.org/browse/way/34093608.

Problem polega na tym, że w takim przypadku (nie ma w Poznaniu żadnej ulicy o nazwie Osiedle Przyjaźni) Nominatim zdaje się nie widzieć adresów dodanych do tych budynków, bo gdy wpisuję w wyszukiwarce “Osiedle Przyjaźni 1, Poznań”, ani Nominatim, ani GeoNames nie zwracają żadnych wyników.

Z [1] wynika, że takie podejście do adresowania (addr:street=Osiedle Przyjaźni oraz addr:housenumber=1) jest jak najbardziej poprawne.
Natomiast [2] sugeruje (nie sprawdziłem), że rozwiązaniem mogłoby być dodawanie węzła z tagiem place=neighbourhood (i że nawet jest to tag obowiązkowy w przypadku oznaczania osiedli).

Jednak gdy spojrzeć na wiki (https://wiki.openstreetmap.org/wiki/Pl:Map_Features#Miejsca), to jest tam napisane, że osiedlem jest place=suburb. Pewnie niedopatrzenie albo zaszłość jakaś, więc nie to, żebym się czepiał - po prostu zwracam uwagę. Ale w międzyczasie też spróbowałem po prostu wpisać “Osiedle Przyjaźni” w Nominatim i znalazłem to: Osiedle Przyjaźni, gmina Szczecin, Szczecin, województwo zachodniopomorskie, Polska. Jak spojrzeć na spis wyników w Nominatim (ten węzeł pokazuje się jako pierwszy wynik), to tam też ten rodzaj miejsca (place=suburb) jest przetłumaczony na polski jako “osiedle”. Rozumiem, że to akurat też może być jakaś zaszłość sprzed wprowadzenia place=neighbourhood. Pomyślałem jednak, że warto na to zwrócić uwagę.

To teraz na koniec jedno pytanie.
Czy chcąc, żeby adresowanie budynków takich jak Osiedle Przyjaźni 1 w Poznaniu było poprawne, powinienem:
a) którąś z nienazwanych uliczek osiedlowych nazwać Osiedle Przyjaźni i w ten sposób wymusić na Nominatimie, żeby zauważał te adresy (jest tam kilka takich uliczek, oficjalnie bez nazwy)?
b) po prostu dodać węzeł place=neighbourhood, nadać mu nazwę name=Osiedle Przyjaźni, i to załatwi sprawę (Nominatim będzie widział nazwę)?

Jak już wspomniałem, nie sprawdzałem rozwiązania podanego w b), bo chciałem się wpierw upewnić czy to jest poprawne. Poza tym postanowiłem napisać ten post także dla tego, że najwyraźniej rozdział między place=suburb a place=neighbourhood wymaga doprecyzowania na wiki (sam nie chciałem tego zmieniać bez konsultacji) i w Mominatim (może gdzieś jeszcze).

[1] - http://forum.openstreetmap.org/viewtopic.php?id=17722
[2] - http://forum.openstreetmap.org/viewtopic.php?id=17631

Jeszcze się nie spotkałem żeby osiedle było częścią adresu. Dodanie odpowiedniego place= powinno załatwić sprawę, chociaż wydaje mi się niemożliwe aby jakiś obiekt był adresowany tylko poprzez osiedle. Zgodnie z logiką adres to numer, ulica i miejscowość, ewentualnie sama miejscowość jeśli nie ma w niej nazw ulic.
Dla małych osiedli proponuję place=hamlet.

Co do tego czy słowo “osiedle” jest częścią oficjalnej nazwy osiedla czy nie, to nie będę się spierał. Może i nie jest. Tak czy inaczej problem nadal pozostaje.

I tu właśnie jest ten problem, że na tych osiedlach są ponazywane ulice (https://pl.wikipedia.org/wiki/Osiedle_Przyja%C5%BAni_%28Pozna%C5%84%29#Ulice), ale nawet budynki, które przy nich stoją, nie mają adresów np. ul. Benedykta Tadeusza Dybowskiego 24, tylko os. Przyjaźni 24 (pół godziny temu przechodziłem koło tego budynku i widziałem na własne oczy jak jest opisany). Jednak ulicy Przyjaźni jako takiej tu nie ma.

A co do place=hamlet to wg. wiki jest to “odizolowana osada, zazwyczaj z mniej niż 100-200 mieszkańcami” (https://wiki.openstreetmap.org/wiki/Tag:place%3Dhamlet), poza tym wg WikiProject Poland na terenie Polski place=hamlet jest zarezerwowane dla przysiółku (https://wiki.openstreetmap.org/wiki/WikiProject_Poland/Podzia%C5%82_administracyjny#Mapowanie_typ.C3.B3w_miejscowo.C5.9Bci_TERYT_.28RM.29_na_tagi_OSM).

Edit: poprawka nazwy ulicy

Link na dowód:
https://maps.google.pl/?ll=52.432943,16.924872&spn=0.002381,0.008256&t=m&z=18&layer=c&cbll=52.432943,16.924872&panoid=meIin2yvpLhv-RRtEeHC8w&cbp=12,221.25,0,4.56

Uliczka brukowana to Dybowskiego, ta asfaltowa to Hercena, a blok opisany Przyjaźni.

Rzeczywiscie widzialem w co najmniej kilku miastach. Ostatnio sporo punktow adresowych bylo importowanych z ewidecji ulic i adresow gmin i czesto to slowo “Osiedle” jest czescia adresu. Ale tez czesto ulica o takiej nazwie wystepuje w ewidencji.

Raczej nie pomoze. W bugzilli nominatima jest m.in. zgloszone nieobslugiwanie addr:place jako blad Nominatima. W dyskusji tego bledu autor kodu zaznacza, ze Nominatim celowo wyszukuje tylko adresy gdzie addr:street zgadza sie z nazwa jakiejs ulicy w okolicy, i ze nie bedzie obslugiwal przypadku gdzie ulica o takiej nazwie nie istnieje.

Natomiast ma zamiar obslugiwac addr:place tylko nie znalazl czasu na zaimplementowanie jeszcze, a wymaga to wiekszych zmian, wiec nikt inny sie za to nie zabiera (sam sie zastanawialem). W kazdym razie zastanowilbym sie nad uzyciem addr:place dla przypadku, ktory opisujesz, jesli rzeczywiscie nie ma tam ulicy do ktorej pasuje ta nazwa. (Nie nalezy sie przejmowac oficjalnymi nazwami a tym jak rzeczywiscie te ulice sa nazywane)

Nie do końca rozumiem co masz na myśli - wg mnie to jedno i to samo.

Co do używania addr:place, to rozumiem, że gdzieś w okolicy powinien być węzeł place=cośtam z ustawionym name=Osiedle Przyjaźni, przy czym zgodnie z przytoczoną przeze mnie w pierwszym poście dyskusją, cośtam w tym przypadku powinno być neighourhood?

A ten Nominatim w czym jest pisany?

Sprawdziłem właśnie w terycie i faktycznie osiedle Przyjaźni występuje w spisie ulic. Proponuję zrobić relację associatedStreet z dodanymi budynkami osiedla i ewentualnie nadać nazwę “osiedle Przyjaźni” chociażby jakiemuś chodnikowi :slight_smile: jeśli nie ma żadnej uliczki, nawet serwisowej bez nazwy.

Przez oficjalne rozumiem te wpisane w dokumenty czy rejestry, wlasnie typu TERYT i czesto zawierajace duzo tworczosci wlasnej urzedu.

Taka jest moja propozycja, moze nie idealna ale wydaje mi sie mniej naciagana niz nazwanie ulicy ktora nie ma nazwy.

W C i php, ta zmiana dotyczylaby obydwu czesci.

To, że w przeglądarce TERYT osiedle Przyjaźni występuje w spisie ulic, jeszcze nie świadczy o tym, że jest ulicą. W spisie tym są także ronda, place, skwery i parki - po ściągnięciu pliku XML z wykazem ulic, pozycja przy wspomnianym osiedlu wygląda następująco:


<row>
<col name="WOJ">
30
</col>
<col name="NAZWA_WOJ">
WIELKOPOLSKIE
</col>
<col name="POW">
64
</col>
<col name="NAZWA_POW">
Poznań
</col>
<col name="GMI">
05
</col>
<col name="NAZWA_GMN">
Poznań-Stare Miasto
</col>
<col name="RODZ_GMN">
9
</col>
<col name="NAZWA_RODZ_GMN">
delegatura gminy miejskiej
</col>
<col name="NAZWA">
Poznań-Stare Miasto
</col>
<col name="SYM">
0970224
</col>
<col name="SYMPOD">
0970224
</col>
<col name="KOD_RM">
98
</col>
<col name="NAZWA_RM">
delegatura 
</col>
<col name="SYM_UL">
17923
</col>
<col name="CECHA">
os.
</col>
<col name="NAZWA_1">
Przyjaźni
</col>
<col name="NAZWA_2"/>
</row>

Warto zwrócić uwagę na pole CECHA, gdzie jest wartość “os.”, ulice właściwe mają odpowiednio “ul.”, pojawia się też “park”, “rondo” itd. Zatem klasyfikacja obiektów jest właściwa, nikt nie robi z osiedla ulicy i vice versa, a jedynie tytuł wykazu jest mylący. Zatem zgadzam się z przedmówcą, że lepej dać węzeł z nazwą osiedla niż nazywać chodniki. Tylko, czy wtedy stosować addr:street, czy addr:place? A może obydwa tagi jednocześnie?

No to widzę, że doszliśmy do jakiegoś wniosku.
Co do stosowania addr:street, to nie wiem czy ma to sens jeśli zarówno teraz jak i w przyszłości (jak zaznaczył balrog-kun) nie będzie to obsługiwane w tym konkretnym przypadku.

Zaproponowane przeze mnie nazwanie chodnika to tylko proteza, ale może warto sprawdzić czy sama relacja budynków associatedstreet będzie działać? Czy nominatim tego też nie rusza?

Właśnie znalazłem takie coś na wiki:
https://wiki.openstreetmap.org/wiki/Key:addr:place
Piszą tam, że w przypadkach takich jak nasz (nie ma ulicy o danej nazwie, ale jest adres) docelowo powinno się używać addr:place, ale nie ma problemu, żeby używać obydwu (addr:place i addr:street), z tym, że wartości obydwu muszą być identyczne.

Co do associatedStreet to znalazłem na wiki takie coś:
https://wiki.openstreetmap.org/wiki/Relation:associatedStreet
wynika z tego, że jest to po prostu alternatywa dla addr:street, więc na logikę będzie się zachowywać podobnie, chociaż z drugiej strony nie piszą wprost czy w takiej relacji ulica jest wymagana.

Sprawdziłem obydwa podejścia, czyli addr:place (z dodaniem węzła place=neighbourhood na terenie osiedla) oraz stworzenie relacji associatedStreet i dodanie budynku do niej (bez dodawania żadnej ulicy). W obydwu przypadkach Nominatim nie znajduje adresu (co było w sumie pewne w przypadku addr:place, o czym balrog-kun wspomniał wcześniej).

Co więcej, po dodaniu węzła place=neighbourhood + name=Osiedle Przyjaźni, po wpisaniu w Nominatim “Osiedle Przyjaźni 1, Poznań” wynajduje ulicę o zbliżonej nazwie i wskazuje ją… Czyli wymaga to poprawienia.

Poniżej spisałem listę rzeczy, które wydaje mi się że przydało by się teraz zrobić, żeby sprawę adresowania osiedli uporządkować. Oczywiście temat do dyskusji:)

  1. poprawić Nominatim, żeby poprawnie wyszukiwał adresy na osiedlu (samo osiedle wynajduje, choć dodaje do niego też błędne wyniki)
  2. poprawić Nominatim (i coś jeszcze?) żeby place=suburb było interpretowane w Polsce jako dzielnica a nie jako osiedle jak teraz (może to tylko kwestia tłumaczenia?)
  3. place=neighbourhood powinno w Nominatim wyświetlać się jako osiedle (na razie jest wyświetlane po prostu jako neighbourhood)
  4. uzupełnić polskie wiki - ujednoznacznić place=suburb oraz place=neighbourhood (https://wiki.openstreetmap.org/wiki/Pl:Map_Features#Miejsca)
  5. dodać informację na wiki jak adresować budynki na osiedlach takich jak Przyjaźni w Poznaniu
  6. coś gdzieś czytałem o propozycji nowego typu miejsca - place=quarter, które jest pomiędzy place=suburb a place=neighbourhood (czyli mniejsze niż dzielnica, większe niż osiedle). warto się zastanowić czy do czegoś nam się to w Polsce przyda (https://wiki.openstreetmap.org/wiki/Proposed_features/place%3Dquarter)

Napisałem do gościa od Nominatima na temat wyszukiwania miejsc. Spróbuję w to spojrzeć jeśli jeszcze nikt się za to nie zabrał.

Przy okazji to przyszła mi do głowy jeszcze jedna rzecz. Jeśli Nominatim pisze, że place=suburb to nasze osiedle, to jak sprawa się ma w edytorach OSM? Kiedyś korzystałem z JOSMa i pamiętam, że w którymś momencie został przetłumaczony na polski. Wie ktoś jak tam jest opisany place=suburb (jeśli w ogóle jest)? Czy też jako “osiedle”? Jak się sprawa ma w innych edytorach? W Potlaczu, przynajmniej u mnie, nic na polski nie jest przetłumaczone. Sam JOSMa nie mam jak sprawdzić, bo bym musiał instalować sobie javę… Innych edytorów nie znam.

Potlacz to nie edytor, a generator błędów :slight_smile: Przerzuć się na coś normalnego.

Przejrzałem uchwałę Rady Miejskiej w mojej miejscowości i można z niej wywnioskować, że pojęcie osiedle ma dwa znaczenia.
**
Raz jako jednostka pomocnicza miasta**. Moje miasto zostało podzielone na 15 osiedli. Przyjęto nazewnictwo OSIEDLE NR N. Np. terenem działania osiedla nr 10 jest objęte osiedle Jagiellońskie (część bloków).
Tutaj pasuje place=suburb jak opisano w wiki (Przedmieście, osiedle. Nazwany obszar miasta. Zwykle posiada własny zarząd. )

Dwa jako “skupisko” bloków. W mojej miejscowości istnieją oficjalnie 3 takie osiedla. Ich nazwy są w spisie ulic bazy TERTY. Uważam, że w tym spisie nie rozdrabniali się na spisy osiedlii, rond, skwerów a wszystko dali do jednego spisu ulic.
Tutaj pasuje place=neighbourhood jako wydzielona część miasta, ale nie zawsze pokrywająca się z osiedlami z pierwszego znaczenia.
Wiem, że czasem są duże osiedla “bloków”, większe niż osiedla “jednostki pomocnicze”, przez co podział suburb/neighbourhood nie wszyscy tak samo stosują.

Słowo osiedle jest częścią oficjalnej nazwy. Ja w dowodzie osobistym mam jako adres zameldowania wpisane Osiedle Jagiellońskie x/y (kiedyś było XXX-lecia i trzeba było dowód wymieniać) i zależy mi aby taki adres można było znaleźć w nawigacji samochodowej lub przez przeglądarkę. Kiedyś tak budowali, teraz też. Bloki z adresacją Osiedle Prymasa Wyszyńskiego powstały kilka lat temu (nadal powstają nowe bloki).

zbyt leniwy jestem :stuck_out_tongue: czekam aż zrobią ten nowy edytor w JavaScripcie

No właśnie. W Poznaniu jest podobnie. Zamiast kilku dużych dzielnic są teraz osiedla samorządowe (tak to się chyba nazywa oficjalnie), będące jednostkami pomocniczymi miasta. Z kolei w ramach osiedli samorządowych są już te osiedla “tradycyjne”. I tak np. w ramach osiedla samorządowego Nowe Winogrady Południe znajdują się Osiedle Przyjaźni oraz Osiedle Pod Lipami. Natomiast poznańskie dzielnice, czyli Stare Miasto, Nowe Miasto, Jeżyce, Grunwald, Rataje i Wilda, są już tylko historycznym podziałem i nie występują w oficjalnym podziale administracyjnym miasta (chyba od początku lat 1990-tych).

Z kolei w takim Lesznie podział jest ten “tradycyjny”, na dzielnice, w ramach których są osiedla.

Więc mamy w Polsce co najmniej dwa rodzaje podziału administracyjnego miast.

Wie ktoś może o innych?

Może w takim razie przyda się i u nas proponowany place=quarter (może dzielnic to będzie suburb, osiedle samorządowe to quarter, a osiedle mieszkaniowe - neighbourhood?).

Wygląda na to, że ktoś mnie ubiegł:
https://github.com/twain47/Nominatim/pull/54