Des outils pour générer un schéma XSD à partir d'un document D'instance XML? [fermé]

Je suis à la recherche d'un outil qui prendra un document D'instance XML et affichera un schéma XSD correspondant.

Je reconnais certainement que le schéma XSD généré sera limité par rapport à la création d'un schéma à la main (il ne gérera probablement pas les éléments facultatifs ou répétitifs, ou les contraintes de données), mais il pourrait au moins servir de point de départ rapide.

145
demandé sur Matt Dillard 2008-09-16 21:36:26

10 réponses

L'outil d'inférence Microsoft xsd est une bonne solution gratuite. De nombreux outils D'édition XML, tels que XmlSpy (mentionné par @Garth Gilmour) ou OxygenXML Editor ont également cette fonctionnalité. Ils sont assez cher, cependant. BizTalk Server dispose également D'un outil xsd inférant ainsi.

Edit: je viens de découvrir la classe. net xmlschemainference, donc si vous utilisez. Net, vous devriez considérer que

65
répondu Danimal 2017-03-01 20:25:19

Vous pouvez utiliser une option open source et multi-plateforme: inst2xsd à partir deXMLBeans D'Apache. Je trouve cela très utile et facile.

Il suffit de télécharger, décompresser et jouer (Il nécessite Java).

54
répondu Dario 2008-10-08 18:12:58

Trang est la meilleure option ici. Open source et cross platform (bien que Java soit requis)

Du site Trang:

Trang convertit entre différents langages de schéma pour XML. Il prend en charge les langues suivantes

  • RELAX NG (syntaxe XML)
  • RELAX NG syntaxe compacte
  • XML 1.0 DTD
  • schéma XML W3C

Un schéma écrit dans l'un des langages de schéma pris en charge peut être converti en parmi les autres langages de schéma pris en charge, sauf que le schéma XML W3C est pris en charge uniquement pour la sortie, pas pour l'entrée.

Trang peut également déduire un schéma à partir d'un ou plusieurs exemples de documents XML.

Lien De Téléchargement

51
répondu Derferman 2017-04-14 15:12:53

Dans VS2010, si vous chargez un fichier XML dans l'éditeur, cliquez sur le menu XML > > créer un schéma.

14
répondu Nathan Donnellan 2012-06-25 13:17:35

, Il y a aussi XML schema learner qui est disponible sur Github.

, Il peut prendre plusieurs fichiers xml et extrait d'un commun XSD à partir de tous ces fichiers.

11
répondu edorian 2011-12-06 09:53:18

Si. Net est installé, un outil pour générer des schémas et des classes XSD est déjà inclus par défaut.
Pour moi, L'outil XSD est installé sous la structure suivante. Cela peut varier en fonction de votre répertoire d'installation.

C:\Program Files\Microsoft Visual Studio 8\VC>xsd
Microsoft (R) Xml Schemas/DataTypes support utility
[Microsoft (R) .NET Framework, Version 2.0.50727.42]
Copyright (C) Microsoft Corporation. All rights reserved.

xsd.exe -
   Utility to generate schema or class files from given source.

xsd.exe <schema>.xsd /classes|dataset [/e:] [/l:] [/n:] [/o:] [/s] [/uri:]
xsd.exe <assembly>.dll|.exe [/outputdir:] [/type: [...]]
xsd.exe <instance>.xml [/outputdir:]
xsd.exe <schema>.xdr [/outputdir:]

Normalement, les classes et les schémas générés par cet outil fonctionnent plutôt bien, surtout si vous les consommez dans un langage. Net

Je prends généralement le document XML que je suis après, le pousser à travers L'outil XSD avec le /o:<your path> drapeau pour générer un schéma (xsd), puis repousser le fichier xsd à travers l'outil en utilisant les drapeaux /classes /L:VB (or CS) /o:<your path> pour obtenir des classes que je peux importer et utiliser dans mes projets. Net quotidiens

10
répondu Pat Hermens 2008-09-17 23:29:11

Si tout ce que vous voulez est XSD, LiquidXML a une version gratuite qui fait XSDs, et il a une interface graphique pour que vous puissiez modifier le XSD si vous le souhaitez. Quoi qu'il en soit de nos jours, j'écris mes propres XSDs à la main, mais tout cela grâce à cette application.

Http://www.liquid-technologies.com/

6
répondu Robert Gould 2008-09-17 06:37:54

Si vous travaillez dans le monde java - intelliJ idea a également un support xml étendu, y compris la génération XSD et le xml samle à partir de la génération xsd, et avec les plugins, vous pouvez obtenir des débogueurs xslt. - particulièrement agréable si vous prévoyez d'utiliser des outils tels que jaxb par la suite.

4
répondu Andreas Petersson 2008-09-17 23:31:16

Altova XmlSpy le fait bien - vous pouvez trouver un aperçu ici

3
répondu Garth Gilmour 2008-09-16 17:41:31

C'est un vieux fil mais j'ai pensé qu'il pourrait être utile de poster ce lien: je viens de trouver cet outil: xsd-gen génère un schéma XML à partir de XML

Et il a juste fait ce dont j'avais besoin.

3
répondu v_e 2016-08-09 22:06:06