validar online error con archivo xml validation xsd

online - validar xml vs xsd



Validar un esquema XSD? (5)

Estoy escribiendo un esquema XML (un XSD) para describir el formato en el que nuestros socios deberían enviarnos los datos.

Y estoy teniendo dificultades para encontrar una herramienta que pueda validar el archivo de esquema XSD que he escrito.

La mejor manera que he encontrado hasta ahora es escribir primero un archivo XML de entrada de ejemplo y luego intentar validarlo con el XSD. Pero eso no se siente como una maniobra de mejores prácticas.

Entonces, ¿cómo debería validar un esquema XML?


Entonces, ¿cómo debería validar un esquema XML (XSD)?

La pregunta que haces es buena. Solo "volarlo" es probable que te meta en problemas. Del artículo de Wikipedia Editor de Esquema XML (énfasis mío) :

El estándar [W3C XML Schema] es versátil, lo que permite la programación de conceptos como la herencia y la creación de tipos, pero es complejo . El estándar en sí es altamente técnico y se publica en 3 partes diferentes, lo que dificulta su comprensión sin comprometer grandes cantidades de tiempo .

Entonces, dada la complejidad del estándar W3C XML Schema, ¿cómo se asegura de que un esquema que crea cumple con ese estándar? Del mismo artículo de Wikipedia:

Los problemas que enfrentan los usuarios cuando trabajan con el estándar XSD se pueden mitigar con el uso de herramientas de edición gráfica. Aunque cualquier editor basado en texto se puede usar para editar un Esquema XML, un editor gráfico ofrece ventajas; permitiendo que la estructura del documento se vea gráficamente y se edite con soporte de validación, ayudantes de entrada y otras características útiles.

En la parte inferior de ese artículo de Wikipedia, encontrará una lista de editores de esquemas XML, algunos de los cuales tienen licencia como "software libre".


El W3C tiene un validador en línea para XML Schemas en http://www.w3.org/2001/03/webdata/xsv . Dado que W3C es la fuente de la especificación del esquema XML, su validador debe ser confiable.



Si esto es algo a corto plazo, podría usar una copia de evaluación de una herramienta como Stylus Studio .

Si se trata de mantenimiento a largo plazo, es posible que desee considerar la compra de un editor de esquemas XML como Stylus u Oxygen o Altova .

No especificó el idioma de origen, pero son solo unas pocas líneas de código para escribir un validador de esquema en Java o .Net.


cd /the/dir/with/your/schema curl -O https://www.w3.org/2012/04/XMLSchema.xsd xmllint.exe --noout --schema XMLSchema.xsd <your schema>

En * nix (incluido git-bash o similar en Windows), si el esquema es válido, entonces $? == 0 $? == 0 else $? == 1 $? == 1 . Estoy seguro de que hay algunos equivalentes powershell ...

Esto vino de un comentario de @ AlexanderKjäll a una respuesta de @lavinio en otro lugar aquí. Agregué mi propio comentario para decir @ AlexanderKjäll debería agregar esto como una respuesta. Sin embargo (para mí al menos), no era del todo correcto, ya que no funcionaría con el URI del archivo remoto. Y así mi respuesta. Si votas a favor esto, puedes votar por favor su comentario.