Tous les outils pour générer un schéma XSD à partir d'une instance de document XML?
Je suis à la recherche d'un outil qui va prendre une instance de document XML et de sortie correspondant au schéma XSD.
Je reconnais certainement que le schéma XSD seront limitées par rapport à la création d'un schéma à la main (il ne sera probablement pas gérer en option ou de répéter les éléments de données, ou les contraintes), mais il pourrait au moins servir comme point de départ.
Vous devez vous connecter pour publier un commentaire.
la Microsoft XSD inférence outil est une bonne solution libre. De nombreux outils d'édition XML, tels que XmlSpy (mentionné par @Garth Gilmour) ou OxygenXML Éditeur ont également cette fonctionnalité. Ils sont assez cher, cependant. BizTalk Server dispose également d'un XSD déduire de l'outil ainsi.
edit: je viens de découvrir l' .net XmlSchemaInference classe, donc si vous êtes en utilisant .net vous devriez considérer que
xsd.exe
avoir changé sur Windows 7. Je l'ai dans de nombreuxMicrosoft SDKs
répertoires (de sorte qu'il ne semble pas nécessairement sur Visual Studio plus?), parmi lesquels celui-ci:C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools
. J'ai eu à exécuter dans le répertoire contenant le fichier xml, afin d'éviter une erreur à propos de "caractères illégaux dans le chemin", mais ça peut être dû à long nom de fichier que j'ai.xsd.exe
seulement utilisé la première instance par nœud). Je crois que j'ai utilisé de multiples exemples, de générer de multiples.xsd
's, puis fusionnés manuellement les résultats. Après cela, j'ai ajouté manuellement facultatives, les nœuds (et les relations, et les types de données) en validant le grand fichier XML, voir ce MSDN valider exemple.Vous pouvez utiliser l'open source et multi-plate-forme d'option: inst2xsd de Apache XMLBeans. Je trouve cela très utile et facile.
Il suffit de télécharger, décompresser et lire (il nécessite Java).
Trang est la meilleure option ici. Open source et multi plate-forme (bien que Java est requis)
De la route de Trang Site web:
Lien De Téléchargement
$ trang file.xml schema.xsd
.Dans VS2010 si vous chargez un fichier XML dans l'éditeur, cliquez sur le menu XML >> Create Schema.
Il y a aussi
schéma XML de l'apprenant de l'
qui est disponible sur Github.Il peut prendre plusieurs fichiers xml et extrait d'un commun XSD à partir de tous ces fichiers.
sudo apt-get install php5-cli
et en cours d'exécution./learn --help
--- je ne vois vraiment pas la différence entre ça et un outil écrit en java, python ou ruby 🙂locality
champ: si un nom de champ est utilisé dans plusieurs endroits dans le code XML en se référant à différentes éléments, une plus grandelocality
valeur de 1 est nécessaire, par exemple,root/item
etroot/something/item
se référer à différents types, puis--locality 2
est requis au minimumSi vous en avez .Installée nette, un outil pour générer des schémas XSD et des classes est déjà inclus par défaut.
Pour moi, l'outil XSD est installé dans la structure suivante. Cela peut varier en fonction de votre répertoire d'installation.
Normalement les classes et les schémas que cet outil génère fonctionne plutôt bien, surtout si vous allez être en consommer dans un .Net langue
Je prend généralement le document XML que je suis après, le pousser à travers l'outil XSD avec le
/o:<your path>
drapeau de générer un schéma (xsd), puis appuyez sur le fichier xsd de retour par le biais de l'outil à l'aide de la/classes /L:VB (or CS) /o:<your path>
indicateurs pour obtenir des classes que je peux l'importation et l'utilisation au quotidien dans mes .Projets NetSi tout ce que vous voulez, c'est XSD, LiquidXML a une version gratuite qui ne XSDs, et son obtenu d'une interface graphique pour elle de sorte que vous pouvez modifier le fichier XSD si vous le souhaitez. De toute façon aujourd'hui, j'écris mes propres XSDs à la main, mais sa grâce à cette application.
http://www.liquid-technologies.com/
si vous travaillez dans le monde java - intelliJ idea a aussi étendu la prise en charge xml, y compris la génération xsd et samle xml à partir de la génération xsd, et avec les plugins, vous pouvez obtenir xslt débogueurs. - particulièrement agréable si vous prévoyez d'utiliser des outils tels que jaxb par la suite.
Altova XmlSpy est-ce à bien vous pouvez trouver un aperçu ici
C'est un vieux thread mais j'ai pensé qu'il pourrait être utile de poster ce lien: juste trouvé cet outil:
xsd-gen Générer le Schéma XML de XML
et il a juste fait ce qu'il me fallait.