Validar un XML con un XSD (básico)
Compruebe que un documento XML respeta la estructura básica declarada en un esquema XSD: elementos obligatorios, ocurrencias mínimas/máximas y atributos obligatorios. Esta validación cubre los casos habituales, pero es deliberadamente simplificada (véanse los límites más abajo).
Cómo funciona
Un navegador web no incorpora ningún validador XSD completo y nativo (a diferencia de un analizador de JSON Schema, que se puede reimplementar con sencillez). Esta herramienta lee su XSD y extrae de él una estructura simplificada — elemento raíz, secuencia de elementos hijos con sus minOccurs/maxOccurs y atributos marcados con use="required" — y después comprueba que su documento XML respeta esa estructura.
¿Cuáles son los límites de esta validación?
Esta herramienta no sustituye a un validador XSD conforme a la especificación del W3C. No verifica los tipos de datos precisos (un xs:integer que contenga texto no se detecta), no admite esquemas con importaciones o inclusiones externas (xs:import, xs:include), tipos complejos por herencia (extension/restriction), grupos con nombre reutilizables ni patrones de validación (xs:pattern, xs:restriction con enumeraciones). Solo verifica: el nombre del elemento raíz, la presencia y el número de ocurrencias de los elementos hijos declarados en secuencia directa, y la presencia de los atributos marcados como obligatorios. Para una validación estricta en producción, utilice un validador XSD de servidor (libxml2, Xerces, etc.).
¿Por qué no decir simplemente que es inviable?
Una validación XSD completa es, en efecto, inviable de forma limpia en el navegador sin una biblioteca específica, pero la gran mayoría de los esquemas XSD reales que se usan para validar una exportación de configuración o un flujo de datos sencillo se limitan a secuencias de elementos con ocurrencias y algunos atributos obligatorios — exactamente lo que verifica esta herramienta, siendo honesta sobre lo que no cubre.
Procesamiento 100% local: el análisis del XSD y del XML se ejecuta íntegramente en su navegador — sus documentos nunca salen de su dispositivo.