Volver a las tareas

LM 1DAW · Tarea

RA4-Validadores, JSON, JSON SCHEMA

Instrucciones

Definición y validación de una lista de palabras vacías

Realiza las partes 1, 2 y 3 de la práctica de JSON.

Consulta el documento original de la práctica, enlazado en la diapositiva 367.

Ejercicio 1

Crear data.json

Crea data.json con un objeto que tenga una única propiedad llamada stop. Su valor será un array de palabras vacías habituales en español: palabras frecuentes que se ignoran en un análisis de texto.

Ejemplo de datos:

{"stop": ["a", "de", "la", "y", "que", "el", "en"]}

Condiciones

  • Todas las palabras deben estar en minúsculas.
  • Solo pueden contener letras, incluidos los acentos y la ñ; no se admiten números ni signos.
  • Cada palabra tendrá entre 1 y 10 caracteres.
  • No puede haber palabras repetidas y el array no puede estar vacío.

Ejercicio 2

Crear schema.json

Crea schema.json para validar estrictamente los datos anteriores.

  • El documento debe ser un objeto con una única propiedad obligatoria: stop.
  • stop debe ser un array no vacío de cadenas de texto.
  • Cada cadena debe contener únicamente letras minúsculas, incluidos acentos y ñ.
  • Su longitud debe estar entre 1 y 10 caracteres.
  • El array no puede tener elementos duplicados.
  • No se permiten propiedades adicionales en el objeto.

Casos de validación

Este documento debe ser válido:

{"stop": ["hola", "mañana", "él"]}

Este documento debe ser inválido, porque contiene una mayúscula y una palabra repetida:

{"stop": ["Hola", "mañana", "él", "él"]}

Ejercicio 3

Validación real con JavaScript y Ajv

Comprueba la validación con JavaScript y la librería Ajv. El proyecto debe contener index.html, script.js, data.json y schema.json.

En index.html, carga Ajv y enlaza script.js. En el script:

  1. Carga schema.json.
  2. Carga data.json.
  3. Compila el esquema con Ajv.
  4. Valida los datos con el esquema.
  5. Muestra en la consola si el documento es válido o inválido.
  6. Si hay errores, muestra la información de validate.errors.

Entrega y defensa

Adjunta la práctica en un ZIP con los cuatro archivos. Prepara la defensa según el cronograma de clase.

Materiales de la tarea

No hay archivos adjuntos en esta tarea.