Manuale Programma NoAu 3.4 – Normalizzatore Automatico
Edizione Maggio 2004
Indice del Manuale
Avvertenze
Installazione del programma
Generalità
Cosa fa il programma
Cosa viene normalizzato
Setup del programma
Output del programma
Test del programma
Come preparare il file di input
Velocità di esecuzione
Aggiornamento del database
Regole generali per l’aggiornamento
Se cambiano tutti i Cap e diventano a 6 o più cifre?
Differenze tra versione Demo e versione Ufficiale
Avvertenze
Lo scopo del programma è quello di migliorare la qualità del database di ingresso cercando di
sostituire a dati potenzialmente errati gli equivalenti dati corretti. Il programma cerca di assegnare il
corretto COMUNE, CAP, PROVINCIA e VIA (le vie solo per le città capificate a zona) elaborando
i dati presenti nel database di ingresso dell’utente (input.txt) ed utilizzando i dati del proprio
database. Il database interno dei comuni e delle vie è quello ufficiale delle poste italiane aggiornato
a marzo 2004. Non è possibile escludere che, in alcuni casi, il programma possa assegnare dati non
corretti ad indirizzi che, interpretati diversamente, possano risultare formalmente corretti.
La normalizzazione automatica degli indirizzi non può essere considerata una scienza esatta,
nessuna responsabilità potrà essere addebitata all’autore del programma per danni a cose o persone
derivanti dalla sostituzione di dati operata dal presente software. Le statistiche effettuate dall’autore
del software portano a ritenere che la possibilità di errore (in assenza del flag ‘Dividi la via in
singole parole’) possa essere inferiore a 1/1.000.000. Con il flag ‘Dividi la via in singole parole’
attivo tale possibilità potrebbe aumentare, ma a questo corrisponde un netto calo dello scarto totale.
Prima della vendita il programma viene fornito in una versione demo che opera sui dati nella stessa
identica modalità della versione ufficiale, l’utente ha la possibilità di valutare senza alcun limite
temporale e/o operativo i risultati raggiungibili con l’uso del presente software. In alternativa alla
versione demo viene offerto un servizio gratuito di normalizzazione , per fare in modo che il cliente
acquisti un prodotto del quale ha potuto verificare la qualità.
Installazione del programma
Posizionare il file Noau_inst.exe sul disco C (o altro direttorio e disco a piacere)
Cliccare e dare il comando Unzip
Cliccare e dare il comando Close
Il programma crea la directory C:\normalizzatore e vi copia i file del database interno.
Per lanciare il programma cliccare su C:\normalizzatore\Noau.exe
Per installare il programma in un altro direttorio (o disco) cambiare il path di destinazione dei file
dopo aver lanciato il file Noau_inst.exe nel box sotto la scritta ‘Unzip to folder’
Generalità
Per la struttura del file di input si consiglia di aprire ed osservare il file di input installato dal
programma (C:\normalizzatore\input.txt) all’atto dell’intallazione.
Il programma è un normalizzatore automatico di Comune, Cap, Provincia, Via e Civico
Il programma opera su un file .txt (file di ingresso da normalizzare) a struttura fissa e definita che
contiene almeno 4 campi, questi devono contenere : Via con civico – Localita intesa come Comune
– Provincia – Cap.
I nomi dei campi che devono comparire nel primo record del file C:\normalizzatore\input.txt sono
VIA (o INDIRIZZO) – COMUNE (o LOCALITA) – PROVINCIA (o PRO) – CAP
Non ha importanza l’ordine con cui questi campi sono presenti. In caso di presenza nel datasase di
input del campo ‘VIA’ e del campo ‘INDIRIZZO’ viene considerato unicamente il contenuto del
campo ‘VIA’, lo stesso dicasi per le coppie COMUNE (LOCALITA) e PROVINCIA (PRO).
Nel file input.txt possono essere presenti altri campi.
(Nel campo VIA deve essere inserita la Via seguita o preceduta dal civico)
I dati devono fare riferimento a località italiane.
La Via potrà contenere caratteri troncati e numeri :
-
V. Mazzini, 24
V.le Garibaldi, 102 A
Corso A. De Gasperi 27 Bis
Etc etc
La località dovrà contenere solo il comune, anche troncato :
-
Cologno M.
Sesto S. G.
Milano
Abbiategrasso
La Provincia dovrà contenere due lettere maiuscole che individuano la provincia di appartenenza
del comune (eventualmente tra parentesi)
-
MI
PA
(RM)
NB
Per San Marino la provincia sarà SM se errata o non presente. Gli indirizzi di SAN MARINO con
provincia RN vengono restituiti con RN come provincia normalizzata.
Per la Città del Vaticano la provincia è sempre RM
Il Cap dovrà essere formato da una sequenza continua di 5 cifre.
Tutti i campi ad eccezione del comune (COMUNE) potranno essere vuoti.
Cosa fa il programma
Compito del programma è, partendo dal comune, individuare cap mancanti o errati, trovare i cap
corretti ed associare a questi la provincia ed il comune normalizzati. Nel caso di comuni o province
con un unico cap il programma cercherà di interpretare i campi località e provincia e di associarli ad
un cap presente in un database interno. Il cap così individuato andrà ad aggiungersi a quello
contenuto nel database di partenza, anche se il database di partenza ne fosse sprovvisto.
Nel caso di città con più cap (MI, RM, AN … ) il programma utizzerà anche il campo ‘VIA’ per
effettuare la sostituzione, se necessario utilizzerà il numero civico presente nel campo ‘VIA’.
Il cap così individuato andrà ad aggiungersi a quello contenuto nel database di partenza, anche se il
database di partenza ne fosse sprovvisto.
Cosa viene normalizzato
I campi normalizzati VIA – COMUNE – PROVINCIA – CAP non vengono sostituiti nel database
ma vengono aggiunti a questo.
La VIA viene normalizzata solo per le 28 citta italiane capificate per via, per le altre citta ed i
comuni piccoli la via non viene normalizzata ma viene filtrata, scritta in maiuscolo e resa in parte
omogenea dal programma.
Setup del programma
L’utilizzatore può intervenire nella modalità di normalizzazione agendo sui punti del setup presenti
nella form principale del programma.
I primi 6 punti sono abilitati per default ma possono essere disabilitati al lancio del programma.
I vari setup, che funzionano sia nell’utilizzo su singolo indirizzo che da file, agiscono nel modo
seguente :
Genera Colonne Modifiche Effettuate
Aggiunge due colonne aggiuntive al file di output (outok.txt) che contengono informazioni sulla
normalizzazione effettuata sul singolo record.
Il Flag ‘Via dubbia’ viene aggiunto solo se il programma ha dovuto utilizzare la routine ‘Dividi la
Via in singole parole’ per normalizzare l’indirizzo. Attenzione : anche se il flag ‘Dividi la Via in
singole parole’ del setup è attivo, non è detto che l’indirizzo venga normalizzato con tale funzione;
la presenza dell’indicazione ‘Via dubbia’ nell’ultima colonna del fileok non indica che la via sia
sbagliata, ma solo che quella Via è stata normalizzata dalla routine ‘Dividi la Via in singole parole’
che porta a minimizzare gli scarti ma può introdurre errori nella normalizzazione.
Possibili Province Errate in Ingresso (vedi file)
Se la provincia trovata nel record di ingresso compare tra quelle contenute nel file
C:\normalizzatore\pro\variate.tab il programma tiene conto del fatto che questa provincia possa
essere errata. Serve, ad esempio, per recuperare record di database ‘datati’ dove i comuni in
provincia di Lodi compaiono ancora come provincia di Milano ( e vale per tutte le province inserite
nel file ‘variate.tab’).
Usa il CAP per recupero omonimie o eventuali scarti
Con questa funzione si cerca di recuperare record nei quali il nome del comune (o la via) non
permetta di assegnare un CAP univoco. In questo caso il software si ‘fida’ del CAP presente nei dati
di ingresso e lo usa per normalizzare.
Es. Lido di ostia RM 00121
In assenza di tale funzione il programma da ‘Non trovato’ poiché esistono Lido di Ostia Levante e
Lido di Ostia Ponente che hanno cap differenti, con l’uso del cap il programma riconosce di quale
Lido di Ostia si tratta e normalizza il risultato.
Dividi la Via in Singole Parole
L’utilizzo di questa funzione è molto importante: permette di ridurre gli scarti dovuti a dati di
ingresso di bassa qualità ma al tempo stesso potrebbe introdurre delle normalizzazioni errate.
Con questa funzione attiva l’indirizzo (VIA) viene segmentato in singole parole, queste parole
vengono poi analizzate una per una allo scopo di verificare se esiste un solo unico indirizzo della
città dove compare una sola unica volta la singola parola cercata.
Esempio : cercando ‘Via Agostino Xyzk 15’ nella città di Bari ci aspetteremmo uno scarto; con
questa funzione attiva viene individuata la Via CIASCA CARDINAL AGOSTINO che è l’unica via
in Bari che contiene la parola AGOSTINO, quindi il programma assegna all’indirizzo inserito la via
trovata con questa regola, se la funzione non fosse attiva il risultato sarebbe ‘Non trovato’ (scarto).
Quando il programma utilizza questa funzione per normalizzare la via (ed è attivo il Flag ‘Genera
Colonne Modifiche Effettuate’), viene stampato nell’ultima colonna del fileok il Flag ‘Via dubbia’,
questo indica che la Via è stata ottenuta per similitudine e che, in alcuni casi, potrebbe essere non
corretta.
Controlla subito il nome del Comune
Con questo Flag attivo il programma esegue subito un controllo per cercare il NOME del
COMUNE in tutta Italia senza utilizzare Cap e Provincia, se lo trova assegna all’indirizzo il Cap e
la provincia trovati nel database. L’esecuzione di questa routine rallenta leggermente la velocità
totale di elaborazione per file scritti male, mentre la accelera per file qualitativamente scritti bene.
Riconosci Casella Postale e P. O. Box nelle città multicap
Con questo Flag attivo il programma verifica che, per le città multicap, al posto della VIA sia
presente una casella postale (scritta anche in forma contratta o P. O. Box). In questo caso esegue
due operazioni: normalizza il contenuto del campo VIA con la stringa ‘CASELLA POSTALE’
seguita dalla parte numerica estratta dall’input, poi assegna come CAP normalizzato lo stesso cap
dell’input (forzato a 5 cifre con l’aggiunta di zeri iniziali se necessario).
Scarta sempre se la Via è vuota
Con questo Flag attivo il programma, indipendentemente dal resto del setup e dagli altri dati, scarta
sempre l’indirizzo se il campo VIA non contiene almeno un carattere alfabetico Italiano. Quando
questo Flag non è attivo, la via vuota determina lo scarto dell’indirizzo solo se la città di riferimento
è capificata a vie (Es Milano, Torino etc etc), ossia nei casi in cui è comunque impossibile
assegnare il CAP.
Civico prima della via : 34, Via G. Bruno
Da utilizzarsi quando i dati in ingresso presentano sempre il civico posto prima del nome della via e
seguito da una virgola.
Provincia scritta nel campo del comune
Da utilizzarsi quando nei dati in ingresso la provincia (RM MI TO etc) è scritta nel campo del
COMUNE dopo il nome del comune stesso, anche tra parentesi o con trattino.
Es. Cologno Monzese – MI , Settimo Torinese (TO) , Borgaro [TO]
Attenzione: in questo caso il campo PROVINCIA dovrà essere presente, anche se vuoto.
Output del programma
Nell’utilizzo ‘Normalizza il file di input’, viene generato un file .txt identico a quello di ingresso ma
con aggiunti altri campi, la % di sistemazione garantita sarà maggiore del 95% nel caso in cui i
campi di ingresso risultino scritti senza grossolani errori di ortografia e/o abbreviazioni non
convenzionali.
I campi aggiunti sono
COM NORM – VIA NORM – PRO NORM – CAP NORM – MODIFICHE – FLAG VIA
I campi MODIFICHE e FLAG VIA verranno aggiunti solo nel caso in cui sia attivato il primo flag
nel setup iniziale.
Test del programma
Per effettuare un test è sufficiente introdurre la Via (con o senza numero), il Comune e la Provincia
nei campi specifici della form iniziale.
Premendo il tasto “Test Singolo” il programma cercherà i dati mancanti e visualizzerà al centro
della form i risultati ottenuti. Se i dati di ingresso non sono sufficienti per normalizzare il dato, nella
form centrale appare l’indicazione “Non trovato”
Vi possono essere molti motivi per cui il programma non riesce a normalizzare l’indirizzo :
1) Se non viene introdotta la Provincia ed il comune ha degli omonimi in Italia
ES
VIA :
Via G. Garibaldi 32
COMUNE : Albareto
PRO
CAP
Da come esito : Non trovato
Motivo : Albareto esiste in due province italiane (PR e MO), se non diamo la provincia e/o il cap il
programma non può risolvere in modo univoco.
ES
VIA :
Via G. Garibaldi 32
COMUNE : Albareto
PRO :
PR
CAP
Da come esito : 43051 ALBARETO PR
ES
VIA :
Via G. Garibaldi 32
COMUNE : Albareto
PRO :
CAP
43051
Da come esito : 43051 ALBARETO PR
2 Se cerchiamo una via che non esiste in una città capificata per via
ES
VIA :
Via XXXXX YYYYYY 32
COMUNE : Milano
PRO
Mi
CAP
Da come esito : Non trovato
Oppure i dati di ingresso possono essere scritti talmente male da non consentire la convergenza del
programma verso un solo comune ed una sola via per l’indirizzo inserito in ingresso.
Come preparare il file di input
Da qualsiasi programma di gestione di database (FileMaker, Access, Excel, dB4 etc etc) è possibile
esportare i dati in file .txt con l’utilizzo del Tabulatore come delimitatore di campo.
Assicurarsi di aver dato alle 4 colonne fondamentali il nome corretto e di esportare i nomi come
primo record. I dati vanno esportati senza l’uso di quantificatori di testo (si sceglie ‘nulla’ nella
casella corrispondente). Oltre ai 4 campi citati si possono lasciare inalterati tutti gli altri campi
presenti nel database iniziale, questi verranno poi riportati nel file di output.
Velocità di esecuzione
Il programma riesce a normalizzare da 15.000 fino a circa 30.000 record/ora per dati che fanno
riferimento a tutta Italia. Se i dati sono appartenenti ad una sola città capificata per via, il tempo di
elaborazione aumenta molto, ad esempio per dati che si riferiscono alla città di Roma potrebbero
essere necessari anche 6/8 secondi per singolo indirizzo (nel caso peggiore e con tutti i flag attivi).
Per aumentare sensibilmente la velocità è importante ordinare i dati del file di ingresso per
COMUNE in modo da evitare il caricamento in memoria di un file diverso per ogni indirizzo da
normalizzare.
Aggiornamento del database
Il database del programma è quello ufficiale delle poste italiane, trattandosi di un programma di
ausilio alla postalizzazione, il database ufficiale delle poste, benchè non esente da difetti, risulta
essere il più idoneo allo scopo. E’ comunque possibile aggiornare il database per adattarlo alle
proprie esigenze. Aggiornare il database significa introdurre dei nuovi dati (o sostituire quelli
presenti) che verranno utilizzati durante l’esecuzione del programma. La modalità di aggiornamento
verrà illustrata con un esempio per ogni caso.
Esempio 1 : aggiunta di un nuovo comune o località
Supponiamo che in provincia di Milano venga istituito un nuovo comune denominato
Rondinella Milanese con Cap 20023
Per aggiornare il database si deve inserire la stringa
MI ->20023-> RONDINELLA MILANESE
( -> rappresenta il carattere tabulatore ‘TAB’)
in Coda al file MI.tab presente nel direttorio C:\normalizzatore\Pro
ed in Coda al file tutti.tab presente nel direttorio C:\normalizzatore\Pro
Esempio 2 : aggiunta di una nuova via di Milano con cap fisso
Supponiamo che in Milano venga istituita la Via Tizio Caio e Sempronio con cap 20154
Per aggiornare il database si deve inserire la riga
MI->20124->TIZIO CAIO E SEMPRONIO->VIA->T->1->10000
( -> rappresenta il carattere tabulatore ‘TAB’)
In Coda al file Milano.tab presente nel direttorio C:\normalizzatore\Citta
Esempio 3 : aggiunta di una nuova via di Milano con cap variabile in funzione del civico
Supponiamo che in Milano venga istituita la Via Tizio Caio e Sempronio con i seguenti CAP
20124 tutti i pari da 2 a 24
20125 tutti i dispari da 1 a 25
20126 tutti i civici oltre il 25
Per aggiornare il database si devono inserire le righe
MI->20124->TIZIO CAIO E SEMPRONIO->VIA->D->1->25
MI->20125->TIZIO CAIO E SEMPRONIO->VIA->P->2->24
MI->20125->TIZIO CAIO E SEMPRONIO->VIA->R->26->10000
->
rappresenta il carattere tabulatore ‘TAB’
In Coda al file Milano.tab presente nel direttorio C:\normalizzatore\Citta
Regole generali per l’aggiornamento
I nomi dei comuni o delle vie vanno scritte sempre per intero senza punti e senza abbreviazioni.
Sono ammessi apostrofi ed accenti, gli apostrofi non devono essere seguiti da caratteri vuoti (blank)
Se cambiano tutti i Cap e diventano a 6 o più cifre?
Il programma puo’ essere aggiornato e continuare a funzionare correttamente, basta sostituire il
nuovo cap a 6 o più cifre in tutti i file presenti nei sottodirettori di installazione.
Come minimizzare gli scarti
Decidere il setup da usare dopo aver analizzato i dati da normalizzare, per ottenere il risultato
migliore potrebbe essere necessario lanciare più volte il programma con setup differenti, agire nel
modo seguente : lanciare con il setup adeguato il programma sul file da normalizzare;
successivamente utilizzare il file di scarto come input per rilanciare il programma con il nuovo
setup (dopo averlo rinominato come input.txt).
Il setup proposto all’avvio dovrebbe essere corretto nella maggioranza dei casi.
Differenze tra versione Demo e versione Ufficiale
La versione Demo del programma funziona in modo identico alla versione ufficiale.
L’unica differenza consiste nel fatto che la Demo introduce casualmente degli asterischi (*) nelle
stringhe dei campi :
VIA NORMALIZZATA
CAP NORMALIZZATO
COMUNE NORMALIZZATO
La presenza degli asterischi permette di valutare ugualmente l’operato del programma senza la
possibilità di un suo utilizzo commerciale.
Nota per gli utilizzatori
Il programma di normalizzazione NoAu viene costantemente aggiornato e migliorato dall’autore.
Gli input per i miglioramenti sono stati forniti dagli utilizzatori che, usandolo frequentemente, sono
le sole persone che possono suggerire upgrade o individuare eventuali bachi del software.
Per definizione non esistono software esenti da difetti, quindi anche questo programma potrebbe
averne, Vi invito a comunicarmi le incongruenze che incontrerete nell’uso di questo software, sarà
mia cura valutare le vs indicazioni e provvedere, se necessario, alla sostituzione del codice.
Il programma viene fornito con l’abilitazione necessaria per funzionare su 3 Personal Computer di
Vs scelta. I PC devono essere appartenenti alla vs azienda o comunque in dotazione a vs personale.
Potete distribuire liberamente i file di installazione del software a scopo dimostrativo, su macchine
non abilitate il proghramma gira sempre in demo mode.
Modifiche introdotte nelle varie Release
Aggiunta routine che gestisce i comuni scritti con il carattere “/” e “\”
Tipo Cernusco S/N – Sesto S/G etc etc
2.5
Effettuato upgrade di 3 routine interne per aumentarne la precisione.
2.6
Sistemato classe problemi tipo S. GIULIANO M. SE 20098
2.7
Velocizzate routine per risolvere S. GIULIANO M. SE 20098
2.8
Aggiunta controllo su campo CAP contenente lettere, Aggiunto controllo per presenza della
virgola nei campi VIA e COMUNE, Aggiunto controllo dei caratteri ‘0’ (zero) inseriti al
posto della ‘O’ (o maiuscola) nel campo COMUNE.
2.9
Migliorata la velocità di esecuzione di alcune routine
3.0
Aggiunto il flag che conta e mostra sullo schermo i record a cui è stato correto il CAP,
aggiunto un controllo sulle vie che contengono la particella ‘DI’ (spec. in Roma). Aggiunto
controllo su Vie con accento (tipo VIA PO’ in ROMA).
3.1). Aggiunto FlagVia con visualizzazione nel fileOk della colonna FlagVia con la dicitura ‘Via
dubbia’ quando il programma utilizza l’utility ‘Dividi la via in singole parole’. Aggiunta la
possibilità di installare il software sotto qualsiasi direttorio. Aggiunto Flag interno per sistemazione
Vie con ‘MONTE ‘ e ‘MONTE’ all’interno. Aggiornato database Città capificate a zone con
l’aggiunta di circa 100 Vie.
3.2) Introdotta la provincia di Pesaro (Pesaro Urbino) con sigla PU, sistemato baco con flag
‘Provincia nel campo del comune’ attivo e provincia assente
3.3) Ottimizzato il funzionamento delle routine per la gestione dei nomi dei comuni scritti con
lettere puntate (Gardone V. T.) – Eliminato possibile errore quando lunghezza campo città = 1
3.3) Aggiunto riconoscimento Q.re come Quartiere in data 3 Feb 2004
3.3) Eliminato possibile errore quando lunghezza campo cap = 1 in data 3 Feb 2004
3.3) Ottimizzata la gestione delle vie con parole troncate e seguite da punto (VIA G.
D’ANNUNZIO a Pescara), eliminati i caratteri ‘doppio apice’ dai campi che vengono elaborati. 5
marzo 2004
3.3) Introdotto controllo che associa alle vie di Venezia che iniziano con C. il toponimo CALLE
invece che CORSO.
3.4) Migliorato il controllo che riconosce le estensioni del civico. Introdotto riconoscimento della
Casella Postale (o P. O. Box) al posto della VIA per le città multicap, in questo caso il programma
porta in output il CAP presente nel file di ingresso forzandolo a 5 cifre (se necessario) mediante
l’aggiunta di zeri iniziali. Maggio 2004
2.4