[AIB]AIB-WEB. Contributi


La norma ANSI Z39.50 sul "search and retrieve"

Relazione sulla riunione ISO TC46/SC4/WG4 (Oslo, 9-10 marzo 1994)

di Marco Melloni


Relazione per CSELT, Pianificazione e qualità, Documentazione e informazione (PQ/D-94-009); già disponibile da maggio 1994 fra i "Documenti AIB-CUR".


Sommario

1 : Breve storia della normativa "Search and retrieve" e "Interlibrary loan"

2 : Di che cosa parla la ANSI Z39.50 versione 3

Conclusioni


1 : Breve storia della normativa "Search and retrieve" e "Interlibrary loan"

Da tempo l'ISO sta cercando di varare in ambito OSI (Open System Interconnection) delle norme su interlibrary loan (ILL) e search and retrieve (SR); le prime DIS (Draft International Standard) risalgono al 1988; esse sono contrassegnate dai numeri 10160 e 10161 che definiscono per il prestito interbibliotecario le funzioni (service definition) e le procedure informatiche (protocol specification) mentre altrettanto fanno le norme 10162 e 10163 per la ricerca ed il ritrovamento di informazioni.

Da allora, mentre le norme seguivano il loro corso, molte cose sono cambiate:

  • l'interazione tra utenti e computer (host) è diventata una interazione tra utenti di personal computer, rete trasmissiva e host;
  • la filosofia del client/server ha soppiantato quella del terminale remoto collegato allo host;
  • la rete Internet e il protocollo TCP/IP, che supportano questa concezione, hanno sopravanzato OSI ed insidiano le reti nazionali;
  • il concetto di prestito interbibliotecario sta lentamente perdendo di importanza a favore della fornitura di copie, prima cartacee poi elettroniche.

    Parallelamente all'ISO, la statunitense ANSI ha elaborato la sua norma Z39.50, "Information retrieval service and protocol". Questa, avviata nel 1987 su iniziativa canadese per permettere il colloquio tra computer (program to program), non tra terminali, nel '92 ha avuto la sua seconda versione; simile, ma non uguale, alla ISO/SR e molto differente dalla versione 1. Alcuni implementatori, come ALEPH, GEAC e WAIS (Wide Area Information Service) di Internet, dicono di aver adottato nel loro sistema di IR la Z39.50 (non si sa in quale versione).

    Nell'ultima riunione di Oslo dell'ISO TC46, il gruppo ZIG (Z39.50 Implementors Group) ha presentato la versione 3 della norma ANSI, che introduce ulteriori variazioni ed ingloba in sé alcune funzioni dell'altra norma ISO, quella sull'ILL. Nella riunione, nonostante un vivace dibattito, si è quasi deciso di abbandonare l'attuale ISO/SR ed i suoi 7 emendamenti ed accogliere "in toto" la ANSI Z39.50, che sarà fatta circolare solo più per l'approvazione finale, senza cioè la possibilità di proporre ulteriori emendamenti. Un punto rimasto insoluto è stata l'adozione o meno della norma ISO 10646 sul set di caratteri usabili.


    2 : Di che cosa parla la ANSI Z39.50 versione 3

    La norma dà indicazioni dei servizi ed del protocollo per il recupero di informazioni in un sistema client/server (program to program). Oltre alle funzionalità a disposizione dell'utente, la norma descrive anche un linguaggio abbastanza semplice per l'interrogazione: il Reverse Polish Notation (RPN). Nella versione 3 della norma sono descritti i seguenti 11 servizi qui brevemente spiegati.
     

    2.1, 2.11 : Inizializzazione e conclusione (initialization e termination)

    Questi due servizi servono a stabilire e concludere una connessione tra utente detto origine o anche client ed il fornitore dell'informazione detto target o server. Nell'inizializzazione origine e target si scambiano un certo numero di informazioni sulla loro identità e caratteristiche come: la lunghezza dei messaggi, le opzioni desiderate o fornite e i parametri delle medesime.
     

    2.2 : Interrogazione (search)

    I linguaggi di interrogazione ammessi dalla norma sono 3:

  • un qualunque linguaggio concordato tra origine e target,
  • RPN (Reverse Polish Notation) descritto nella norma stessa,
  • CCL (Common Command Language) (ISO 8777). In più vi è una variante dell'RPN che prevede tra gli operatori, oltre ai normali AND, OR, NOT, anche un operatore di prossimità tra le parole, cioè si può chiedere che le due parole siano più o meno vicine. La risposta del target conterrà il nome del set preparato ed il numero dei record trovati.
     

    2.3 : Ritrovamento, cioè presentazione delle risposte (retrieve)

    Avvenuta la ricerca e saputo quali e quante sono le risposte, l'origine può decidere quante risposte chiedere che gli siano inviate e con quale formato (quali campi) o come suddividerle in segmenti adatti al proprio sistema. Tra le altre opzioni viene qui specificata la sintassi dei record che devono venire trasferiti. Quindi l'implementazione di questo servizio è legata alla trascodifica dei vari formati MARC.
     

    2.4 : Cancellazione dei risultati (result set delete)

    Come il servizio search crea dei set, cosi è necessario un comando per cancellarli.
     

    2.5 : Esame di un data base (browse)

    Per ora di questo servizio è stato specificato soltanto l'esame di un elenco: servizio scan. Prima di impostare una ricerca o se la ricerca ha dato esito nullo, può essere utile esaminare o scorrere la lista delle parole contenute nella base dati partendo da una parola a noi nota.
     

    2.6 : Ordinamento (sort)

    Il servizio di sort serve ad ordinare un set di risposte su un parametro (es. autore o anno) per permettere una più facile consultazione o limitare la trasmissione dei dati.
     

    2.7 : Controllo dell'accesso (access control)

    Sovente un server ha molte basi dati delle quali alcune possono richiedere una password per permettere l'accesso. Questa funzione viene svolta dal servizio di controllo dagli accessi, che può anche crittografare dei risultati.
     

    2.8 : Controllo delle risorse (accounting, resource control)

    Questa funzione riguarda i sistemi che comportano una qualche forma di pagamento o addebito del servizio; esso permette al target di avvisare l'utente sull'uso o esaurimento dei fondi concordati per le ricerche di informazioni.
     

    2.9 : Caratteristiche del sistema host (explain)

    Come si capisce da queste brevi note la norma permette notevoli diversità tra le sue implementazioni su vari server. Un utente quindi deve poter sapere le caratteristiche del sistema al quale vuole collegarsi. Alcune informazioni che possono essere fornite con questo servizio sono:
  • il numero, il tipo, il nome e il contenuto dei database presenti,
  • le modalità di interrogazione,
  • il costo e le eventuali limitazioni all'accesso,
  • eventuali limiti nelle risposte (numero massimo di record),
  • formati dei dati ottenibili,
  • composizione dei record,
  • possibilità di interrompere e riprendere una ricerca,
  • conservare risultati o strategia di ricerca,
  • persone di riferimento,
  • eventuali servizi aggiuntivi.
     

    2.10 : Servizi aggiuntivi (extended services)

    Innovazione della Z39.50 versione 3 sono i servizi aggiuntivi come modalità standardizzata per futuri ampliamenti delle funzionalità. I servizi aggiuntivi fin qui previsti sono:
  • salvataggio di un set di dati (in quasi tutti i sistemi i set vengono cancellati alla fine di una sessione),
  • salvataggio di una strategia di ricerca,
  • richiesta di prestito o copia di un documento (funzione ILL),
  • creazione di un formato per esportare dati,
  • richiesta di invio di un rendiconto delle spese fatte.


    Conclusioni

    La norma ISO/SR e la Z39.50, partite nei lontani anni '80 con pochi, semplici e fondamentali comandi per le ricerche di informazioni sui primi sistemi client/server, si sono di nuovo arricchite di molti servizi già presenti sui normali sistemi on-line e sono quindi nuovamente molto complesse. Certamente poter concludere una ricerca con l'ordine ed il pagamento del documento trovato è utilissimo. Ciò può avvenire solo con notevoli complessità implementative.


    Copyright AIB 2001-02-09, ultimo aggiornamento 2001-02-09, testo di Marco Melloni, a cura di Eugenio Gatto e Claudio Gnoli.
    <http://www.aib.it/aib/contr/melloni2.htm>
    Homepage AIB-WEB | Contributi