Nous développons une application qui implique une quantité substantielle de transformations XML. Nous n'avons pas de données de test d'entrée appropriées en soi, uniquement des fichiers DTD ou XSD. Nous aimerions générer nous-mêmes nos données de test à partir de ces fichiers. Existe-t-il un moyen facile / gratuit de le faire?
Éditer
Il n'y a apparemment pas d'outils gratuits pour cela, et je conviens qu'OxygenXML est l'un des meilleurs outils pour cela.
debate, arguments, polling, or extended discussion
Réponses:
Je pense qu'Oxygen ( http://www.oxygenxml.com/ ) le fait aussi, mais c'est un autre produit commercial. C'est bien, cependant ... Je le recommande vivement à tous ceux qui font beaucoup de travail XML. Il est également livré dans un joli plugin Eclipse.
Je pense qu'il existe un essai gratuit et complet de 30 jours.
la source
Dans Visual Studio 2008 SP1 et versions ultérieures, l' Explorateur de schémas XML peut créer un document XML avec des exemples de données de base:
la source
Dans les versions récentes de l' IDE gratuit et open source Eclipse, vous pouvez générer des documents XML à partir de fichiers DTD et XSD. Cliquez avec le bouton droit sur un fichier * .dtd ou * .xsd donné et sélectionnez "Générer -> Fichier XML ...". Vous pouvez choisir l'élément racine à générer et si les attributs et éléments facultatifs doivent être générés.
Bien sûr, vous pouvez également utiliser Eclipse pour créer et modifier vos fichiers de schéma DTD et XSD. Et vous n'avez pas besoin d'installer de plugins. Il est inclus dans la distribution standard.
la source
Pour les utilisateurs d'Intellij Idea:
Jetez un œil à Outils -> Actions XML
Semble très bien fonctionner (pour autant que je l'ai testé).
Éditer:
Comme mentionné par @naXa, vous pouvez maintenant également cliquer avec le bouton droit sur le fichier XSD et cliquer sur "Générer un document XML à partir du schéma XSD ..."
la source
Le camprocesseur disponible sur Sourceforge.net fera la génération de cas de test xml pour n'importe quel XSD. Un didacticiel est disponible pour vous montrer comment générer vos propres exemples de test - y compris l'utilisation d'indices de contenu pour garantir des exemples réalistes, pas seulement des exemples aléatoires.
Le tutoriel est disponible ici: http://www.oasis-open.org/committees/download.php/29661/XSD%20and%20jCAM%20tutorial.pdf
Et plus d'informations sur l'outil - qui utilise la norme OASIS Content Assembly Mechanism (CAM) pour refactoriser votre XSD en une structure plus conviviale XSLT - peuvent être trouvées sur le site Web de ressources - http://www.jcam.org.uk
Profitez, DW
la source
Vous pouvez utiliser le générateur d'instances XML qui fait partie du validateur multi-schémas Sun / Oracle .
C'est README.txt indique:
Téléchargez et décompressez à
xmlgen.zip
partir de la page de téléchargement msv et exécutez la commande suivante pour obtenir des instructions d'utilisation détaillées:L'outil semble être publié sous une licence BSD; le code source est accessible d' ici
la source
xmlgen.zip
uniquement dans lenigthly
répertoire. Je confirme l'impossibilité de générer un échantillon à partir de mon xsd.--example
fichier pour contenir des jetons pouvant être utilisés pour générer un nouveau fichier d'exemple. Il faut un échantillon pour en faire un échantillon! Pas facile ...XMLSpy le fait pour vous, même si ce n'est pas gratuit ...
Je pense que Liquid Xml Studio le fait pour vous et est gratuit, mais je ne l'ai pas personnellement utilisé pour créer des données de test.
la source
postiveinteger
terrain - mettant*ERROR*
à la placeOn dirait que personne n'a été en mesure de répondre à la question jusqu'à présent :)
J'utilise MOXy d'EclipseLink pour générer dynamiquement des classes de liaison, puis parcourir de manière récursive les types liés. C'est un peu lourd, mais cela permet l'injection de valeur XPath une fois que l'arborescence d'objets est instanciée:
TraverseProps est une méthode récursive assez simple:
Tout convertir en XML est assez simple:
la source
Vous pouvez également utiliser XMLPad (gratuit) disponible ici http://www.wmhelp.com pour générer vos exemples XML. Dans le menu: XSD -> générer un exemple de fichier XML.
la source
Microsoft a publié un outil "générateur de documents" à titre d'exemple. Cet article décrit en détail l'architecture et le fonctionnement de l'exemple d'application.
Si vous souhaitez simplement exécuter l'outil de génération d'échantillons, cliquez ici et installez le MSI.
C'est gratuit. La source est disponible. Nécessite le .NET Framework pour s'exécuter. Fonctionne uniquement avec les XSD. (pas Relax NG ou DTD).
la source
XML-XIG: générateur d'instances XML
http://xml-xig.sourceforge.net/
Cette source ouverte serait utile.
la source
NullPointerException
.Microsoft Office a « InfoPath », qui prend un XSD comme importation et vous permet de définir rapidement et facilement un éditeur basé sur un formulaire pour créer des fichiers XML. Il a deux modes - un dans lequel vous définissez le formulaire et un autre dans lequel vous créez le fichier XML en remplissant le formulaire. Je pense qu'il est venu pour la première fois avec Office 2003, et la plupart des gens ne l'installent jamais. Cela me choque de voir à quel point je l'aime.
la source
XMLBlueprint 7.5 peut faire ce qui suit: - générer un exemple de xml à partir de dtd - générer un exemple de xml à partir d'un schéma relax ng - générer un exemple de xml à partir d'un schéma xml
la source
La version open source de SoapUI peut générer des requêtes SOAP à partir de WSDL (qui contient des définitions de type XSD), il semble donc qu'il existe une implémentation open source de cette fonctionnalité. Malheureusement, je n'ai pas compris à quelle bibliothèque est habituée.
la source
Liquid XML Studio dispose d'un assistant XML Sample Generator qui crée des exemples de fichiers XML à partir d'un schéma XML. Les données résultantes semblent conformes au schéma (elles ne peuvent tout simplement pas générer de données pour les modèles d'expression régulière).
la source
La bibliothèque OpenXSD mentionne qu'elle prend en charge la génération d'instances XML basées sur XSD. Vérifiez cela.
la source
Pour être complet, j'ajouterai http://code.google.com/p/jlibs/wiki/XSInstance , qui a été mentionné dans une question similaire (mais spécifique à Java): Une "API" Java pour générer un échantillon XML à partir de XSD?
la source
XML Blueprint fait également cela; instructions ici
http://www.xmlblueprint.com/help/html/topic_170.htm
Ce n'est pas gratuit, mais il y a un essai gratuit de 10 jours; cela semble rapide et efficace; malheureusement, ce n'est que Windows.
la source
Il y a aussi http://xsd2xml.com/ , un générateur XSD vers XML en ligne
la source