Strumenti Utente

Strumenti Sito


liquens:advanced

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisione Revisione precedente
Prossima revisione
Revisione precedente
liquens:advanced [2012/11/27 13:03]
gbonanome [solr]
liquens:advanced [2021/06/11 12:40] (versione attuale)
etiengo
Linea 33: Linea 33:
 ===== Campi di ricerca speciali ===== ===== Campi di ricerca speciali =====
  
-In DNG è possibile passare **campi di ricera direttamente tramite URL**. Osservando ad esempio la **ricerca semplice** si può notare che il campo //tutto testo// viene indicato con %%q=%%+In DNG è possibile passare **campi di ricera direttamente tramite URL**. Osservando ad esempio la **ricerca semplice** si può notare che il campo //tutto testo// viene indicato con **q=**.
  
 <​code>​ <​code>​
Linea 46: Linea 46:
 alla fine dell'​URL,​ dopo il **?** sono presenti uno o più campi di ricerca indicati con la sintassi //nome campo=termine di ricerca//. Nel caso di più termini questi sono concatenati dal simbolo **+**. alla fine dell'​URL,​ dopo il **?** sono presenti uno o più campi di ricerca indicati con la sintassi //nome campo=termine di ricerca//. Nel caso di più termini questi sono concatenati dal simbolo **+**.
  
-In questa struttura non è possibile concatenare campi tramite operatori booleani, infatti facendo una ricerca avanzata è possibile notare che l'​URL ​di ricerca ​è diverso:+In questa struttura non è possibile concatenare ​diversi ​campi di ricerca ​tramite operatori booleani, infatti facendo una ricerca avanzata è possibile notare che l'URL è diverso:
  
 <​code>​ <​code>​
Linea 53: Linea 53:
  
 Preceduti dalla dicitura //​field_n=//​ sono comunque visibili i campi di ricerca a disposizione dell'​utente. Nell'​esempio riportato ci sono i campi //title// e //auhta// che permettono di cercare il campo titolo e autore. Preceduti dalla dicitura //​field_n=//​ sono comunque visibili i campi di ricerca a disposizione dell'​utente. Nell'​esempio riportato ci sono i campi //title// e //auhta// che permettono di cercare il campo titolo e autore.
 +
 +
 +<WRAP tip round>
 +== Elenco dei campi a disposizione ==
 +Di seguito sono presentati solo alcuni dei campi a disposizione,​ a titolo di esempio.\\ ​
 +Per l'​elenco completo dei campi di ricerca si veda la tabella della pagina [[liquens:​codici_e_campi#​campi_di_ricerca|Codici e campi]].
 +</​WRAP>​
 +
  
 ==== bid ==== ==== bid ====
  
 +Questo campo permette di utilizzare per la ricerca il numero identificativo della notizia assegnato dalla sorgente di importazione in Clavis.
 +
 +<​code>​
 +opac/​search/​lst?​bid=UBO2898455
 +</​code>​
 +
 +Nell'​esempio viene usato il codice SBN del titolo "Il cuore delle cose / Natsume Sōseki"​
  
 ==== standard-number ==== ==== standard-number ====
 +
 +Questo campo permette di utilizzare nella ricerca un qualsiasi **numero standard**, quindi anche l'EAN o ISBN, nel formato privo di trattini o spazi.
 +
 +<​code>​
 +opac/​search/​lst?​standard-number=8854500925
 +</​code>​
 +
 +Nell'​esempio viene usato il numero ISBN del titolo "Il cuore delle cose / Natsume Sōseki"​
  
 ==== solr ==== ==== solr ====
  
-Il campo **solr** permette di utilizzare la [[http://​wiki.apache.org/​solr/​SolrQuerySyntax|sintassi Solr]] per ricercare qualsiasi campo indicizzato.+Il campo **solr** permette di utilizzare la [[http://​wiki.apache.org/​solr/​SolrQuerySyntax|sintassi Solr]] per ricercare qualsiasi campo UNIMARC ​indicizzato.
  
 <​code>​ <​code>​
-opac/​search/​lst?​solr=solr=(mrc_d200_sa:​nome+della+rosa) AND (mrc_d210_sc:​Bompiani) AND (mrc_d950_sf:​N ECO)+opac/​search/​lst?​solr=(mrc_d200_sa:​nome+della+rosa) AND (mrc_d210_sc:​bompiani) AND (mrc_d950_sf:​n eco)
 </​code>​ </​code>​
  
-Nell'​esempio qui sopra viene fatta una ricerca nei campi UNIMARC: **200 $a**, **210 $c**, **950 $f**. Come si può notare, in Solr viene mantenuto il riferimento alla struttura ​UNIMARC ​attraverso ​una codifica dei campi del tipo //​mrc_d{codice campo}_s{codice sottocampo}//​ (questo vale per tutti i campi, ad eccezione ​dei campi codificati, ovvero quelli compresi tra il 100 e il 199).+Nell'​esempio qui sopra viene fatta una ricerca nei campi UNIMARC: **200 $a**, **210 $c**, **950 $f**. Come si può notare, in Solr vengono indicizzati i campi UNIMARC ​con una struttura ​del tipo //​mrc_d{codice campo}_s{codice sottocampo}//​ (questo vale per tutti i campi, ad eccezione ​di quelli ​codificati, ovvero quelli compresi tra il 100 e il 199). 
 +Come prevede la [[http://​wiki.apache.org/​solr/​SolrQuerySyntax|sintassi Solr]], dopo il campo indicizzato,​ seguito da **:** va inserito il valore della ricerca (case insensitive).
  
-La maggior parte dei campi UNIMARC è ricercabile dall'​utente attraverso la pagina di Ricerca Avanzata, tuttavia ne esistono alcuni ​proprietari del tracciato utilizzato ​da Clavis, che permettono di incrociare diverse informazioni gestionali.+La maggior parte dei campi e sottocampi ​UNIMARC è ricercabile dall'​utente attraverso la pagina di Ricerca Avanzata, tuttavia ne esistono alcuni ​particolari utilizzati ​da ClavisNG, che permettono di incrociare diverse informazioni gestionali.
  
-Di seguito pubblichiamo un elenco di alcuni campi di ricerca utilizzabili+Di seguito pubblichiamo un elenco di alcuni campi gestionali indicizzati e il loro significato:​
  
 ^ campo ^ significato ^ ^ campo ^ significato ^
-^ mrc_d950_sa | id Clavis della biblioteca di gestione | +^ mrc_d950_sa |ID Clavis della biblioteca di gestione | 
-^ mrc_d950_sb | serie inventariare | +^ mrc_d950_sb |Serie inventariare | 
-^ mrc_d950_sc | numero ​di inventario | +^ mrc_d950_sc |Numero ​di inventario | 
-^ mrc_d950_sd | Sezione | +^ mrc_d950_sd |Sezione | 
-^ mrc_d950_se | Altezza | +^ mrc_d950_se |Altezza | 
-^ mrc_d950_sf | Collocazione | +^ mrc_d950_sf |Collocazione | 
-^ mrc_d950_sg | Specificazione | +^ mrc_d950_sg |Specificazione | 
-^ mrc_d950_sh | Sequenza 1 | +^ mrc_d950_sh |Sequenza 1 | 
-^ mrc_d950_si | Sequenza 1 | +^ mrc_d950_si |Sequenza 1 | 
-^ mrc_d950_sj | Stato dell'​esemplare ​+^ mrc_d950_sj |Codice dello stato dell'​esemplare | 
-^ mrc_d950_sk | visibilità opac (0 = non visibile, 1 = visibile) | +^ mrc_d950_sm |Valore ​inventariale | 
-^ mrc_d950_sl | Collocazione estesa (ovvero collocazione,​ specificazione e sequenza 1) +^ mrc_d950_sq |Codice dello stato fisico ​della copia 
-^ mrc_d950_sm | valore ​inventariale ​+^ mrc_d950_su |Codice della sorgente ​d'​acquisto | 
-^ mrc_d950_sp | loan_class ​+mrc_d950_sp ​|Classe ​di prestabilità | 
-^ mrc_d950_sq | Stato fisico ​dell'​esemplare | +sorti_usage ​|Numero di prestiti ​fatti con il titolo ​
-^ mrc_d950_ss | Item media +sorti_requests ​|Numero di prenotazioni presenti sul titolo ​|
-^ mrc_d950_su | Sorgente ​d'​acquisto | +
-mrc_d950_sx | stato del fascicolo | +
-^ mrc_d950_s1 ​| classe ​di prestabilità | +
-mrc_d950_s7 ​| Numero di prestiti | +
-mrc_d950_s8 ​| Ristampta ​|+
  
 +<WRAP info round>
 +== Informazioni sulla copia nel tracciato UNIMARC ==
 +È bene considerare che ciascun record restituito dal Solr comprende tanti **d950** quante sono le copie legate al titolo. Tuttavia, poichè **viene indicizzato singolarmente ciascun sottocampo**,​ non è possibile incrociare tra loro diversi sottocampi avendo la certezza che corrispondano alla stessa copia
 +
 +Ad esempio la seguente query
 +<​code>​
 +opac/​search/​lst?​solr=mrc_d950_sf:​Magazzino AND mrc_d950_sa:​37
 +</​code>​
 +
 +restituisce titoli dove compaiono sia copie nella sezione Magazzino che copie gestite dalla biblioteca 37. Tuttavia non necessariamente tutti i titoli ottenuti come risultato avranno copie della biblioteca 37 con sezione Magazzino. Potrebbero esserci titoli per cui esiste una copia della biblioteca 37 ma con diversa sezione, mentre è presente al contempo una copia di un'​altra biblioteca con sezione Magazzino
 +</​WRAP>​
 +
 +=== Ricerca per intervallo ===
 +
 +È possibile indicare un intervallo di valori contenuti nei campi //mrc// utilizzando la sintassi %%[* TO *]%% dove l'​asterisco rappresenta //qualsiasi valore// ed è sostituibile da uno o più caratteri o numeri.
 +
 +<​code>​
 +opac/​search/​lst?​solr=mrc_d950_sl:​[a TO c]
 +</​code>​
 +
 +Ricerca i titoli per cui esistono copie con collocazione compresa da A a C.
 +
 +<​code>​
 +opac/​search/​lst?​solr=sorti_usage:​[100 TO *]
 +</​code>​
 +
 +Ricerca i titoli andati a prestito più di 100 volte.
 +
 +===== Parametri di ordinamento =====
 +
 +Nella query di ricerca passata via URL è possibile specificare anche l'​ordinamento che si intende ottenere, utilizzando il parametro **sort**
 +
 +<​code>​
 +/​opac/​search/​lst?​q=cent'​anni+di+solitudine&​sort=titleasc
 +</​code>​
  
 +L'​esempio mostra i risultati di una ricerca semplice ordinata per Titolo (A-Z), usando il parametro **&​sort=titleasc**
  
-==== Parametri ​di ordinamento ​====+Per l'​elenco completo dei campi di ordinamento ​vedi la relativa tabella della pagina [[liquens:​codici_e_campi#​campi_di_ordinamento|Codici e campi]].
liquens/advanced.1354017821.txt.gz · Ultima modifica: 2021/03/08 15:39 (modifica esterna)