Validación de registros

Validación de registros

El sistema permite asignar un set de reglas de  validación  y un set de reglas de mejoras para cada plantilla.

Hemos desarrollado un sistema de pseucódigo para simplificar la creación de las reglas.

Las reglas permiten acceder  a los campos y subcampos marc y además a otros elementos del sistema.

ejemplos de reglas. 

020$a O 0 * isISBN

El subcampo $a del campo 020 (que contiene el número ISBN) es opcional. Puede aparecer desde cero hasta un número ilimitado de veces en un registro. Si aparece, su contenido debe ser validado para asegurar que es un formato de ISBN válido.

:ifpresent(856$u) 856$z R 1 *

En caso de estar presente el campo 856 y su subcampo u  se evalúa como obligatorio (R) el campo 856^z  con al menos una ocurrencia.

Cada regla tiene su documentación en el sistema y además se puede utilizar para validar en tiempo real (durante la edición o posteriormente) 

# ISBN - opcional, validar formato ISBN
020$a O 0 * isISBN
# ISSN - opcional, validar formato ISSN
022$a O 0 * isISSN
# el sistema debe por lo menos aportar dos términos de búsqueda. 650 / 653 u otros que generen claves topic.
@topic R 2 * notEmpty 

Ejemplo completo  rules.txt

Funciones especiales
Contar adjuntos 

Definición @id R 1 1 checkadjunto(1) 

cuenta los adjuntos y lo compara con el parámetro, en este caso es válido si encuentra al menos 1 adjunto.

Contar adjuntos marcados como públicos

Definición @id R 1 1 checkadjuntopublico(1)

cuenta los adjuntos marcados como públicos y lo compara con el parámetro, en este caso es válido si encuentra al menos 1 adjunto.

 



Preguntas Frecuentes


Revision #7
Created 9 April 2025 15:38:09 by Horacio Degiorgi
Updated 3 November 2025 10:24:55 by Horacio Degiorgi