Verificación de DSPL

DSPL Check es una utilidad que valida un conjunto de datos de DSPL con varios criterios, como el cumplimiento del esquema oficial de DSPL, la coherencia de las referencias internas y la estructura de archivos CSV. La utilidad puede detectar muchos problemas que causarán errores de importación de DSPL, lo que te ayuda a detectar y solucionar estos problemas rápidamente antes de comenzar el proceso de entrada.

Ten en cuenta que la utilidad aún no verifica tu conjunto de datos de DSPL en busca de todos los problemas posibles. Sin embargo, detectará los problemas más comunes, por lo que si la herramienta valida correctamente tu conjunto de datos, hay una gran posibilidad de que se pueda importar y visualizar en el explorador de datos públicos. Consulta la sección Detalles de verificación a continuación para obtener más información.

Ejecutando comprobación de DSPL

Conceptos básicos

Nota: En estas instrucciones, se da por sentado que ya seguiste las instrucciones de instalación proporcionadas en la página de herramientas de DSPL.

Para ejecutar la verificación de DSPL, ve a la terminal o solicitud en tu sistema y escribe lo siguiente:

python dsplcheck.py [path to dataset XML or zip file]

donde el término entre corchetes se reemplaza por la ruta relativa a un archivo XML de conjunto de datos o a un paquete de DSPL comprimido.

Si el conjunto de datos es válido, la herramienta imprime un mensaje de "validación exitosa". De lo contrario, muestra uno o más mensajes de error que describen por qué falló la validación. Si ocurre esto último, corrige tu conjunto de datos como se indica y, luego, vuelve a ejecutar la herramienta.

Comprobando el nivel

De forma predeterminada, la DSPL examinará todo el conjunto de datos, incluidos los CSV a los que se hace referencia desde el archivo XML principal de DSPL. Este proceso funciona bien en conjuntos de datos pequeños a medianos, pero puede quedar atascado o quedarse sin memoria en conjuntos de datos que son muy grandes (es decir, en cientos de megabytes o más).

Para abordar estos casos, la herramienta tiene una opción de nivel de verificación que te permite establecer el alcance de la verificación y mejorar el rendimiento, según sea necesario. Para usar, inserta --checking_level=[...] antes de la ruta del conjunto de datos, en la que el término entre corchetes se reemplaza por uno de los siguientes valores:

  • schema_only: Valida el archivo XML del conjunto de datos con el esquema oficial de DSPL y, luego, detente.
  • schema_and_model: Realiza la validación del esquema y del modelo básico, pero ignora el contenido del archivo CSV después de la línea del encabezado.
  • full: Esquema, modelo y validación de datos (predeterminado).

Comprobando detalles

La comprobación de DSPL realiza la siguiente secuencia de validaciones:

  • Validación del esquema XML: Verifica que el archivo de metadatos de tu conjunto de datos sea XML válido y cumpla con el esquema oficial de DSPL.
  • Existencia de CSV: Comprueba que todos los archivos CSV a los que se hace referencia en el conjunto de datos existan y se puedan cargar.
  • Verificaciones de conceptos: Diversas verificaciones de cada concepto del conjunto de datos, incluidas las siguientes:
    • El conjunto de datos tiene al menos un concepto*
    • Todas las referencias del tema son válidas
    • La referencia de la tabla existe si el concepto se usa como una dimensión sin tiempo*
    • La referencia de la tabla es válida si está presente
    • La tabla de referencia tiene una columna que corresponde al ID del concepto
  • Verificaciones de fragmentos: Varias verificaciones de cada porción en el conjunto de datos, incluidas las siguientes:
    • El conjunto de datos tiene al menos una porción*
    • Al menos una porción hace referencia a una dimensión sin tiempo*
    • La sección tiene al menos una métrica y una dimensión
    • Exactamente una dimensión de referencia time concepto canónico*
    • Cada porción tiene una combinación única de dimensiones.
    • Todas las referencias a conceptos locales son válidas.
    • Existe una referencia de tabla
    • La referencia de la tabla es válida
    • La tabla de referencia tiene una columna para cada dimensión y métrica en la porción.
    • Los tipos de columna de la tabla a la que se hace referencia coinciden con los tipos de los conceptos que se usan en la porción
  • Verificaciones de tablas: Varias verificaciones de cada tabla en tu conjunto de datos, incluidas las siguientes:
    • El conjunto de datos tiene al menos una tabla*
    • El archivo CSV tiene la misma cantidad de columnas que la tabla
    • Las strings de encabezado CSV coinciden con los ID de columnas
    • Todas las columnas de fechas tienen un atributo format
    • Los formatos de fecha se alinean (aproximadamente) con los conceptos de tiempo asociados, p. ej., el formato para una columna time:year incluye al menos un carácter y.*
  • Verificaciones de datos CSV: Son varias las comprobaciones de los archivos de datos CSV a los que hace referencia el archivo XML de tu conjunto de datos, incluidas las siguientes:
    • Cada fila de CSV tiene la misma cantidad de columnas que su encabezado.
    • El archivo CSV de definición de conceptos no tiene más de una fila para cada ID de concepto
    • El CSV de secciones no tiene más de una fila para cada combinación de dimensiones.
    • Los valores de dimensión a los que se hace referencia en el CSV de porción son válidos
    • El CSV de Slice está ordenado correctamente
    • Los valores CSV de número entero y de número de punto flotante tienen el formato correcto

Los criterios marcados con un * son necesarios para la visualización en el Explorador de datos públicos, pero técnicamente no son necesarios para el formato DSPL.

Por otro lado, la herramienta aún no observa lo siguiente:

  • Importaciones de conjuntos de datos
  • Referencias de atributos y propiedades
  • Extensiones de conceptos