OPACMARC - Guía de instalación (versión actual: 2006.11.13)

Página principal del catálogo de la Biblioteca del INMABB

Introducción

OPACMARC es... bueno, un OPAC... que se lleva muy bien con MARC. En otras palabras, es una aplicación que permite publicar en la Web una o más bases bibliográficas en formato MARC 21, y que intenta sacar provecho de gran parte de la información presente en los registros, para así ofrecer a los usuarios de nuestras bibliotecas una buena herramienta de búsqueda.

(En realidad, OPACMARC debiera llamarse de alguna otra manera --no es necesario que aparezcan en el nombre ni OPAC ni MARC--, pero hasta tanto algo mejor se nos ocurra seguiremos llamándolo así.)

OPACMARC organiza el catálogo en 4 bases de datos: la base bibliográfica original y 3 bases que se generan automáticamente a partir de ésta: una base de nombres (personas, instituciones, congresos), una base de temas (encabezamientos de materias o descriptores), y una base de títulos. Es importante tener presente que el OPAC muestra una versión estática del catálogo, por lo tanto es necesario volver a generar las bases en forma periódica, según el ritmo de actualización de los datos originales.

De la base bibliográfica original sólo se requiere que esté formada por registros MARC 21. Puede tratarse de una base CDS/ISIS, en cuyo caso deberá tener la estructura que utiliza Catalis, o bien puede ser un archivo de registros MARC “puros” (.mrc). ATENCION: hay un problema pendiente con la codificación de caracteres en archivos .mrc.

OPACMARC consta de dos componentes:

software para ejecutar la aplicación web, es decir el OPAC propiamente dicho.

software para actualizar los datos del OPAC, es decir, para generar --a partir de una base bibliográfica original-- las bases que serán publicadas.

La primera instalación pública de OPACMARC, y que puede tomarse como referencia para testear el funcionamiento del sistema, es la de la Biblioteca Dr. Antonio Monteiro, del Instituto de Matemática de Bahía Blanca, donde OPACMARC fue desarrollado desde 2003.

Requerimientos

Sistema operativo: el OPAC puede instalarse en Linux o en Windows. Sin embargo, el script de actualización está disponible solamente para Linux, aunque incluye una opción de configuración para convertir las bases generadas de modo que puedan ser usadas en Windows. Este script tiene una versión para Windows que ha quedado desactualizada, pero afortunadamente Rubén Mansilla se está ocupando de ponerla al día.

Software adicional

Software utilizado para el OPAC:

Servidor web (e.g. Apache). En esta guía supondremos que ya se cuenta con un servidor web instalado.

wxis (wwwisis 5.x): se puede descargar desde Bireme: http://productos.bvsalud.org/product.php?id=wwwisis&lang=es. OPACMARC ha sido probado con las versiones 5.0 y 5.4 de wxis.

agrep: herramienta para encontrar coincidencias aproximadas, utilizada en OPACMARC para generar sugerencias al estilo “did you mean?” de Google. Su instalación es opcional, pero recomendada. Agrep está disponible para Windows en http://www.tgries.de/agrep/. Para Linux, puede compilarse a partir del código fuente, o bien se puede recurrir al administrador de paquetes de la distribución que usen. Por ejemplo, usando Synaptic en Ubuntu Dapper en octubre de 2006 se instala agrep_4.17-2_i386.deb.

Software utilizado para la actualización del OPAC:

Utilitarios Cisis: se descargan en http://productos.bvsalud.org/product.php?id=cisis&lang=es. No utilice versiones viejas; todo anda bastante bien con la versión 4.3a.

/

Pasos

Vamos a suponer la instalación en una máquina con Linux.

Descargue OPACMARC. La versión más reciente es: 2006.11.13

Descomprima el archivo:

tar -xzvf opacmarc-2006.11.13-linux.tgz

Dentro de la carpeta opacmarc-2006.11.13 encontrará 4 carpetas, que deberá copiar de esta manera:

htdocs, bases y cgi-bin son las carpetas asociadas al servidor web, que deben recibir el mismo tratamiento que en la instalación de Catalis (lea opacmarc donde dice catalis_pack).

opacmarc-admin es la carpeta usada para generar las actualizaciones del OPAC; como no tiene relación con el servidor web, esta carpeta puede ubicarse en cualquier parte, incluso en otra máquina.

Copie el archivo wxis en la carpeta cgi-bin/opacmarc. Si tiene el archivo de licencia wxis.lic, también cópielo en esa carpeta. Alternativamente, si prefiere tener estos archivos en otra ubicación, puede crear links simbólicos:

cd /ruta/a/cgi-bin/opacmarc
ln -s /ruta/a/wxis
ln -s /ruta/a/wxis.lic

Archivos de configuración:

Para el OPAC: las opciones de configuración están definidas en el archivo cgi-bin/opacmarc/opac/config/opacmarc.conf. Para facilitar la instalación de futuras actualizaciones de OPACMARC, se recomienda no modificar este archivo; todas las opciones de configuración locales (es decir, aquellas que difieran de los valores predeterminados en opacmarc.conf) se deben colocar en el archivo cgi-bin/opacmarc/opac/config/local.conf. Mantenga el archivo local.conf lo más chico posible; sólo incluya en él los parámetros de configuración que necesite redefinir.

Para el proceso de actualización del OPAC: edite el archivo opacmarc-admin/conf.sh. Preste atención especialmente a las siguientes opciones:

OPACMARC_DIR: la ruta absoluta del directorio opacmarc-admin.

PATH: sólo si el directorio de los utilitarios Cisis no se encuentra ya en el PATH.

TARGET_DIR y MOVE: si desea que los archivos generados sean movidos a otra carpeta donde el servidor web pueda verlos.

CONVERT_WINDOWS: si desea utilizar las bases en un servidor con Windows.

Permisos:

La carpeta bases/opacmarc/opac/access_logs necesita permiso de escritura para el usuario del servidor web (según la distribución de Linux, este usuario puede llamarse apache, www-data,... ¿algún otro?).

El script update-opac.sh debe ser ejecutable.

Los binarios wxis y agrep deben ser ejecutables.

Test de WXIS: Acceda a http://127.0.0.1/cgi-bin/opacmarc/wxis?hello (véase la prueba de la instalación de Catalis).

Test del OPAC: Acceda a http://127.0.0.1/cgi-bin/opacmarc/wxis?IsisScript=opac/xis/opac.xis&db=demo

TO-DO

Explicar cómo proceder en caso de una actualización de OPACMARC.

Cómo mostrar en el OPAC una nueva base bibliográfica

Una vez testeada exitosamente la base demo, llega el momento de colocar en el OPAC nuestra propia base. Supondremos que la base se llama mibase.

Base de origen

Si la base bibliográfica original es una base CDS/ISIS, solamente se requiere el archivo maestro, que puede estar en cualquiera de estos formatos:

archivos biblio.mst y biblio.xrf

archivo mibase.zip o biblio.zip, que contiene biblio.mst y biblio.xrf

archivo mibase.iso o biblio.iso

archivo mibase.id o biblio.id, generado con i2id

Téngase en cuenta que se utiliza aquí la convención propia de Catalis, donde lo que llamamos “nombre de la base” es en realidad el nombre de la carpeta que contiene a la base, y todos los archivos maestros se llaman biblio.

ATENCION: si la base CDS/ISIS original proviene de Windows, previamente debe ser convertida al formato de Linux utilizando crunchmf (en Windows).

También puede utilizarse una base compuesta por registros MARC en formato ISO 2709, en ese caso el archivo deberá llamarse mibase.mrc.

Archivos en el servidor

En bases/opacmarc/opac debe crear una carpeta mibase.

En cgi-bin/opacmarc/opac hay tres carpetas con archivos que son específicos de cada base de datos: banner, about, home. Mire los que se incluyen de muestra, y cree archivos similares para sus propias bases: banner/mibase.htm, about/mibase.htm, home/mibase.htm.

Generación de las bases para el OPAC

Copie la base original a la carpeta opacmarc-admin/work/mibase/original (inicialmente deberá crear las carpetas mibase y original).

Si es necesario edite el archivo opacmarc-admin/conf.sh.

Ubíquese en el directorio opacmarc-admin/bin y ejecute el script de actualización:

./update-opac.sh mibase

Se sugiere hacer las primeras pruebas con una base pequeña, o bien limitar el número de registros procesados, usando un segundo argumento para update-opac.sh, como en este ejemplo:

./update-opac.sh mibase 200

Los archivos que se utilizan en el OPAC, es decir aquellos que deben llevarse a bases/opacmarc/opac/mibase en el servidor, son los que quedan en opacmarc-admin/work/mibase/ luego de la ejecución de update-opac.sh (excluyendo las carpetas tmp y windows). Si en conf.sh no se indicó MOVE=1, será necesario copiar o mover esos archivos a bases/opacmarc/opac/mibase.

Para ver la nueva base en el OPAC, acceda a http://127.0.0.1/cgi-bin/opacmarc/wxis?IsisScript=opac/xis/opac.xis&db=mibase, cambiando 127.0.0.1 por el nombre que corresponda a su servidor si el testeo no lo realiza en forma local.

NOTA: desde una misma instalación de OPACMARC es posible brindar acceso a múltiples bases, repitiendo el proceso descripto arriba para cada una de ellas.

Apéndice: Salida de update-opac.sh

Ésta es la salida generada por update-opac.sh cuando se corre sobre la base demo:

fer@fgomez03:~/opacmarc-admin/bin$ ./update-opac.sh demo
-----------------------------------------------------
update-opac.sh - SCRIPT DE ACTUALIZACION DEL OPAC
-----------------------------------------------------
Usando como base original: /home/fer/opacmarc-admin/work/demo/original/demo.zip
No hay directorio de imagenes
Creamos una copia (texto) de la base bibliografica...
+++ 100/100 recs
Intentamos normalizar la puntuacion final, filtramos encabezamientos
tematicos, y asignamos un numero (provisorio) a cada campo
de encabezamientos en el subcampo ^9...
-----------------------------------------------------
Base de encabezamientos tematicos
-----------------------------------------------------
Creamos el listado de encabezamientos tematicos...
Convertimos el listado en una base (desordenada y con duplicados)...
+++ 337/337 recs
Regularizamos la puntuacion final de los encabezamientos generados...
Almacenamos en un campo auxiliar la clave de ordenacion...
Ordenamos la base de encabezamientos tematicos...
Generamos la tabla para mapear los numeros de encabezamientos...
Eliminamos los encabezamientos duplicados...
Creamos la base de encabezamientos tematicos (ordenada y sin duplicados)...
+++ 279/279 recs
-----------------------------------------------------
Base de encabezamientos de nombres
-----------------------------------------------------
Creamos el listado de encabezamientos de nombres...
Convertimos el listado en una base (desordenada y con duplicados)...
+++ 224/224 recs
Regularizamos la puntuacion final de los encabezamientos generados...
Almacenamos en un campo auxiliar la clave de ordenacion...
Ordenamos la base de encabezamientos de nombres...
Generamos la tabla para mapear los numeros de encabezamientos...
Eliminamos los encabezamientos duplicados...
Creamos base de encabezamientos de nombres (ordenada y sin duplicados)...
+++ 198/198 recs
Reasignamos numeros a los encabezamientos en los registros
bibliograficos (subcampo 9)...
-----------------------------------------------------
Base de titulos
-----------------------------------------------------
Creamos listado de titulos...
Convertimos el listado en una base (desordenada y con duplicados)...
+++ 156/156 recs
Almacenamos en un campo auxiliar (99) la clave de ordenacion de titulos.
Ordenamos la base de titulos.
Eliminamos los titulos duplicados.
Creamos la base de titulos (ordenada y sin duplicados).
+++ 156/156 recs
Recreamos la base bibliografica.
+++ 100/100 recs
Ordenamos la base bibliografica.
Archivo invertido - Base de temas...
+++ 1220+632 links
+++ data base: subj
+++ .lk1 file: subj.lk1
+++ .lk2 file: subj.lk2
+++ subj.lk1
+++ subj.lk2
+++ 280/279
Archivo invertido - Base de nombres...
+++ 779+443 links
+++ data base: name
+++ .lk1 file: name.lk1
+++ .lk2 file: name.lk2
+++ name.lk1
+++ name.lk2
+++ 199/198
Archivo invertido - Base de titulos...
+++ 1+155 links
+++ data base: title
+++ .lk1 file: title.lk1
+++ .lk2 file: title.lk2
+++ title.lk1
+++ title.lk2
+++ 157/156
Archivo invertido - Base bibliografica...
+++ 8455+2210 links
+++ data base: biblio
+++ .lk1 file: biblio.lk1
+++ .lk2 file: biblio.lk2
+++ biblio.lk1
+++ 5000 MEDIA
+++ biblio.lk2
+++ 101/100
Detectando registros analíticos...
Títulos de seriadas...
Asignamos postings a los terminos del indice de temas.
Asignamos postings a los terminos del indice de nombres.
Generamos diccionarios para AGREP.
- subj
- name
- title (incluye series)
- any
Lista de codigos de idioma.
Lista de codigos de bibliotecas.
Fechas extremas.
BIBLIOGRAPHIC_TOTAL=100
NAME_TOTAL=198
SUBJ_TOTAL=279
TITLE_TOTAL=156
ITEMS_TOTAL=0
Listado de novedades.
Fecha de esta actualizacion.
Eliminando archivos temporales...
Moviendo los archivos generados...
update-opac.sh finalizó exitosamente. Hasta pronto.