Saltar al contenido principal

Validación local de ONIX-XML

Finalidad

Esta guía explica los pasos necesarios para poder llevar a cabo chequeos de validez sintáctica de los archivos XML ONIX 3.1, en un entorno local.

Cuando se envía un archivo ONIX a DILVE, el primer paso que realiza DILVE, previo a la carga del archivo, es comprobar si cumple los requerimientos de estructura y contenido definidos formalmente mediante el "esquema XML" gestionado por EDItEUR. Si el archivo XML-ONIX no supera esta validación, no se cargará en DILVE.

Este proceso de depuración del ONIX-XML es relativamente lento ya que supone el envío del archivo a DILVE, esperar a que se procese, descargar el informe de carga y analizarlo.

Por ello, es importante realizar estos chequeos de validez del XML en local, antes de enviar el archivo a DILVE. Cuando la editorial introduce algún cambio en una estructura ONIX que ya funciona correctamente, por ejemplo si se añade un nuevo campo o bloque ONIX, es fundamental validar el archivo XML generado antes de enviarlo a DILVE, para evitar errores de carga.

Es muy sencillo instalar un entorno de prueba local que permita agilizar estos procesos de validación XML de los registros ONIX generados, antes de su envío a DILVE, sobre todo durante la fase de desarrollo de nuevas funcionalidades en los registros ONIX.

Una vez puesto a punto este entorno de prueba y comprobado que la estructura del ONIX-XML es correcta, solo será necesario volverlo a usar cuando se añadan nuevos campos o bloques al registro ONIX.

En el mercado existen herramientas comerciales para la gestión y validación de archivos XML (Stylus Studio, oXygen XML Editor, XML Spy, etc.). Sin embargo, en este documento se presenta una solución basada en herramientas de uso libre: el editor Notepad++ y el plugin XML Tools.

Básicamente, los pasos necesarios para instalar un entorno de prueba local para la validación de archivos ONIX-XML en Windows son:

  1. Instalar el editor de texto Notepad++. Este es un editor de textos muy potente y versátil, de gran utilidad no solo en el contexto de las validaciones de ONIX 3.1.

  2. Instalar la herramienta de extensión de Notepad++ (Plugin), "XML Tools", que simplifica la gestión de archivos XML en Notepad++.

  3. Descargar, de la web de EDItEUR, los archivos del esquema XML de ONIX 3.1 (estos archivos contienen la descripción formal del ONIX 3.1).

  4. Cargar en Notepad++ el archivo ONIX 3.1 que se quiera validar.

  5. Utilizar la opción de validación de "XML Tools" dentro de Notepad++.

Una vez instaladas las aplicaciones necesarias y descargado el esquema XML de ONIX 3.1, para subsiguientes validaciones solo es necesario repetir los pasos 4 y 5.

Hay que tener en cuenta que EDItEUR actualiza el esquema XML del ONIX 3.1 continuamente, por lo que es conveniente actualizar la copia local (paso 3) una o dos veces al año.

Instalación de Notepad++

Descargar la aplicación del sitio oficial: https://notepad-plus-plus.org/

Es probable que se encuentren lugares alternativos para la descarga pero se recomienda muy encarecidamente que se haga exclusivamente desde la web oficial.

Se debe descargar la versión de 32 bits o la de 64 bits, según corresponda al equipo en que se vaya a instalar. Es probable que sean necesarios permisos de administrador para esta instalación.

En el segundo paso de la instalación ("Selección de componentes") asegurarse de que está marcado el checkbox "Localization" si se desea poder activar la interfaz de Notepad++ en español. El resto de la instalación se puede hacer con los valores por defecto.

Después de lanzar Notepad++, si la interfaz aparece en inglés y se desea en español, seleccionar: "Settings", "Preferences" y en el dropdown de "Localization" elegir "Español".

Instalación del plugin XML Tools

En Notepad++ ir a: "Plugins", "Plugin Manager", "Show Plugin Manager". (En español: "Complementos", "Administrar complementos").

En la ventana del "Plugin Manager", seleccionar "XML Tools" y clicar en "Install" (En español: en la ventana "Administrar complementos", seleccionar la pestaña "Disponibles", seleccionar "XML Tools" y hacer clicar en "Instalar").

Es posible que Notepad++ indique que existe una actualización del "Plugin Manager" ("Administrar complementos"). Si es así, se recomienda instalarla antes de continuar (aquí también pueden ser necesarios permisos de administrador). Si se instala la actualización del "Plugin Manager" ("Administrar complementos") será necesario repetir los pasos indicados anteriormente para seleccionar e instalar "XML Tools".

Durante la instalación de "XML Tools" se postrará un mensaje diciendo que se debe reiniciar Notepad++ para completar la instalación del Plugin.

Una vez completada la instalación de XML Tools, este aparecerá en la lista de Plugins cuando se elija esta opción en el menú de Notepad++.

Descarga de los esquemas XML de ONIX 3.1

Los esquemas XML de ONIX 3.1 son los que definen formalmente la sintaxis de los archivos ONIX-XML y la estructura formal de los valores permitidos en cada campo. Estos esquemas tienen la extensión ".xsd" y se utilizan para esta validación. Los .xsd son, a su vez, archivos XML.

Se descargan de la web de EDItEUR, en http://www.editeur.org/93/Release-3.1-Downloads/#Schema defs.

En esta página se debe elegir la opción: ONIX for Books 3.1.3 XSD Schema + Codelists Issue NN (XML in.zip). El valor de "NN" será un valor numérico, p.ej. "74", que es la última versión de las listas de códigos ONIX, de las que se realizan cuatro revisiones anuales. Si accede a esta página es muy probable que "NN" sea un valor distinto al "74".

Se recomienda descargar este archivo a una carpeta específica creada al efecto, por ejemplo C:\onix (puede elegir la ruta que más le convenga)

Una vez descargado, se debe desempaquetar el archivo zip. Se creará una subcarpeta de C:\onix con el nombre "ONIX_BookProduct_XSD_schema+codes_Issue_NN" (donde "NN" indicará la versión de las listas ONIX en el momento de la descarga).

Esa subcarpeta contendrá cuatro archivos con extensión ".xsd". El relevante para los chequeos de ONIX 3.1 es el "ONIX_BookProduct_3.1_reference.xsd", aunque se deben mantener todos en esa carpeta (en rigor, se podría eliminar el "ONIX_BookProduct_3.1_short.xsd" si no se van a utilizar mensaje ONIX con etiquetas cortas).

Carga del archivo ONIX en Notepad++

Para cargar en Notepad++ el archivo ONIX que se quiera validar se recomienda abrirlo desde la propia aplicación con "Archivo", "Abrir" o bien arrastrarlo desde el explorador de archivos al propio Notepad++.

Si se hace doble clic en el nombre del archivo, es probable que Windows intente abrirlo con el navegador de Internet o que muestre un mensaje preguntando con qué aplicación se debe abrir.

Validación del archivo ONIX

Una vez cargado el ONIX en Notepad++, se debe usar la opción: "Plugins" (en español: "Complementos"), "XML Tools", "Validate Now".

El programa mostrará una ventana con el título "Select file..." en la que se debe indicar el esquema XML para la validación. Este es el "ONIX_BookProduct_3.1_reference.xsd", descargado en el paso 3. Luego se clica en "OK", con lo que se lleva a cabo el proceso de validación:

  • Si todo va bien, se mostrará una ventana emergente con el mensaje: "XML Schema validation: XML is valid" (o "No error detected")
  • Si el ONIX es incorrecto, la ventana emergente mostrará un mensaje con el error detectado. Dependiendo del tipo de error este mensaje puede ser bastante complejo, por lo que se recomienda copiarlo y pegarlo en otro entorno, para analizarlo con detenimiento.

DILVE utiliza este mismo proceso de validación con el esquema XML de EDItEUR en todas las cargas. Si su archivo no supera la validación en el entorno de Notepad++, tampoco lo hará en DILVE y el archivo no se cargará.