A raíz de la implementación de OPACMARC en el Museo Mitre, volvió a surgir el interés en poder brindar acceso a múltiples subcatálogos dentro de una única colección. Esto es de interés para bibliotecas que poseen varias colecciones claramente diferenciadas, y que desean que los usuarios puedan consultar separadamente cada colección. Algunos ejemplos: el Museo Mitre posee Biblioteca Americana, Colección Moores, Mapas, Colección Ruiz Guiñazú; la Biblioteca Rivadavia tiene la Sala Infantil, la Hemeroteca, la Colección Fontanella, etc. Una división muy usual es publicaciones periódicas vs. el resto, o con una subdivisión más fina por tipo de material: libros, películas, música, etc.
Consideremos entonces el siguiente escenario: tenemos una única base de datos bibliográfica, donde cada registro puede pertenecer a uno o más subconjuntos de registros (definidos por algún criterio, ver más abajo), y deseamos que cada uno de esos subconjuntos se pueda consultar de manera separada.
Si pensamos que la pertenencia a un subcatálogo es apenas una más entre varias restricciones posibles, tales como las que se presentan en el formulario de búsqueda avanzada (idioma, forma literaria, fecha, etc.), entonces el problema parece resuelto: ofrecemos al usuario un parámetro más en el form avanzado.
Sin embargo, existen otros requerimientos adicionales, que hacen un poco más complicada la situación:
Es fácil restringir los registros bibliográficos a un subcatálogo, pero ¿cómo restringimos los registros de las otras bases auxiliares? Quizás podamos añadir un campo a los registros de esas bases, indicando en qué subcatálogos puede aparecer (según los subcatálogos a los que pertenezcan los registros bibliográficos asociados).
Un término T debe aparecer en el índice del subcatálogo S si y sólo si existe un registro bibliográfico R tal que R está en S y T está en R.
Posible solución (mal expresada, revisar bien!):
Si logramos esto, podremos aplicar una restricción por subcatálogo al momento de hacer una búsqueda en los índices.
2008-11-03: las bases name y subj cuentan con un campo 8, repetible, con una occ por cada subcatálogo donde aparece el heading
Queda además el problema de aplicar el filtro al recorrer secuencialmente los índices (browsing), si usamos un mfnrange.
Los criterios para definir la pertenencia de un registro a un subcatálogo pueden ser variados, y no debemos exigir demasiado al respecto. Desde el uso de un campo local ad hoc, hasta el uso de una combinación de valores distribuídos entre varios campos, cualquier criterio puede considerarse válido. El único requisito es que podamos recuperar, mediante el archivo invertido, todos los registros pertenecientes a un subcatálogo.
En principio, hemos convenido (con R.E.) usar un campo local ad hoc, pero intentando limitar su uso a los pocos casos que lo requieran. Por ejemplo, periódicas y mapas no requieren el uso de tal campo, pues basta con tomar la información del leader del registro MARC.
Tendremos que construir una tabla con el mapeo entre subcatálogos, criterios que deben satisfacer los registros, y claves usadas en el diccionario. Ejemplo:
Subcatálogo | Criterio | Diccionario |
---|---|---|
Videos | Leader/06 = 'g' | -REC_TYPE=G |
Sala infantil | Campo 859 : 'Sala infantil' | -LUGAR=SI |
La expresión de búsqueda mediante el diccionario puede usar una combinación booleana de claves, si fuera necesario.
Una vez que decidimos partir una base (un catálogo) en sub-bases virtuales (sub-catálogos, SC), parece natural querer asociar a cada SC algunos archivos que permitan “customizar” —aunque sea mínimamente— el look de ese SC: css, img, js, htmlpft. También necesitaríamos parámetros de configuración específicos, aunque tal vez éstos podrían vivir dentro del archivo de configuración de la base.
En la nueva estructura de archivos de OpacMarc (2008), tenemos 3 niveles:
¡Ahora estaríamos agregando un cuarto nivel, el de “subcatálogo”!
También necesitaremos especificar, a nivel de la base, cuál es la lista de subcatálogos disponibles, así como los criterios para determinar a cuál(es) subcatálogo(s) pertenece un registro bibliográfico.