275 votes

Outil de validation du schéma XML (XSD) ?

Au bureau, nous sommes en train d'écrire une application qui va générer des fichiers XML à partir d'un schéma qui nous a été donné. Le schéma se trouve dans un fichier .XSD.

Existe-t-il des outils ou des bibliothèques que nous pouvons utiliser pour des tests automatisés afin de vérifier que le XML généré correspond au schéma ?

Nous préférons les outils gratuits qui conviennent à un usage commercial, même si nous n'inclurons pas le vérificateur de schémas dans le paquet, de sorte qu'il ne doit être utilisable que par les développeurs pendant le développement.

Notre langage de développement est le C++ si cela fait une différence, bien que je ne pense pas que cela devrait, car nous pourrions générer le fichier xml et ensuite faire la validation en appelant un programme séparé dans le test.

161 votes

J'adore le fait que beaucoup de ces questions "non constructives" figurent en tête des résultats de recherche Google sur des sujets que je recherche et que les réponses sont utiles.

2 votes

Je comprends ce que vous voulez dire par "pas constructif". Honnêtement, c'est une excellente question et les débats/arguments finissent parfois par donner de bonnes réponses.

26 votes

C'est le cas exact où les admins sont contre-productifs.

3voto

Joe Skora Points 6535

W3.org fournit un validateur en ligne . Je l'ai utilisé dans le passé avec d'excellents résultats, mais seulement de manière interactive. vous pourrez peut-être automatiser des tests contre lui avec une bibliothèque d'URL.

3voto

John Points 12438

2voto

Clemens Points 576

Un éditeur XML permettant une validation rapide et facile du XML est disponible à l'adresse suivante http://www.xml-buddy.com

Il vous suffit d'exécuter le programme d'installation, après quoi vous pouvez valider vos fichiers XML à l'aide d'une application de bureau facile à utiliser ou de la ligne de commande. En outre, vous bénéficiez également d'un support pour Schematron et RelaxNG. La validation par lots est également prise en charge...

Mise à jour 1/13/2012 : L'outil en ligne de commande est gratuit et utilise Xerces comme analyseur XML.

2voto

Pengo Points 41

Je suis en train d'apprendre Schema. J'utilise RELAX NG et j'utilise xmllint pour valider. Je suis frustré par les erreurs qui sortent de xmlllint. J'aimerais qu'elles soient un peu plus informatives.

S'il y a un attribut incorrect dans le XML, xmllint vous indique le nom de l'attribut non pris en charge. Mais s'il manque un attribut dans le XML, vous recevez simplement un message indiquant que l'élément ne peut pas être validé.

Je travaille sur un XML très compliqué avec des règles très compliquées, et comme je suis novice en la matière, trouver l'attribut manquant me prend beaucoup de temps.

Mise à jour : je viens de trouver un outil java que j'aime beaucoup. Il peut être lancé depuis la ligne de commande comme xmllint et il supporte RELAX NG : https://msv.dev.java.net/

2voto

iniki Points 2017

J'ai trouvé ce validateur en ligne de "corefiling" très utile.
http://www.corefiling.com/opensource/schemaValidate.html

Après avoir essayé plusieurs outils pour valider mon xsd, celui-ci est celui qui m'a donné des informations détaillées sur les erreurs - j'ai donc pu corriger l'erreur dans le schéma.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X