[Talk-ro] [RFC] Detecție erori în codurile poștale

Strainu strainu10 at gmail.com
Sun Nov 17 21:22:34 UTC 2013


Am terminat de verificat Bucureștiul. Am observat că o parte din erori
sunt în datele de la poștă, deci nu le luați de bune - verificați
numele străzilor la primărie sau alte părți.

Câteva observații despre numere: sunt prezentate sub forma [2, 4, 6] -
adică o listă de numere (echivalentul lui 2-6). Dacă lista e lungă de 100
de elemente, înseamnă că în datele de la poștă codul e până la
sfârșitul străzii (e.g. 2-T). Pentru ca scriptul să nu dea eroare, trebuie
ca fiecare din numerele de pe OSM să fie în lista de la poștă.
E interesant că în unele cazuri nu se întâmplă asta
complet - de exemplu în cazul hotelului Radisson Blu. Astea sunt însă
situații rare, în general sunt trecute codurile corespunzătoare părții
celeilalte a străzii.

Mâine trec la restul României.

Strainu


În data de 15 noiembrie 2013, 14:06, Strainu <strainu10 la gmail.com> a scris:
> Când o să termin de scris codul o să încerc și să-l fac să ruleze
> constant. Până atunci, e updatată când am ceva nou implementat.
>
> Strainu
>
> În data de 15 noiembrie 2013, 12:44, Filip Chirita Rares Cristian
> <chirita.rares la gmail.com> a scris:
>> Lista e updatata constant? Momentan m-am uitat la
>> http://www.openstreetmap.org/browse/way/245844791 care are deja addr:city
>> pus. Daca nu e updatata constant, nu inseamna ca eventual o sa devina foarte
>> confuz care sunt gata si care nu?
>>
>> Rares
>>
>>
>> 2013/11/13 Strainu <strainu10 la gmail.com>
>>>
>>> În data de 13 noiembrie 2013, 02:12, Filip Chirita Rares Cristian
>>> <chirita.rares la gmail.com> a scris:
>>> > Salut,
>>> >
>>> > Pot sa te rog sa ne dai si un exemplu de corectat? Poate mintea mea nu
>>> > merge
>>> > calumea momentan, dar nu imi dau seama de unde sa incep. Sa zicem pentru
>>> > nodul asta: http://www.openstreetmap.org/browse/node/769289252 ce pot sa
>>> > fac? Sa ma duc si sa pun addr:in_city = oras?
>>> >
>>> > Rares
>>>
>>> Mai trimisesem un mail de dimineață, dar s-a pierdut. Da, în principiu
>>> trebuie adăugate datele lipsă, is_in:city sau addr:city. Uite câte un
>>> exemplu pentru fiecare tip de eroare:
>>>
>>> E1: http://www.openstreetmap.org/browse/changeset/18875399
>>> E2, W3: http://www.openstreetmap.org/browse/changeset/18875478
>>> W4: http://www.openstreetmap.org/browse/changeset/18875518 (aici era
>>> numărul trecut la cod)
>>> E4: http://www.openstreetmap.org/browse/node/1109599781
>>>
>>> Sunt și unele pentru care nu se poate/nu e evident să corectezi, de
>>> exemplu: http://openstreetmap.org/browse/node/610916914 Trebuie
>>> analizat de la caz la caz.
>>>
>>> Strainu
>>>
>>> >
>>> >
>>> > 2013/11/13 Strainu <strainu10 la gmail.com>
>>> >>
>>> >> Update: Am terminat partea de scanare a codurilor din OSM și am pus
>>> >> niște rezultate parțiale (scanare doar pentru addr:postcode pe noduri)
>>> >> la https://wiki.openstreetmap.org/wiki/Romanian_Postal_Codes
>>> >>
>>> >> Încă nu fac verificări cu datele de la poștă, sunt doar erori din OSM.
>>> >> De notat că am modificat un pic codurile de eroare pentru o mai bună
>>> >> consecvență în notație:
>>> >>             "E1": u"Nu pot extrage orașul din datele OSM",
>>> >>             "E2": u"Nu pot extrage strada din datele OSM",
>>> >>             "W3": u"Nu pot extrage numărul din datele OSM",
>>> >>             "W4": u"Codul poștal e invalid, conține mai puțin de 6
>>> >> cifre",
>>> >>             "E4": u"Codul poștal e invalid (conține altceva decât 6
>>> >> cifre)",
>>> >>             "E5": u"Nu găsesc codul poștal în datele de la
>>> >> date.gov.ro",
>>> >>             "W6": u"Există greșeli în spellingul orașului",
>>> >>             "E6": u"Orașul nu corespunde între OSM și date.gov.ro",
>>> >>             "W7": u"Sunt greșeli în spellingul străzii",
>>> >>             "E7": u"Strada nu corespunde între OSM și date.gov.ro",
>>> >>             "E8": u"Numărul/blocul nu corespund între OSM și
>>> >> date.gov.ro",
>>> >>
>>> >> Mi-au atras atenția câteva chestii:
>>> >> * Sunt foarte multe erori E1, ceea ce înseamnă că nu se practică
>>> >> punerea orașului în adresă. Știu că cineva a mai întrebat pe listă
>>> >> dacă e chiar necesar și v-am spus atunci că e nevoie pentru căutări
>>> >> după o anumită cheie. Uite că am dat chiar peste o asemenea situație
>>> >> :) Poate la un moment dat voi face o căutare în zonă ca să detectez
>>> >> orașul, dar deocamdată codurile respective nu vor fi verificare.
>>> >> * Sunt câteva coduri poștale puse de Michael pe noduri din way-uri cu
>>> >> numere cu valoarea <unterschiedlich> (<diferite>, dacă nu mă înșală
>>> >> traducerea automată). Michael, le pui manual sau le pune vreo unealtă?
>>> >> Dacă sunt manuale, care e rolul lor? Un nod reprezintă un număr, deci
>>> >> ar trebui să aibă un singur cod, nu?
>>> >> * Ce alte câmpuri/informații ar mai fi util să pun?
>>> >>
>>> >> Spor la corectat :)
>>> >>
>>> >> Strainu
>>> >>
>>> >> În data de 11 noiembrie 2013, 13:24, Strainu <strainu10 la gmail.com> a
>>> >> scris:
>>> >> > Salut,
>>> >> >
>>> >> > Ca primă fază a importului codurilor poștale de la date.gov.ro, aș
>>> >> > vrea să generăm o listă cu erori. Mai jos voi descrie procedura pe
>>> >> > care vreau să o urmez, atât pentru a primi feedback, cât și pentru a
>>> >> > o
>>> >> > avea scrisă undeva.
>>> >> >
>>> >> > 1. Extrag toate nodurile și căile cu coduri poștale și încerc să
>>> >> > extrag orașul, strada și numărul; dacă se poate, extrag și numele
>>> >> > blocului. În cazul numerelor de casă  care nu sunt formate doar din
>>> >> > cifre, iau primul număr din text dacă începe de la caracterul 0
>>> >> > (adică
>>> >> > "1A" și "1BIS" sunt "1", dar "A1" e eroare)
>>> >> >  - pentru noduri folosesc "is_in:city" sau ""addr:city",
>>> >> > "addr:street", respectiv "addr:housenumber"
>>> >> >  - pentru căi folosesc "is_in:city", "name" sau "addr:street",
>>> >> > respectiv "addr:housenumber" (dacă avem "addr:street")
>>> >> >  - pentru coduri poștale folosesc "postal_code" sau "addr:postcode"
>>> >> >
>>> >> > 2. Pentru fiecare cod poștal, identific toate intrările din lista de
>>> >> > la date.gov.ro și pentru fiecare dintre ele încerc să fac matching
>>> >> > pe:
>>> >> >  a. oraș; dacă reușesc, merg la b.; dacă nu reușesc, eroare E6.
>>> >> >  b. stradă; dacă reușesc, merg la c.; dacă nu reușesc, eroare E8.
>>> >> >  c. număr; dacă reușesc, succes; dacă nu reușesc, merg la d.
>>> >> >  d. numele blocului; dacă reușesc, succes; dacă nu reușesc, eroare
>>> >> > E10.
>>> >> >
>>> >> > Din descriere, complexitatea ar fi pătratică; practic, se poate
>>> >> > optimiza mult aici.
>>> >> >
>>> >> > Tipurile de erori aruncate ar fi (E - eroare care nu poate fi
>>> >> > evitată,
>>> >> > W - eroare care poate fi evitată):
>>> >> > E1. Nu pot extrage orașul din datele OSM
>>> >> > E2. Nu pot extrage strada din datele OSM
>>> >> > W3. Nu pot extrage numărul din datele OSM - asta e OK pentru străzi,
>>> >> > iar pentru restul căilor și nodurilor pot verifica că nu mai există
>>> >> > un
>>> >> > alt cod pe strada respectivă
>>> >> > W4. Codul poștal e invalid, conține 5 cifre: încerc să completez cu 0
>>> >> > și verific dacă dau în E5
>>> >> > E4. Codul poștal e invalid (conține altceva decât 6 cifre);
>>> >> > E5. Nu găsesc codul poștal în datele de la date.gov.ro
>>> >> > E6. Orașul nu corespunde între OSM și date.gov.ro
>>> >> > W7. Sunt greșeli în spelling-ul orașului (de exemplu diacritice
>>> >> > incorecte sau lipsă)
>>> >> > E8. Strada nu corespunde între OSM și date.gov.ro
>>> >> > W9. Sunt greșeli în spelling-ul străzii (de exemplu diacritice
>>> >> > incorecte sau lipsă sau tip de stradă diferit)
>>> >> > E10. Numărul/blocul nu corespund între OSM și date.gov.ro
>>> >> >
>>> >> >
>>> >> > Întrebări deschise:
>>> >> > I1. Mai sunt și alte moduri (chei) de a extrage informațiile din
>>> >> > datele
>>> >> > OSM?
>>> >> > I2. La E1, merită să fac o căutare după limita administrativă care
>>> >> > conține coordonatele respective înainte de a decreta eroare?
>>> >> > I3. La W3, dacă avem mai multe segmente cu coduri diferite, e
>>> >> > acceptabil ca fiecare bucată de stradă să aibă alt cod?
>>> >> >
>>> >> > Păreri, opinii?
>>> >> >     Strainu
>>> >>
>>> >> _______________________________________________
>>> >> Talk-ro mailing list
>>> >> Talk-ro la openstreetmap.org
>>> >> https://lists.openstreetmap.org/listinfo/talk-ro
>>> >
>>> >
>>> >
>>> >
>>> > --
>>> > Life is not the amount of times you breathe, is the moments that take
>>> > your
>>> > breath away.
>>> >
>>> > To all things comes an end. And to all things comes a beginning.
>>> >
>>> > Cred in inspirat, nu in expirat. in vise, nu in somn. In trait, nu in
>>> > existat.
>>> >
>>> > _______________________________________________
>>> > Talk-ro mailing list
>>> > Talk-ro la openstreetmap.org
>>> > https://lists.openstreetmap.org/listinfo/talk-ro
>>> >
>>>
>>> _______________________________________________
>>> Talk-ro mailing list
>>> Talk-ro la openstreetmap.org
>>> https://lists.openstreetmap.org/listinfo/talk-ro
>>
>>
>>
>>
>> --
>> Life is not the amount of times you breathe, is the moments that take your
>> breath away.
>>
>> To all things comes an end. And to all things comes a beginning.
>>
>> Cred in inspirat, nu in expirat. in vise, nu in somn. In trait, nu in
>> existat.
>>
>> _______________________________________________
>> Talk-ro mailing list
>> Talk-ro la openstreetmap.org
>> https://lists.openstreetmap.org/listinfo/talk-ro
>>



More information about the Talk-ro mailing list