← Volver al inicio

Actividad 4

Validación de documentos XML

Implementa validaciones usando DTD o XML Schema para garantizar la integridad de los documentos XML.

Solución propuesta

Se ha creado un verificador en Node.js usando la librería @xmldom/xmldom. Recibe el código XML, lo parsea y comprueba si cumple las reglas definidas.

Se han implementado dos tipos de validación:

  • DTD verifica la estructura del documento: que el elemento raíz sea correcto, que existan los elementos obligatorios y que las referencias entre elementos sean válidas.
  • XSD verifica los datos de los alumnos: campos obligatorios, formato del DNI, estados permitidos, formato del email y que no haya DNIs repetidos.

Para usar el validador: abre cualquiera de los tests de abajo, copia el XML, abre el validador online, pega el código, elige DTD o XSD y pulsa Verificar.

Revisión de archivos

Validador

Esquemas

Validador online

Tests con errores deliberados

test_dni_invalido.xml
DTD: pasa — la DTD no valida el formato de los campos XSD: falla — el DNI no cumple el formato esperado
test_estado_invalido.xml
DTD: pasa — la DTD no valida enumeraciones XSD: falla — el estado no está entre los valores permitidos
test_raiz_incorrecta.xml
DTD: falla — el elemento raíz es <empresa> en lugar de <escuela> XSD: pasa — el XSD no comprueba el nombre del elemento raíz
test_idref_invalido.xml
DTD: falla — idCurso apunta a un ID que no existe XSD: pasa — el XSD no valida referencias entre elementos