În urma discuției anterioare productive despre ref, int_ref și rcn_ref de la
http://groups.google.com/group/ro-osm/browse_thread/thread/135530e67048d033#
am căzut de acord în legătură cu câteva lucruri. Partea proastă e că
sunt ceva erori, partea bună e că sunt destul de simplu de detectat și
de corectat automat (având în vedere că se pare că există unelte
disponibile*[1]).
Ce n-am făcut încă e să trecem concluzia cu pricina pe wiki.
Totuși, înainte de a folosi smecheria aia [1], ar fi bine să mai
stabilim niște regului.
Între timp am mai observat ceva inconsecvențe legate de numele
străzilor în OSM și am ceva soluții. Am să enumăr întâi problemele,
apoi am să expun și soluțiile propuse
Cazuri:
1) un drum extern are ca nume referința/referințele
2) formatul numelor de străzi nu este consecvent, apărând multe forme
inconsecvențe:
a) referitoare la precizarea cuvântului „stradă": „str. Plopului",
„strada Plopului", „Strada Plopului", „Plopului"
b) referitoare la prezența cuvântului „stradă" când nu prea are
sens: „Strada Aleea Plopului", „strada Bulevadrul Plopului", „strada
Calea Plopului"
c) numele și prenumele persoanelor după care s-a botezat strada nu
apar într-o ordine clară: „Dentist Ion Mihai Gavrilescu", „Dentist
Gavrilescu Ion Mihai", „Ion Mihai Gavrilescu, Dentist"; cred că am
văzut chiar ceva de forma „Gavrilescu, Ion Mihai, Dentist" la un
moment dat
d) uneori numele personalităților sunt urmate de precizarea
funcției pe plăcuțele cu numele străzii; acest lucru apare
inconsecvent redat: ex. pentru tăblița "Strada Virgil Carianopol
-scriitor-" uneori apare name="strada Scriitor Virgil Carianopol",
alteori "strada Virgil Carianopol"
3) tuneluri, pasaje, poduri sau viaducte care au numele identic cu
strada din care fac parte (rareori corect)
4) utilizarea diacriticelor pare a fi o problemă delicată și mulți par
a nu le utiliza
Înainte de a prezenta ceva propuneri de soluționare ale problemelor
expuse e util să mai spun că tag-ul name are descrierea următoare pe
pagina Map_Features:
The common default name. (Note: For disputed areas, please use the
name as displayed on e.g. street signs for the name tag. Put all
alternatives into either localized name tags (e.g. name:tr/name:el) or
the variants (e.g. loc_name/old_name/alt_name). Thank you.)
1) un drum extern, de regulă, nu are nume, iar dacă are nume, clar
acel nume NU este referința; deci name=DN6 nu este corect;
Propunere:
- „name" NU este prezent când în acel câmp nu se pune un nume
distinct de vreuna din referințele existente
Ex. de cazuri INCORECTE:
- un drum extern cu ref=DN6, int_ref=E70, name=E70
- un drum extern cu ref=DN6, int_ref=E70, name=DN6
- un drum extern cu ref=DN6, int_ref=E70, name=E70
- un drum extern cu ref=DN6, int_ref=E70, name=DN6;E70
CORECT este:
- un drum extern cu ref=DN6, int_ref=E70 (name e absent)
2) dacă nu se folosește un format consecvent, nu se pot face căutări
corecte în aplicații (nu se știe ce trebuie eliminat automat din
nume), harta va avea un aspect neprofesionist, utilizatorii
nevorbitori de română ar putea întâmpina dificultăți la folosirea
hărții
Propun:
a) și b) cuvântul „stradă" este prezent, dacă are sens sub forma
„strada" (la fel cum se folosește și în Regatul Unit, în Ungaria, în
Austria)
Exemplu (doar câmpul „name", restul sunt irelevante):
strada „Plopului":
CORECT: name="strada Plopului"
GREȘIT: orice altă formă
strada „Bulevardul Dacia":
CORECT: name="bulevardul Dacia"
GREȘIT: orice altă formă
strada „Aleea Plopului":
CORECT: name="aleea Plopului"
GREȘIT: name="strada Aleea Plopului"
c) numele apar ÎNTOTDEAUNA EXACT ca pe tăblițele pe care e scris în
teren numele străzii; dacă există mai multe plăcuțe cu variante
diferite se folosește cea mai nouă dintre ele
d) numele apare exact ca pe tabliță, iar dacă funcția precizată
suplimentar, se adăugată la numele complet în tag-ul "alt_name", dar
"alt_name" poate să lipsească
Exemplul 1: pe tăbliță scrie:
str. Slt. Ecaterina Teodoroiu
CORECT:
name="strada Slt. Ecaterina Teodoroiu"
GREȘIT:
name="strada Ecaterina Teodoroiu"
name="strada Sublocotenent Ecaterina Teodoroiu"
name="strada slt. Ecaterina Teodoroiu"
Exemplul 2: pe tabliță scrie:
Strada
Virgil Carianopol
- scriitor -
CORECT:
name="strada Virgil Carianopol"
name="strada Virgil Carianopol", alt_name="strada Scriitor Virgil
Carianopol"
GREȘIT:
name="strada Virgil Carianopol - scriitor"
name="strada Virgil Carianopol", alt_name="strada scriitor Virgil
Carianopol"
name="strada Virgil Carianopol", alt_name="strada Virgil
Carianopol (scriitor)"
(orice altă formă)
3) este posibil ca un pasaj, tunel, pod sau viaduct să aibă un nume propriu
se pune chiar numele podului respectiv sub forma „podul Viorele", dacă
e cazul, altfel se pune numele străzii, dar se precizează formatul
pentru stradă (vezi problema 2) )
Ex. pentru un pod de pe strada Ciucului:
- dacă nu are nume propriu: name=strada Ciucului, bridge=yes, layer=1
- dacă se numește Miercurea: name=podul Miercurea, bridge=yes, layer=1
4) uneori diacriticele reprezintă o problemă (nu sunt fonturi, nu sunt
decodate corect sau aplicațiile pur și simplu crapă) și mulți oameni
nici nu sunt conștienți care sunt diacriticele corecte în limba română
[2]; în unele aplicații căutarile pot eșua dacă nu scrii diacriticele
exact cum sunt în nume (unde mai pui și cazul în care ai un dispozitiv
pe care nu poți să scrii cu diacritice, cum e telefonul meu).
De aceea, propun următoarele:
- la câmpul „name" întotdeauna se scrie numele CU diacritice
- când numele are diacritice, se dublează câmpul name cu câmpul
name:ro:nodiacr care e scris fără diacritice (evident, nu cu „sh" în
loc de „ș", ci cu „s" în loc de „ș")
Exemplu: pentru strada Ștuțului**:
name="strada Ștuțului", name:ro:nodiacr="strada Stutului"
Ce ziceți?
P.S.: Noi de ce nu avem un talk-ro pe listele oficiale de la
http://wiki.openstreetmap.org/wiki/Mailing_list ?
* nu am testat chestia aia încă
** am dat intenționat acest exmplu pentru a ilustra imediat
[1] http://wiki.openstreetmap.org/wiki/Automated_Edits/Software
[2] http://www.secarica.ro/html/s-uri_si_t-uri.html
--
Regards,
EddyP
=============================================
"Imagination is more important than knowledge" A.Einstein
Am două countraargumente:
1) dacă nu se folosește peste tot "Strada/strada/Str./str." dar se
folosește "Aleea/aleea/Ale./ale.", "Bulevardul/bulevarul/blvd./b-dul",
"Intrarea/intrarea/Intr./intr." se ajunge la inconsecvență deoarece de
multă lume acele clasificări NU reprezintă parte din numele străzii,
ci indică doar clasa acesteia.
2) Există cazuri (eu știu vreo două) în care există atât Strada Bla
cât și Intrarea Bla, iar absența clasificării duce la aceiași
inconsecvență și poate duce la confuzie; da, în ambele cazuri pe care
le cunosc cele două sunt în apropiere, dar ce te faci dacă nu ești în
zonă și cauți "Doctor Iacob Felix" și găsești atât strada cât și
intrarea?
(Al doilea caz e Strada Filofteia Popescu și Intrarea Filofteia
Popescu; ambele cazuri sunt în București).
> Tinant cont ca editarea se face in mare parte manual as prefera sa nu
> se foloseasca "Strada" in numele strazilor. dar sant de acord ca
> trebuie sa ajungem de comun acord astfel incat sa avem un rezultat
> unitar pentru toata harta.
Aș fi mulțumit și dacă s-ar folosi peste tot abrevieri, sau peste tot
cuvintele complete cu majusculă la început, oricum, numai să fie
consecvent.
Poate ar fi interesant să avem o statistică cu numărul de străzi care
folosesc Strada, strada, Str. si respectiv str. și câte altele
folosesc celelalte Intrarea/intrarea/Intr./intr.,
Bulevardul/b-dul/blvd...
Ce ar fi interesant de văzut e câte străzi sunt de forma
"Strada/strada/Str./str. Bulevardul/Intrarea/Aleea/Calea ...", adică
au clasificarea dublată?!
Atunci de ce nu renunți și la "Aleea/Bulevardul/Calea"? Mi se pare că
aplici fără să vrei un standard dublu.
Eu cred că, deși unele autorități nu conștientizează, clasificarea se
dorește, dar nu toată lumea din administrația publică nu este activ
conștentă de această dorință și astfel se ajunge la duplicarea
clasificării.
Ca un exemplu de „așa da", anul trecut când am fost în Edinburgh,
Scoția, nu am văzut *deloc* asemenea dublări de clasificare, un drum
fiind doar una dintre: Road, Abbey, Lane, Place, Avenue, Street,
Terrace, Crescent ...
La fel, harta din UK, Ungaria, Austria ș.a.m.d. chiar prezintă aceiași
consecvență în mai toate locurile în care m-am uitat.
> Si eu sunt de acord ca in denumirile strazilor ar trebui folosit exact
> forma in care apare pe placutele cu numele acestora.
> In ce priveste diacriticele, le-am folosit (probabil cu unele
> scapari), insa uneori nu sunt aceleasi coduri de caractere cu cele
> cunoscute din Windows, deoarece de regula am scris pe linux, iar cu
OSM folosește UTF-8, orice altă codare, cu excepția ASCII, este o
utilizare incorectă și nu *cred* că API-ul OSM acceptă așa ceva.
> unele fonturi arata asa cum ar trebui, cu altele nu.
Fonturile sunt o altă problemă care este, de regulă, rezolvabilă.
Totuși, pentru cazurile în care nu se rezolvă, se pot folosi
variantele fără diacritice.
Înțeleg că informația asta ar cam fi duplicată și se poate obține ușor
la export, dar cred că sunt șanse mai mari să existe unelte care să
extragă date și să folosească int_name (international name) dacă
există, sau name, dacă nu.
Așa cum e normal :-) .
>> 2) dacă nu se folosește un format consecvent, nu se pot face căutări
>> corecte în aplicații (nu se știe ce trebuie eliminat automat din
>> nume), harta va avea un aspect neprofesionist, utilizatorii
>> nevorbitori de română ar putea întâmpina dificultăți la folosirea
>> hărții
>>
>> Propun:
>> CORECT:
>> name="strada Slt. Ecaterina Teodoroiu"
>>
>> GREȘIT:
>> name="strada Ecaterina Teodoroiu"
>> name="strada Sublocotenent Ecaterina Teodoroiu"
>> name="strada slt. Ecaterina Teodoroiu"
>
> De ce "strada" si nu "Strada"?
> Pe placutele de la primarie (cel putin in Bucuresti/S1) este capitalizat ex
> "Strada Ecaterina Teodoroiu".
Mi-e indiferent, poate chiar e mai bine "Strada" pentru o mai ușoară
consecvență cu străzi de genul "Intrarea/Bulevardul..." unde banuiesc
că e capitalizat indiferent dacă cuvântul „strada" e sau nu prezent.
>> 4) uneori diacriticele reprezintă o problemă (nu sunt fonturi, nu sunt
>> decodate corect sau aplicațiile pur și simplu crapă) și mulți oameni
>> nici nu sunt conștienți care sunt diacriticele corecte în limba română
>> [2]; în unele aplicații căutarile pot eșua dacă nu scrii diacriticele
>> exact cum sunt în nume (unde mai pui și cazul în care ai un dispozitiv
>> pe care nu poți să scrii cu diacritice, cum e telefonul meu).
>>
>> De aceea, propun următoarele:
>> - la câmpul „name" întotdeauna se scrie numele CU diacritice
>> - când numele are diacritice, se dublează câmpul name cu câmpul
>> name:ro:nodiacr care e scris fără diacritice (evident, nu cu „sh" în
>> loc de „ș", ci cu „s" în loc de „ș")
>>
>>
>> Exemplu: pentru strada Ștuțului**:
>>
>> name="strada Ștuțului", name:ro:nodiacr="strada Stutului"
>
> Aici ma abtin -> eu nu scriu cu diacritice.
În acest caz, aș vrea să te rog ca de acum înainte să scrii direct în
"int_name", dacă sunt diacritice pentru a face mai ușoară viața celor
ce vor să adauge numele cu diacritice. Există *multe* cazuri în care
lipsa diacriticelor duce la confuzie, cum a fost în cazul prezentat de
mine.
> Nu ma deranjeaza sa scrie altii, problema cautarii denumirilor cu diacritice
> pe baza de termeni fara diacritice este foarte usor de rezolvat.
--
Poate ar fi interesant să avem o statistică cu numărul de străzi care
folosesc Strada, strada, Str. si respectiv str. și câte altele
folosesc celelalte Intrarea/intrarea/Intr./intr.,
Bulevardul/b-dul/blvd...
În acest caz, aș vrea să te rog ca de acum înainte să scrii direct în
>>
>> De aceea, propun următoarele:
>> - la câmpul „name" întotdeauna se scrie numele CU diacritice
>> - când numele are diacritice, se dublează câmpul name cu câmpul
>> name:ro:nodiacr care e scris fără diacritice (evident, nu cu „sh" în
>> loc de „ș", ci cu „s" în loc de „ș")
>>
>>
>> Exemplu: pentru strada Ștuțului**:
>>
>> name="strada Ștuțului", name:ro:nodiacr="strada Stutului"
>
> Aici ma abtin -> eu nu scriu cu diacritice.
"int_name", dacă sunt diacritice pentru a face mai ușoară viața celor
ce vor să adauge numele cu diacritice. Există *multe* cazuri în care
lipsa diacriticelor duce la confuzie, cum a fost în cazul prezentat de
mine.
Evident, am uitat să precizez acest caz explicit.
> fara diacritice "int_name" si fara "name". Personal nu sunt de acord, avand
> in vedere ca o strada cu "name" fara diacritice este mai valoroasa pe harta
> decat o strada care nu are de loc "name" (si este gasita de gazetteer /
> place finder pe baza de international name).
Ideea era ca să fie marcate consecvent cumva străzile care au fost
scrise fără diacritice
pentru a facilita suplimentarea ulterioară a informației în urma
excursiilor în teren.
> Fara legatura cu cele de mai sus, propunerea ta cu "name:ro:nodiacr" nu mi
> se pare adecvata -> o astfel de proprietate (eticheta fara diacritice) poate
> fi calculata foarte usor de orice aplicatie printr-o tabela de translatie
> simple (Ș -> S / ț -> t, etc). Nu are nici un sens sa scriem in OSM date
> care pot fi calculate.
Da, cu un câmp specializat probabil nu are sens. Ce zici dacă se
folosește int_name în loc?
Ideea e că ar putea exista unelte care preferă int_name la export,
dacă acesta există. Dacă nu, atunci e folosit name. De exemplu, o
hartă a Europei (care să includă țarile vestice dar și Bulgaria,
Macedonia, Serbia sau Grecia) ar putea fi tinta unui asemena deziderat
și/sau metode de export. Astfel, lipsa diacriticelor ar fi, din start,
obținută ca un efect secundar al importului special[1].
[1] mai ales că nu cred că cineva din exteriorul României ar fi
interesat să facă filtrul cu pricina, mai ales că pare a avea un
impact minor și România și românii au stat mereu prost la capitolul
localizare și dorința de a-și folosi corect limba
Da, cu un câmp specializat probabil nu are sens. Ce zici dacă se
> Fara legatura cu cele de mai sus, propunerea ta cu "name:ro:nodiacr" nu mi
> se pare adecvata -> o astfel de proprietate (eticheta fara diacritice) poate
> fi calculata foarte usor de orice aplicatie printr-o tabela de translatie
> simple (Ș -> S / ț -> t, etc). Nu are nici un sens sa scriem in OSM date
> care pot fi calculate.
folosește int_name în loc?
Ideea e că ar putea exista unelte care preferă int_name la export,
dacă acesta există. Dacă nu, atunci e folosit name. De exemplu, o
hartă a Europei (care să includă țarile vestice dar și Bulgaria,
Macedonia, Serbia sau Grecia) ar putea fi tinta unui asemena deziderat
și/sau metode de export. Astfel, lipsa diacriticelor ar fi, din start,
obținută ca un efect secundar al importului special[1].
Se subînțelege sau nu, nu este consecventă abordarea. Măcar legat de
treaba asta ești de acord cu mine?
> Pentru restul de 10% folosesc terminatiile practicate
> (Bulevard,Cale,Intrare,Alee) pentru a putea face o distinctie clara.
După cum am mai spus, ar fi interesantă o statistică a datelor deja
existente (pentru nume distincte).
Statistica exista deja (deși cazuri în care apare "strada
Aleea/Bulevardul/.. .." nu-s tratate) și se pare că ești contrazis la
capitolul procente:
Din 13990 de drumuri (care pot fi și fără nume):
2132 - Strada%
1360 - Str.%
434 - Bulevar% (aici cred că interogarea sql ar trebui să fie
împărțită în 2: "Bulevard %" și "Bulevardul%")
323 - Ale% (aici iarăși cuprinde mai multe variante: Aleea ...., Ale.
... sau chiar străzi care încep cu "Ale")
135 - Intrar%
87 - str.%
50 - B-dul%
11 - strada%
3 - intrar%
2 - bulevar%
0 - ale%, b-dul%,
De aici pare evident că:
- variantele cu literă mică sunt o excepție, deci clasificarea ar
trebui să fie scrisă cu literă mare.
- variantele abreviate sunt destul de frecvente pentru "strada" -
probabil semn că lumea nu consideră asta parte din dar destul de
importantă să fie prezentă
- pentru clasificările de tip non-stradă se practică (zic eu corect)
omiterea cuvântului "Strada" (deși nu e clar câte cazuri sunt de genul
"Strada Aleea/Bulevardul/* ..."
Ce nu am văzut în interogările ăsta sunt străzile care nu au deloc
cuvântul stradă sau alt cuvânt de genul ăsta.
Incorect, în acea interogare există drumuri care:
- nu au nume, sau au valori nule pentru nume sau chiar câte un spațiu
- au nume incorecte: ex. DN6, E80, E79, DJ226C
- frecventul nume 'tbd' cu toate variantele lui
- varianta specială "(noname)" care precizează faptul că strada nu are nume
Această situație e mai frecventă decât credeam inițial. Pornind de la
drumurile cu referințe corecte am corectat în ultimele 10 minute
aproximativ 20 de drumuri externe care aveau nume identic cu una din
referințe (fie cu spațiu, fie fără, fie cea națională, fie cea
Europeană).
Până la urmă 120% dintre statistici sunt contrafăcute ;-) .
> - frecventul nume 'tbd' cu toate variantele lui
> - varianta specială "(noname)" care precizează faptul că strada nu are nume
>
>> deci vei vedea ca doar 20% din strazi contin cuvantul "Strada"
>> inauntru, mai este un numar de strazi care contin terminatii de genul
>> "Bulevard, Alee" care mai fac cateva procente dar 75% din strazi nu
>> contin nici o terminatie.
>>
>> Acuma este de vazut cati dintre noi vor sa folosim cuvantul "Strada"
>> in interiorul numelui unei strazi.
>>
>> Daca in urmatoarele zile se formeaza o majoritate intr-o directie sau
>> alta o sa incercam sa o urmam.
--
Am dat o privire din aer pe Harta osm in Timisoara,
Arad,Suceava,Sighisoara,Brasov,Iasi, Bucuresti, Galati, Onesti, Sibiu
si Hunedoara (astea fiind orasele cu o buna acoperire)
Acem urmatoarea situatie:
Arad,Sighisoara,Suceava, Onesti, Sibiu nu sa folosit :Strada: in
denumirea strazi
Brasov,Iasi se foloseste Str.
Galati;Hunedoara Se foloseste Strada
Bucuresti estimez ca 80% din strazi nu contin Strada in denumirea
strazii (eu am introdus mare parte din bucuresti in OSM)
Timisoara este mixata cu toate posibilitatile.
Asa ca eu inclin sa cred ca in mai mult de 50% din cazuri nu se
foloseste Strada sau Str.
Revin, =C3=AEn consecin=C8=9B=C4=83, cu urm=C4=83toarele date suplimentar=
e (dup=C4=83 ce mi-am instalat =C8=99i eu osm2pgsql).
C=C4=83ut=C4=83rile cu expresii regulare nu =C8=9Bin seama de majuscule, =
deci dac=C4=83 spun strada, atunci se acoper=C4=83
=C8=99i STRADA, StRaDa, etc.
Toate =C3=AEnregistr=C4=83rile:
select regexp_matches(name, '.+','i') from planet_osm_line where highway =
in ('primary', 'secondary',
'tertiary', 'residential', 'trunk');
(15263 rows)
Din acestea aproximativ 140 par a fi de la vecinii no=C8=99tri:
select name from planet_osm_line where highway in ('primary', 'secondary'=
, 'tertiary',
'residential', 'trunk') and (name like '%=D0=B8%' or name like '%=D0=BB%'=
or name like '%=D0=BE%' or name like
'%=D0=B5%' or name like '%=D0=B0%' or name like '%=D1=83%' or name like '=
%=D0=B9%' or name like '%=C5=91%' or name like '%=D0=BB%'
or name like '%=C3=B3%' or name like '%ug=C3=A1r=C3=BAt%' or name like '%=
utca%' or name like '%Str' or name like
'%Bld' );
(139 rows)
Drumurile care au numele =C3=AEntr-una din formele DNX/EX/DJX cu sau f=C4=
=83r=C4=83 spa=C8=9Biu, unde X e un num=C4=83r
format din cel pu=C8=9Bin o cifr=C4=83 =C8=99i posibil o liter=C4=83 dup=C4=
=83:
select regexp_matches(name,'^[ ]*(?:d[njc]|e)[ ]*[0-9]+.*','i') from plan=
et_osm_line where highway
in ('primary', 'secondary', 'tertiary', 'residential', 'trunk');
(679 rows)
Drumuri cu nume care de fapt nu-s nume:
select regexp_matches( name, '^[ ]*(?:tbd|(?:|no)[
]*name[?]*|bretea|sens.*|fix(?:|me)|pod|strad[=C4=83a]|girator|[?!]+)[ ]*=
$', 'i') from planet_osm_line
where highway in ('primary', 'secondary', 'tertiary', 'residential', 'tru=
nk');
(668 rows)
Mai e =C8=99i o ciud=C4=83=C8=9Benie: "P..."
Rezult=C4=83 un total de aproximativ 13750 de segmente care par a fi apro=
ape de num=C4=83rul real de drumuri
care sunt =C8=99i str=C4=83zi.
> deci vei vedea ca doar 20% din strazi contin cuvantul "Strada"
> inauntru, mai este un numar de strazi care contin terminatii de genul
> "Bulevard, Alee" care mai fac cateva procente dar 75% din strazi nu
> contin nici o terminatie.
Drumuri care au =C3=AEn nume vreo particul=C4=83 de genul strada/st./str.=
/strada./....
select regexp_matches(name, '^[ ]*(?:st(?:|r(?:ada|))[ .].*)','i') from p=
lanet_osm_line where
highway in ('primary', 'secondary', 'tertiary', 'residential', 'trunk');
(4320 rows)
Aprox. 32% din *segmente*
Orice alee, intrare, bulevard, cale, splai, =C8=99osea sau pia=C8=9B=C4=83=
:
select regexp_matches(name,
'^[
]*(?:pia[=C8=9Bt=C5=A3]a|cal(?:ea|)|int(?:r(?:area|)|)|al(?:e(?:ea?|)|)|b=
ul(?:ev(?:ard(?:ul|)|)|)|blvd?|b-dul|bdul|bd|[s=C8=99=C8=98]os(?:|ea(?:|u=
a))|(?:splai(?:|[a-z]*)))[
=2E].*', 'i') from planet_osm_line where highway in ('primary', 'second=
ary', 'tertiary',
'residential', 'trunk');
(1765 rows)
Aprox. 13% din segmente
Deci, =C3=AEn total, cam 44% din drumuri au o particul=C4=83 de clasifica=
re.
Acum eu a=C8=99 putea s=C4=83 =C3=AEncerc s=C4=83 mai =C3=AEntorc de cifr=
e =C8=99i s=C4=83 =C3=AEncep sa spun c=C4=83 cei care adaug=C4=83 aceste
particule sunt probabil mai nu =C8=99tiu cum, sau ceilal=C8=9Bi sunt mai =
altfel =C8=99i de aia ar trebui s=C4=83 aib=C4=83 un
cuv=C3=A2nt mai greu de spus, dar n-am s=C4=83 o fac.
=C3=8En schimb, am s=C4=83 v=C4=83 spun c=C4=83 mi-a fost *foarte* u=C8=99=
or s=C4=83 filtrez drumurile care sigur apar=C8=9Bineau de
alte =C8=9B=C4=83ri pentru c=C4=83 vecinii no=C8=99tri folosesc particule=
le de clasificare, iar o asemenea filtrare ar
putea fi util=C4=83 chiar pentru producerea de h=C4=83r=C8=9Bi strict pen=
tru Rom=C3=A2nia.
Nu cred c=C4=83 are sens s=C4=83 repet ideile despre consecven=C8=9B=C4=83=
=C8=99i uzan=C8=9B=C4=83 =C3=AEn exterior.
> Acuma este de vazut cati dintre noi vor sa folosim cuvantul "Strada"
> in interiorul numelui unei strazi.
>=20
> Daca in urmatoarele zile se formeaza o majoritate intr-o directie sau
> alta o sa incercam sa o urmam.
Curiozit=C4=83=C8=9Bi =C8=99i diverse date:
Interesant c=C4=83 =C3=AEn ultima s=C4=83pt=C4=83m=C3=A2n=C4=83 a ap=C4=83=
rut aproape =C3=AEn =C3=AEntregime Craiova (multe str=C4=83zi) =C8=99i ar=
e toate
str=C4=83zile trecute de o aceia=C8=99i persoan=C4=83 *f=C4=83r=C4=83* pa=
rticula strad=C4=83, (poate uneori chiar f=C4=83r=C4=83 aleea,
bulevardul, etc.).
Bulevarde: bulevard/bulevardul/bul/bd/b-dul/blv/blvd
select regexp_matches(name, '^[ ]*(?:bul(?:ev(?:ard(?:ul|)|)|)|blvd?|b-d=
ul|bdul|bd)[ .].*', 'i')
from planet_osm_line where highway in ('primary', 'secondary', 'tertiary=
', 'residential', 'trunk');
(656 rows)
Exist=C4=83 c=C3=A2teva chestii care ar trebui clarificarte/corectate:
select regexp_matches(name, '.*[/;,:()!~`]+.*','i') from planet_osm_line =
where highway in
('primary', 'secondary', 'tertiary', 'residential', 'trunk');
(159 rows)
select regexp_matches(name, '^.+[,
](?:pia[=C8=9Bt=C5=A3]a|cal(?:ea|)|int(?:r(?:area|)|)|al(?:e(?:ea?|)|)|bu=
l(?:ev(?:ard(?:ul|)|)|)|blvd?|b-dul|bdul|bd|[s=C8=99=C8=98]os(?:|ea(?:|ua=
))|(?:splai(?:|[a-z]*)))[
]*$','i') from planet_osm_line where highway in ('primary', 'secondary', =
'tertiary', 'residential',
'trunk');
regexp_matches
-------------------------------
{"Strada Eremia Piata"}
{"Str. Apeductul Calea"}
{"I.C. Bratianu, Bulevardul"}
{"Tomis, Bulevardul"}
{"I.C. Bratianu, Bulevardul"}
{"Aurel Vlaicu, Bulevardul"}
{"Aurel Vlaicu, Bulevardul"}
{"Aurel Vlaicu, Bulevardul"}
{"Mamaia, Bulevardul"}
{"Ferdinand, bulevardul"}
{"Stejarului, Aleea"}
(11 rows)
Drumurile care sunt de forma "Strada Aleea ..." cu toate formele sale pos=
ibile:
select regexp_matches(name, 'str(?:ada|)[ .](?:ale(?:|ea)[ .].*)','i') fr=
om planet_osm_line where
highway in ('primary', 'secondary', 'tertiary', 'residential', 'trunk');
(2 rows)
Am g=C4=83sit chiar:
"Intrarea Strada Ghercu S. Constantin, Serg."
str-la. Suceava
str-la. Gradinilor
str-la. Miori=C8=9Ba
AleeaEmanuil Gojdu
--=20
Regards,
EddyP
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
Crede-mă, este mult mai greu să adaugi prefixul în mod prgramatic, dacă
nu există, pentru că:
- e pobil ca să fie adăugat la sfârșit,
- e posibil să fie scris greșit
- e posibil să nu trebuiască să fie adăugat (v. bulevard, etc) și trebuie
să știm *toate* acele clasificări
În schimb, ștergerea lui este absolut trivială, mai ales dacă:
- e folosită mereu o aceiași formă
- e mereu poziționată în același loc
Deci, se face unitar, consecvent și sistematic acelasi lucru pentru toate
drumurile.
> care se lucrează la Openstreetmap, nu va fi prea ușor de implementat
> așa ceva - se poate vedea mai sus ce a facut Eddy doar pentru România,
> dacă avem rabdare să descifrăm diacriticele greșit afișate.
Da, îmi cer scuze pentru chestia aia. Nu înțeleg de ce a luat-o în bot
thunderbird-ul așa grav dar banuiesc că s-a confuzat când i-am dat caracterele
chirilice (la faza cu vecinii).
> Bineințeles că statistica nu e chiar completa, deoarece pentru Arad si
> Sighișoara eu personal am trecut pe hartă o mulțime de străzi
> unclassified si unsurfaced, de care nu s-a ținut cont. Oricum nu e
> important.
Da, mi-am dat seama de unclassified și unsurfaced abia mai târziu, dar am
considerat că în localități, de regulă, nu există străzi nemarcate (unclassfied)
sau nepavate? (unsurfaced) care să nu aibă mai degrabă clasificarea resdential.
> Argumente reale pentru a include sau nu prefixul stradă consider că ar
> fi:
> comoditatea - minus pentru prefix - e mai ușor să nu scrii ceva decât
> să scrii
Care vine cu contra-costul uriaș pentru adăugare, dacă cineva vrea acele
particule, mai ales că adăugarea ar fi făcută, foarte probabil de o singură
entitate. (În comparație cu cazul actual în care comodiatea nu suferă nici
minor pur și simplu pentru adăugarea unui cuvânt de la bun început).
> lizibilitatea hărții - minus pentru prefix - multe nume vor fi scrise
> mai mic sau deloc la anumite zoom level daca se include prefixul
Lizibilitatea poate crește ușor dacă particula e mereu prezentă iar aplicațiile,
înainte de randare, maschează sau șterg automat particula.
> consistența - plus pentru prefix - pentru drumuri gen alee/bulevard se
> foloseste prefixul
Consecvența asta vine cu două plusuri și mai mari:
- face posibilă prelucrarea în mod programatic facil a datelor
- dă un aspect profesional harților generate
> respectarea uzanțelor din alte țari - plus pentru prefix - la o
> verificare prin sondaj a numelor străzilor înspre vest, de regulă se
> folosește sufixul echivalent cu prefixul nostru stradă/alee etc.
Asta mi se pare a fi un argument foarte important.
> Dacă e însă să folosim prefixul strada, nu vad de ce trebuie scris cu
> literă mare, adică "Strada". Din cate am invațat la scoala,
Câteva motive:
- e un nume, iar prima literă a numelui este mereu mare
- practică deja instaurată (pentru România)
- așa apare de cele mai multe ori pe tablițele din teren
> substantivele in limba română se scriu cu literă mică. În plus, chiar
> dacă nu sțiu ungurește, am impresia că ungurii, cel puțin pentru
> Budapesta, au folosit litera mica (la ei e sufix).
Asta nu e relevant, e altă gramatică, alte reguli. Dacă ar fi să ne luăm
după asemenea exemple, am putea să ne uităm la Germania și la țarile
vorbitoare de engleză pentru a vedea că ei mereu folosesc literă mare, dar
asta nu înseamnă nimic.
Cu toate astea, nu am nimic împotrivă ca să ne oprim asupra convenției de
a scrie cu literă mică, dacă asta dorim. Ce mă tem e că vom ajunge ulterior
la concluzia că a fost o idee proastă din pricina oamenilor care adaugă
străzile cu grafia de pe tablițe, deci cu literă mare.
> Mai am o nelamurire. La ce folosește " frecventul nume 'tbd' "? După
Da, despre asta am vrut și eu să deschid discuția, consider că această
practică duce la mai multe dezavantaje decât avantaje.
Singurul avantaj îmi pare a fi posibilitatea de a gasi ușor într-o bază
de date străzile care se știe că au nume, dar acest nume nu e încă precizat.
> câte îmi dau e seama, singura utilitate e eliminarea avertismentelor
> la validarea porțiunii de hartă analizate. Dar nu vad de ce e acesta
> un lucru de dorit. Dacă o stradă are un nume, acesta ar trebui aflat
> și trecut în hartă. Dacă nu se știe numele străzilor, nu văd de ce să
> fie o problemă că validatorul dă avertismente. Pentru cine vrea să
> adauge numele străzilor care nu sunt încă în baza de date, există
> layerul "noname", care colorează frumos străzile fără nume.
Pentru străzi care chiar *nu* au nume (am multe cazuri între blocuri și
am banuiala că la fel e cazul la câteva străzi în Craiova[1]) și asta
e pur și simplu adăugarea taglui "noname" cu valoarea "yes".
Legat de numerotare[1], consider că e o idee proastă deoarece duce la
confzii legate de numerele de pe stradă.
[1] am observat o altă metodă adăugarea unui număr la stradă:
Aleea Plopului 1, Aleea Plopului 2, Aleea Plopului 3
--
Regards,
EddyP
=============================================
Heh, chiar planificasem să trimit un mail de genul ăsta chiar azi.
> Folosim "Strada Alxandru Vlahuță" sau "Alexandru Vlahuță"?
>
> Ultima situatie in favoarea folosirii particulei "Strada":
> Eddy P DA
> Guenter NU
> AlexMap NU
> Cristi D DA
> Max DA
> Ciprian T DA
Deci înclinăm ușor spre da.
Am instalat pe sistemul meu unealta aia de care am vorbit anterior[1], cea de la
http://wiki.openstreetmap.org/wiki/Automated_Edits/Software
Și deja am reușit să definesc reguli de substituție pentru a ajunge la
forma unificată (nu, încă n-am rulat scriptul care chiar face
modificările). Am senzația că ar mai trebui să am o plasă de siguranță
în cazul în care ceva nu merge exact cum trebuie, dar având în vedere
că întâi se produce o listă care poate fi modificată manual și apoi
aplicată, cred că va fi bine.
Din nou m-am lovit de faptul că unele drumuri nu au deloc nume, dar
odată ce scapăm de zgomot (nume în loc de ref, nume scris aiurea etc.)
am senzația că va fi mai ușor.
[1] http://groups.google.com/group/ro-osm/browse_thread/thread/80de29a05ecb6389#
Am făcut. Am adăugat și alt_name. Apropos, pagina nostră e destul de
în urmă față de varianta în Engleză.
Probabil facilitatea cu care poti obține o listă de elemnte despre
care se știe că trebuie să aibă nume, dar nu au privind la o bază de
date. Sunt elemente pentru care nu are sens să existe eticheta "name",
deci a căuta după elemente fără nume ar fi căutarea acului în carul cu
fân.