Importación de registros en Catalis

Estas son ideas para tener en cuenta en la siguiente implementación de esta función en Catalis.

¿Registro individual, o lote de registros?

INTERFAZ

activación de la función “Importar”: mediante un botón, menú, o combinación de teclas

diálogo: para que el usuario pueda indicar qué registro desea importar

modo de ingreso del registro: pegar texto, ingresar URL

[config] opciones: p.ej. la codificación del registro (si se conoce)

ENTRADA

tipo de registro: bibliográfico, autoridades. Tenemos que poder procesar al menos esos dos tipos.

estructura: iso 2709, xml, json, ... No sé si hay algún estandar para JSON; en los otros casos no debería haber problemas.

formato: marc21, xmlmarc, ibermarc, ... En España usan Ibermarc, y aquí hay interés en tomar registros de la BNE.

PROCESO

parseo: dependerá de la estructura (ver arriba)

recodificación: Necesitamos afinar las tablas de mapeo a latin-1, y decidir qué hacer con los caracteres no mapeables.

[config] modificaciones al registro (borrar, cambiar, agregar datos): revisar las ya implementadas, estudiar si se necesitan nuevas.

[config] validaciones: ¿podemos esperar a que el registro sea grabado en la base para someterlo a las mismas validaciones que a cualquier otro registro, o aplicamos validaciones al momento de importar?

SALIDA

registro listo para editar: ¿un objeto MarcRecord?

mensajes al usuario: sobre las modificaciones hechas, sobre lo que queda por hacer...

log: se puede generar (y almacenar) un log de cada importación, con todos los datos que se desee guardar.

IBERMARC

[Lo que sigue es un archivo del 02 de marzo de 2006]

Registros ISO 2709 de la BNE (IBERMARC)

Testeo con registros:

BNE19940336901: Hacienda pública teórica y aplicada (1994)

Puntuación al comienzo de algunos subcampos: 245$b

Añadir punto final: 240$a, 700

Caracteres con diacríticos: “á”

Otros caracteres especiales: “®” por “ª”

ISBN con guiones

300 $a: números romanos pasarlos a minúsculas

Campo 504: “Bibliografía.” => “Incluye referencias bibliográficas.”

650$j ??

Eliminar: campo 019

Campo 008:

15-17 (país) mapear tabla

18-21: si la pos. 18 contiene “|” => pongo “####” en 18-21

22: “/” => “#”

23: “/” => “#”

24-27: si la pos. 24 contiene “|” => pongo “####” en 24-27

28: “/” => “#”

38: “/” => “#” o “|”