OPACMARC es, sencillamente, 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:
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.
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. Actualización (feb 2008): el plan es migrar el script update-opac.sh
al lenguaje Python, y así lograr que funcione independientemente de la plataforma.
agrep_4.17-2_i386.deb
.Vamos a suponer la instalación en una máquina con Linux.
tar -xzvf opacmarc-2006.11.13-linux.tgz
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 de las bases del OPAC; como no tiene relación con el servidor web, esta carpeta puede ubicarse en cualquier parte, incluso en otra máquina.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
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.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.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?).update-opac.sh
debe ser ejecutable.wxis
y agrep
deben ser ejecutables.Explicar cómo proceder en caso de una actualización de OPACMARC.
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
.
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:
biblio.mst
y biblio.xrf
mibase.zip
o biblio.zip
, que contiene biblio.mst
y biblio.xrf
mibase.iso
o biblio.iso
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
.
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
.
opacmarc-admin/work/mibase/original
(inicialmente deberá crear las carpetas mibase
y original
).opacmarc-admin/conf.sh
.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.
OPACMARC permite asociar a registro bibliográfico una imagen –que usualmente corresponderá a la cubierta o portada del documento– para ser visualiada en el estilo “completo” y en el listado de novedades.
No nos ocuparemos aquí de la forma de obtención de dichas imágenes. Lo que nos interesa es que los archivos (jpg, gif, png)
Si sus registros incluyen las imágenes de las tapas, proceda de la siguiente forma:
1) Cree un directorio para ubicar las imágenes:
htdocs/opacmarc/opac/img/mibase/
nótese que el directorio debe tener el mismo nombre de la base a crear
2) Si es necesario, cuando configure el archivo opacmarc-admin/conf.sh para sus necesidades locales, revise la línea que corresponde a la ruta de las imágenes y modifíquela de acuerdo a la ubicación que éstas tienen en su servidor.
DIR_IMG=/opacmarc/opac/img
3) Las imágenes deben tener como nombre el número de registro al cual corresponden, que se aloja en el campo 001 del registro en cuestión:
000234.jpg 000023.gif
4) Es conveniente uniformar el tamaño de todas las imágenes.
É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.