Validador de XML / XSD
Del lado del servidorMuestras
Resultado de la validación
Esquema XSD
Documento XML
Detalles técnicos
Cómo funciona el validador de XML / XSD
Qué hace la herramienta
Este validador XML XSD comprueba documentos XML contra definiciones de XML Schema mediante procesamiento del lado del servidor. La herramienta valida la estructura, los tipos de datos, el orden de los elementos y los requisitos de atributos definidos en tu esquema. Cuando la validación falla, informa de errores específicos con números de línea y columna cuando están disponibles. El validador maneja espacios de nombres, tipos complejos, restricciones de secuencia y facetas del esquema como coincidencia de patrones y restricciones de valores.
Ejemplo: Validación de catálogo de libros
Considera este esquema XSD que requiere que los libros tengan IDs enteros y precios decimales:
<xs:element name="book">
<xs:complexType>
<xs:sequence>
<xs:element name="title" type="xs:string"/>
<xs:element name="price" type="xs:decimal"/>
</xs:sequence>
<xs:attribute name="id" type="xs:integer" use="required"/>
</xs:complexType>
</xs:element>Un XML no válido como <book id="abc"><price>not-a-number</price></book> fallaría la validación con errores de restricción de tipo tanto para el atributo ID como para el elemento price.
Casos de uso comunes
Los desarrolladores usan la validación de XML Schema al integrarse con API SOAP, validar archivos de configuración o procesar formatos de intercambio de datos. Los escenarios comunes incluyen validar respuestas de API contra esquemas publicados, comprobar archivos de configuración antes del despliegue y asegurar la calidad de los datos en canalizaciones ETL. El validador es especialmente útil para detectar discrepancias de tipos, elementos obligatorios faltantes y un orden incorrecto de elementos antes de que los datos lleguen a sistemas de producción.
Motor de validación y limitaciones
Esta herramienta usa libxml2 a través del binding libxmljs de Node.js, proporcionando conformidad con XML Schema 1.0. El validador procesa los esquemas completamente del lado del servidor por seguridad y no obtiene recursos externos ni resuelve importaciones basadas en red. El procesamiento de entidades externas (XXE) está deshabilitado por seguridad. Las inclusiones e importaciones de esquemas funcionan solo si todos los esquemas referenciados se proporcionan en el contenido principal del XSD.
- Acceso a red:Bloqueado por seguridad
- Importaciones de esquema:Deben estar en línea, sin resolución externa
- Entidades externas:Deshabilitadas (protección XXE)
- Límites de procesamiento:Se aplican límites de tamaño razonables
Procesamiento del lado del servidor vs del lado del cliente
Las comprobaciones de buena formación de XML del lado del cliente son suficientes para una validación básica de sintaxis. Sin embargo, la validación XSD requiere un motor especializado porque los navegadores no incluyen procesadores de XML Schema. La validación del lado del servidor garantiza resultados consistentes, maneja características complejas del esquema como la herencia y las importaciones, y proporciona aislamiento de seguridad frente a contenido XML potencialmente malicioso.