Usare SIGECweb su macOS o GNU/Linux

SIGECweb è la piattaforma del Sistema informativo generale del catalogo accessibile via web.

Tramite SIGECweb tutti gli utenti abilitati (sia interni al Ministero, sia esterni) possono accedere al patrimonio informativo delle schede di catalogo per effettuare nuove catalogazioni, digitalizzazioni delle schede cartacee esistenti o campagne di revisione delle schede già inserite in banca dati, nonché ricerche estese. Si tratta di uno strumento fondamentale per la tutela del patrimonio culturale italiano.

Da alcuni anni, per una serie di problemi tecnici, SIGECweb è accessibile solo tramite una specifica versione del browser Firefox, la 45, che l’Istituto Centrale per il Catalogo e la Documentazione (ICCD) mette a disposizione tramite il proprio sito. In pratica questa versione personalizzata non sostituisce il browser esistente ma viene installata esclusivamente per l’uso del SIGECweb.

Il file di installazione fornito è disponibile solo per sistemi Windows, e una volta installato crea un nuovo profilo utente separato da quello principale (non troveremo la cronologia dei siti visitati, le password salvate, i segnalibri, le opzioni etc).

Se abbiamo esigenza di usare SIGECweb da macOS o GNU/Linux, è possibile comunque seguire attentamente i suggerimenti riportati nell’articolo Install an older version of Firefox e scaricare la stessa versione 45 per il nostro sistema operativo dall’archivio ufficiale di Mozilla:

La versione per GNU/Linux è direttamente funzionante una volta estratti i file dall’archivio compresso. È tuttavia necessario creare un diverso profilo utente, analogamente alla versione predisposta da ICCD. In questo profilo utente sarà anche salvata l’opzione di disattivare gli aggiornamenti, che dobbiamo limitare al solo Firefox per SIGECweb.

Il modo più semplice per creare il nuovo profilo utente è eseguire Firefox dal terminale dalla directory dove è stato scaricato:

» ./firefox -P
Schermata dell’archivio con la versione 45.9.0 di Firefox
La finestra di selezione del profilo utente. Da qui, solo la prima volta, dobbiamo creare il nuovo profilo SIGECweb e deselezionare la voce “Utilizza il profilo selezionato senza chiedere all’avvio”.

Una volta creato il profilo utente dedicato, è necessario disattivare gli aggiornamenti automatici, che purtroppo non possiamo installare. Visto che è importantissimo mantenere aggiornata la versione di uso generale, l’uso di due profili separati ci permette di limitare questa disattivazione alla versione “parallela” dedicata a SIGECweb.

Adesso siamo pronti per continuare a usare il normale Firefox (debitamente aggiornato alla versione più recente!) per tutte le nostre attività, riservando la versione 45 a SIGECweb.

Chiudiamo tutte le finestre di Firefox, e poi apriamo nuovamente la versione normale. A questo punto comparirà nuovamente la finestra di selezione del profilo: possiamo riattivare l’utilizzo del profilo utente default senza chiedere all’avvio della versione Firefox normale, mentre useremo il profilo “SIGECweb” in modo dedicato avviando dal terminale.

Ripristinare il profilo di default per la versione aggiornata di Firefox.

Sempre dalla directory dove è stata scaricata la versione 45, possiamo usare questo comando:

» ./firefox -P SIGECweb --no-remote

L’opzione -P indica quale profilo caricare (senza far comparire la finestra di scelta) mentre l’opzione --no-remote permette di eseguire in parallelo entrambe le versioni di Firefox senza che quella dedicata a SIGECweb prenda il sopravvento.

Ora possiamo dedicarci alla catalogazione di beni culturali anche se il nostro sistema operativo non è Windows.

I tracciati ICCD con la shell Unix e Python

Il trasferimento delle schede di catalogo ICCD avviene usando file di testo chiamati tracciati. Può essere utile sapere come trattare questi tracciati con gli strumenti più semplici a disposizione in un ambiente Unix.

L’argomento non è particolarmente eccitante e fortunatamente sembra destinato a diventare presto obsoleto con l’introduzione di un formato XML (peraltro, già obsoleto), ma qualche appunto tecnico può essere utile. I comandi della shell Unix permettono di ricavare informazioni di base e poi possiamo procedere con passaggi più elaborati in Python.

Nel caso di un singolo file di tracciato, per contare il numero di schede contenute possiamo fare riferimento al paragrafo CD, obbligatorio, che introduce ogni scheda:

$ cat tracciato.trc | grep -c -e "^CD:"
1527

La parte principale del comando è l’espressione regolare ^CD: che unita all’opzione -c di grep permette di contare il numero di schede (nel nostro caso, 1527). L’espressione regolare è necessaria per evitare di includere nei risultati anche altre parti del tracciato, inclusi altri campi (ad esempio DSCD), come mostrato nell’esempio successivo:

$ cat tracciato.trc | grep -c "CD:"
2680

Ricaviamo un elenco dei numeri NCTN delle schede, usando un’espressione regolare analoga e il comando cut, indicando lo spazio come carattere delimitatore e selezionando solo il secondo campo:

cat tracciato.trc | grep -e "^NCTN:" | 
cut -d " " -f 2

La lista prodotta dal comando sarà piuttosto lunga ed è meglio salvarla in un file a parte, usando una semplice pipe:

cat tracciato.trc | grep -e "^NCTN:" | cut -d " " -f 2 > nctn.txt

È importante controllare la correttezza dei dati. Secondo la normativa ICCD (sia la vecchia versione 2.00 del 1992, sia la nuova versione 3.00) il campo NCTN deve essere composto da 8 cifre, quindi al numero vero e proprio devono essere aggiunti zeri. In questo modo il numero 13887 diventa nel campo NCTN 00013887 e così via.

Di fatto, dal punto di vista informatico, 00013887 non è un numero intero (che sarebbe invariabilmente memorizzato come 13887) ma una stringa di 8 caratteri in cui i singoli caratteri sono numerici (una considerazione analoga vale, ad esempio, per i CAP). Purtroppo spesso accade che questa prescrizione rimanga disattesa, perché il campo NCTN viene erroneamente interpretato come un campo numerico, ad esempio nella creazione di un database.

Nel caso a cui stavo lavorando nei giorni scorsi effettivamente abbiamo un po’ di tutto: 5 cifre, 7 cifre, 8 cifre.

Nella seconda parte di questo post ci trasferiamo in una sessione IPyhon (in inglese) dove vediamo come elaborare ulteriormente i dati che abbiamo salvato nel file nctn.txt per ottenere un elenco leggibile dei numeri NCTN: prosegui la lettura su nbviewer.

Ricordo infine che una introduzione molto leggibile alla catalogazione ICCD è quella di Diego Gnesi Bartolani, che si può scaricare in PDF dal suo sito web.