Ćirilica i latinica u kućnim brojevima

Pozdrav,
Hajde da pokrenem diskusiju koja me već par meseci žulja, a to su kućni brojevi i da li treba da budu na ćirilici ili latinici (pričamo o “addr:housenumber” tagu koji ima oblik “”, npr. “12a” i sl., kao i varijantu “bb”)

Trenutno je situacija sledeća, na osnovu ovog query-ja[1], imamo:

  • latiničnih 7339 node-ova + 10685 way-eva = 18024
  • ćiriličnih 1420 node-ova + 596 way-eva = 2016
    tj. 90% kućnih brojeva je na latinici.

Ja bih voleo da odlučimo ovde da li da konvertujemo sve u ćirilicu ili latinicu (ili da ostavimo možda ovako kako je). Ono što treba naglasiti je da, šta god da odlučimo, lako se automatizovano konvertuje u drugo pismo!

U principu, prednost ćirilice je:

  • što je konzistentna sa pismom u imenima ulica
  • konzistenta je sa orderingom (koristi se azbuka, a na abeceda za kućne brojeve)
  • što je lakši uvoz sa državnim podacima
    • npr. stambene zajednice sam morao da nalazim rešenja za ovaj problem, da normalizujem pošto zgrade nije nalazio direktno pošto su u latinici u OSM-u
    • takođe i regio-osm.de sajt (tema na forumu) ima isti problem i ne nalazi zgrade koje su u OSM-u u latinici

Sa druge strane, radio sam pre par meseci jedan eksperiment[2] u kome sam želeo da vidim koji alati podržavaju ćirilicu u kućnim brojevima i rezultati su baš loši. Pričamo o situaciji ako se odlučimo da kućni broj bude na ćirilici, a većina ljudi radi pretragu sa latiničnom tastaturom (što je, na stranu emocije, naša realnost).

Evo rezultata pretrage ovih kućnih brojeva u par alata sa mojim eksperimentom:


    OsmAnd Maps.me MagicEarth Nominatim LocationIQ OpenCage Photon
A      x      x        x        ✓          x         ✓       x
B      x      x        x        ✓          x         ✓       x
V      x      x        x        ✓          x         ✓       x
G      x      x        x        ✓          x         ✓       x
D      x      x        x        ✓          x         ✓       x
E      x      x        x        x          x         ✓       x

Takođe sam pokrenuo diskusiju na OsmAnd aplikaciji, i prihvaćen je issue koji sam napravio, da se podržava dvojezični “addr:housenumber” u “addr” šemi, ali je to pitanje kada će se desiti:
https://github.com/osmandapp/Osmand/issues/7521

Tim budi rečeno, prednost latinice je:

  • pragmatičnost nad konzistentnošću
    • danas je OSM neupotrebljiv za 99.99% Srbije. Da ponovim - neupotrebljiv. Ako želimo da iole omasovimo OSM, moramo možda da se mi prilagodimo ljudima, a ne da delujemo spolja kao kult bez dodira sa realnošću (hint: probajte u Google Maps da otkucate neke od ovih adresa i šta mislite - koliko ih neće raditi?)
  • nemoguće je prebaciti sve alate (neki su closed-source) da rade dvojezično (jedva se snalaze i sa imenima ulica)
  • manji posao prebaciti postojeće ćirilične brojeve u latinicu

Ja nemam neko jako mišljenje, kako god se dogovorimo, oba mi imaju svojih prednosti i mana, a meni neće biti teško da prebacim iz kog god pisma u koje god. Malo više naginjem modelu gde bismo prebacili sve na latinicu na određeni period (npr. 3 godine) i da onda da ponovo analiziramo stanje, tj. da li su open-source dovoljno napredovali da možemo da prebacimo sve na ćirilicu (npr. OsmAnd se pomerio, a možemo i mi da uložimo napore da alati znaju da pričaju ćirilicu u kućnim brojevima).

Šta ostali kažu?

[1]

https://overpass-turbo.eu/s/O0E

[2] U ovom changeset-u sam promenio ime kućnih brojeva Španskih boraca celom dužinom - 22а, 22б, 22в, 22г, 22д, 22е, i to sledećom logikom:

  • 22a - običan “addr:housenumber” na ćirilici
  • 22б - “addr:housenumber” na ćirilici, a “addr:housenumber:en” na latinici
  • 22в - “addr:housenumber” na ćirilici, a “addr:housenumber2” na latinici
  • 22г - “addr:housenumber” na ćirilici, a “addr:housenumber:sr-Latn” na latinici
  • 22д - “addr:housenumber” na ćirilici, a dodato “addr2:street” i “addr2:housenumber” na latinici
  • 22е - “addr:housenumber” na ćirilici, a “addr:housenumber:alt” na latinici

https://wiki.openstreetmap.org/wiki/Key:addr kaže:

To znači da bi moglo da se koristi addr:housenumber:sr za zapis kućnih brojeva ćirilicom i u tom slučaju bi mogli da napravimo izuzetak da u addr:housenumber ide latinica, makar dok se softver ne unapredi (na čemu bi trebalo raditi).

Kako su to rešili recimo u Rusiji? Tamo su kućni brojevi ćirilični?

Nisam do sada bio aktivan na forumu, pa bih iskoristio priliku da pozdravim sve članove. Podržao bih Brankov predlog za latinicu na određeno vreme. Možda da ustanovimo kao standard veliko slovo?

Бранко,
Свака част на детаљно припремљеној анализи!
Него, имаш ли став како треба попуњавати саму адресу (“addr”)? Да ли ту треба да буде ћирилица, латиница, или можда и да она буде двојезична, или да ли је треба уопште попуњавати? Чини ми се да се прво око овога треба да се договоримо и да онда то решење прекопирамо и на саме бројеве.
Слова у бројевима се једнозначно преводе из ћирилице у латиницу, и обрнуто, тако да је то само ствар техничке природе. Упреводу, не можемо да много погрешимо :slight_smile:

Мислим да “бб” можемо да сматрамо грешком, јер већ одавно не може да се добије лична карта без кућног броја, а чини ми се да је већ завршен процес нумерације свих објеката у Србији.

OsmAnd se “priklanja” addrN šemi. Ako se odlučimo za latinicu, ja ne vidim problem da dodajemo ćirilicu i u “addr:housenumber:sr” i u “addr2:housenumber” (kao što piše na addrN wikiju). Ne znam ko ingest-uje “addr:housenumber:sr” - da li https://www.osmsrbija.iz.rs/ to ingest-uje? Opet, neka ga, nije problem, samo treba znati šta teorijski gubimo ako ga nema.

Proverio sam i oni svuda imaju ćirilicu. Pitao sam sad Ilyu Zvereva, evo njegov mail u celosti:

Mislim da oni nemaju problem pošto pretražuju mahom na ćirilici (i mi ne bismo imali taj problem da svi koriste ćirilične tastature…). Ovo što je predložio sa odvajanjem space-om nema potrebe, pošto to već radi tako - čim se otkuca 19, obično sve aplikacije nalaze sve što počinje sa 19. Ali za sad on čovek izgleda jedini protiv ovog predloga:)

Može, ne vidim nijedan problem sa tim. Geocoderima i aplikacijama je svejedno (koliko ja primećujem), a sve što nam dolazi od RGZ-a ukazuje da oni sve imaju normalizovano velikim slovima (ili bar to tako daju za javnost), uključujući tu i kućne brojeve.

Ne razumem baš pitanje? Misliš na “addr:street” ili sve ispod “addr:" tagova? Ili nešto treće? Ako misliš na "addr:” (i “addr:street”), tu je sad već ćirilica, tako je odavno definisano, zar ne? Sad si me malo izbacio iz komfor zone dok razmišljam o latinici kao default vrednosti:) Huh… u principu… deluje da bi moglo da radi ako bismo koristili “addr:street:sr” ili “addr2:street” kao osnovu, na osnovu koje bi se generisala “addr:street”. Ali mislim da to zahteva skroz novu temu, deluje kao ogromna promena, što tehnički, što u razmišljanju, što u alatima/uvoziocima, što politički. Ovako, na prvu loptu, ja ne bih to radio, ali možda stvarno treba nova tema za to, a da ovu pauziramo:)

Da, u pravu si. Sad gledam, nema ih mnogo, ima 40tak node-ova i 130 way objekata sa “bb”. Ali to može da nam dobro posluži da na tim mestima ispravimo adrese pošto znamo da nisu tačne!

У том делу Оsmsrbija само ради рендер по подразумеваним вредностима, тако да ту нема разлике у односу на главни редер ОСМ-а.

Извињавам се, нисам одавно гледао како тренутно ствари стоје. Некада давно је https://tools.geofabrik.de/osmi/ за адресе давао толико грешака да те глава заболи јер су улице биле дефинисане на ћирилици а адресе (addr:street) на латиници. Сада видим да се то драматично променило у међувремену.

Што се тиче слова у броју, моје мишљење је да би то требало да буде на ћирилици, као што је и addr:street. Ту се морамо уздати у оног ко обрађује податке да ће квалитетно да одради посао, посебно јер је “А” (које се и најчешће додељује јер је прво) визуелно исто и у ћирилици и у латиници, али га UTF8 другачије препознаје. Можемо да га унифицирамо, али шта радити тамо где је и основни назив улице на латиници?

Такође, мислим да нам “addr:housenumber:sr” није ни потребан јер је задовољавајућа прецизност постигнута и са постојећим стањем.

Danas sav softver lepo radi sa UTF-8, tako da tu ne bi trebalo da ima problema (ja bar ne znam nijedan koji koristi neki drugi kodni raspored?). Softverski se lako prepoznaje koje “A” je u pitanju. Ako je problem do nekog konkretnog softvera, najbolje da navedeš takve softvere, pa da vidimo šta je tačno problem.

Pa zavisi kako gledaš na stvari. Zvanično (a3.geosrbija), ne postoji nijedna ulica u Srbiji koja nije na ćirilici, čak ni tamo gde je ćirilica manjinsko pismo. Ako nađeš drugačiji primer, screenshot-uj ga ovde. Isto važi i za kućne brojeve. To znači da su svi kućni brojevi u celoj Srbiji na ćirilici i prate azbuku (a ne abecedu). To znači da je nebitno da li je kućni broj ćirilica ili latinica da bismo ovde odlučili kakav treba da bude. Ako odlučimo da “addr:housenumber” bude latinični, onda svakako imamo ćirilicu u “addr:housenumber:sr” i “addr2:street”. Zvanični kućni broj uvek možeš naći u tim tagovima.

Ako uzmeš nezvanično i kažeš da kućni broj nije uvek ćirilica i da se gleda ground-truth, onda uopšte ne vidim neki problem da se napravi skripta koja proverava pismo “addr:street” taga u zgradi i ne gleda ćirilični kućni broj, ili briše “addr:housenumber:sr” i “addr2:street”, zar ne? Deluje da je konzistentno kako god okreneš.

Misliš, ako odlučimo da koristimo latinicu za “addr:housenumber”, ne treba nam? Pa ako koristimo pravu latinicu sa dijakriticima, a nikako ošišanu (“30Š”, a nikako “30S”), onda da - uvek imamo sve informacije da rekonstruišemo precizno ćirilicu.

Ako pak pod “postojećim stanjem” misliš današnje stanje gde imamo pomešanu latinicu i ćirilicu, onda se ne bih složio. Prvo, zbog konzistentnosti, a drugo zbog zadovoljavajuće preciznosti, kako si je nazvao - ja koristim mahom latinicu i OSM (i nijedan alat) mi nema “zadovoljavajuću preciznost” pošto prosto - ne radi:) Otud i tema.

To je izgleda opšti problem. Postoji onaj international tag koji je kao trebalo to da reši (da se nazivi a što ne i brojevi ulica) upisuju na neki univezalno primenljiv način pre svega zbog pretrage i snalaženja ljudi koji ne znaju lokalne jezike i pisma. Ali mi se čini da to baš i nije nešto zaživelo.

Možda ovaj problem terba pokrenuti na nekoj višoj instanci, ne samo u okviru naših lokalnih potreba? Meni izgleda da nije problem u unošenju podatak anego načinu kako seoni koriste. ako neko zabroavlja da da postoje različita pisma i u svom softveruniej omogućio dobru pretragu uzevši to u obzir najpre njemu terba skrenuti pažnju da to treba da reši, ili, u OSM bazi predvideti da se podaci obavezno unose na neki način koji taj problem predupređuje.

Ја користим OsmAnd и Nominatim и мени лично је задовољавајуће да добијем у претрази улицу и број (без слова), а објекат са словом се налази “ту негде” или на списку или на мапи. Направио сам неколико проба претрага у Nominatim-у и једино претрага са бројем дефинисана са ћириличним словом у броју (“zapadno seliste 18ц”) је дала резултат из цуга а без слова дат је суседан објекат. OsmAnd је понудио списак бројева где се јасно и лако види да је слово у броју ћирилично. Што се тиче моје личне употребе, ово је задовољавајуће.
Свестан сам да је мало људи свесних да објекат можда неће бити нађен због писма у слову броја и који би кориговали своју претрагу због тога.

Пробао сам претрагу у Nominatim “lipeck ulica dovatora 12b” и добио сам објекат који је у потпуности ћирилично дефинисан. У OsmAnd-у сам такође дошао до тог објекта са коришћењем само латиничне тастатуре - прецизније, када сам унео број 12 имао сам понуђена четри објекта од којих је један тражени.

Сад ме копка како је Nominatim успео да се избори са ћирличним словом - да није зато што је написано као велико?

Vec sam naveo slucajeve da Nominatim radi ispravno u tabeli, evo opet primera:
https://www.openstreetmap.org/search?query=spanskih boraca 22a
https://www.openstreetmap.org/search?query=spanskih boraca 22b

Nije problem Nominatim (manje-vise), problem su svi ostali softveri i geocoderi. I ne - ne zelim da kucam pocetak na latinici i da menjam tastaturu na cirilicu zbog jednog slova. Ne zelim ni da kucam broj “18”, pa da cekam da mi izlista sve brojeve koje hocu. Meni ovo sto si rekao lici kao umanjivanje/ignorisanje problema? Ako je tebi licno “zadovoljavajuce”, ima ljudi kojima to nije. Problem je sto ljudi otkucaju “18c” i onda ne dobiju nikakav odgovor. Ili treba da otkucaju “18” i da traze “tu negde”? Nisam sad siguran sta je tacno tvoje stanoviste ovde:

a) Problem ne postoji, sve radi “zadovoljavajuce”, nema potrebe za pragmatizmom, ili
b) Problem postoji, ali… nisi bas za pragmaticno resenje, umanjujes problem, zelis da zadrzimo status kvo sa pomesanim brojevima na cirilici i latinici?

I dalje mi nije jasno kako ti gledas na sve ovo, narocito sto si rekao da si “svestan da ima ljudi koji nece naci objekat zbog ovoga”.

Opet, Nominatim radi normalizaciju na latinicu, ali niko drugi ne radi, zato ti i radi ta ruska adresa (kao sto radi i ova nasa “spanskih boraca” iz primera). Problem je sto Nominatim nekad radi, nekad ne, ali zato OsmAnd, MagicEarth i sve ostalo - ne radi.

Niko nikad nije definisao international tag za addr:housenumber, bar ne da ja znam? Imas li neku referencu za to? Mislim da ce pre problem resiti addrN sema.

Pa OSM je dosta decentralizovan sistem, nije da ima neka instanca kojoj mozemo da se zalimo:) Internacionalnom skupu geocoder softvera sa sedistem u Strazburu:) Ima smisla da napadnemo pojedinacno najvece softvere (kao sto sam i predlozio), ali ovaj post se odnosi na pitanje sta cemo da radimo u nasem dvoristu i tamo gde imamo kontrolu da mozemo da promenimo stvari na bolje (ne na prosto prebacivanje problema, to je najlakse)

Nisam ni rekao daje international tag definisan za adrese nego da bi talogika imala smisla da seprimeni bas na adrese.

Problem koji si prezentovao se svodi na unos podataka radi renderinga. Softveri ne renderuju mapu kako treba i sad je potrebno menjati podatke da bi to radilo koliko-toliko kako treba. Zbog toga sam uzdržan. Problem je očigledan, treba ga rešiti a izgleda da jedino rešenje nije kako treba da se radi al drugačije ne može.

Sta se desava ako je broj unet latinicom a neko ukuca u pretrazi ćirilicu?

Просто и једноставно - немам изграђен став јер не видим решење за дати проблем. И да цитирам Пеђу “Zbog toga sam uzdržan.” Додатно, нешто ме не и брине како раде програми које не користим докле год имам оно што ми завршава посао :wink:

Најлогичније је да проблем не постоји јер би требало да се ради нормализација (по аналогији за називе улица), али то очигледно не функционише - чак не функционише ни доследно на примеру Nominatim-а. Ово би требало да је универзално решење за целу планету: обезбеди правила за нормализацију и ја ћу да нормализујем и адресу и број. Увођење додатног тага не видим да ће да побољша ситуацију, јер је то примењиво врло локализовано (да не кажем само за нас), али то свакако неће да погорша стање. Такође, интуитивно, очекујем да је већи посао програмерима да имплементирају коришћење додатних тагова него нормализацију броја.

Да сумирам, када би данас било неко гласања које не бих могао да игрноришем, ја бих гласао за ћирилично слово у броју без додатног тага.

Pozdrav,
Šta mislite o prebacivanju бб / bb / ББ / BB adresa (proverio sam na Overpass-u, postoje sve 4 varijante, doduše ove sa velikim slovima su manje zastupljene) u celoj Srbiji na tag nohousenumber=yes? Ja sam to uradio u Beogradu, ali kada se saberu sve 4 varijante u celoj Srbiji, ima ih baš dosta, a trebalo bi i proveravati za svaku da nije dobila kućni broj u međuvremenu, kao što je bio slučaj sa nekim u Beogradu. Mislim da bi to prebacivanje bilo dobro jer bi sve bb adrese bile dosledne, a i bb zaista nije kućni broj pa da može da se nađe kao vrednost taga addr:housenumber.

Требало би да су сви објекти у Србији добили бројеве. Мислим да не би смело да још буде “бб” у адреси.