Comment dériver DTD (ou autre format de spécification XML) à partir d'échantillons de fichiers XML
Connaissez-vous un outil qui va dériver une DTD (ou autre structure XML spécification du format) à partir d'un échantillon de l'ensemble de fichiers XML?
Actuellement le seul (automatique) de validation que nous avons pour un xml encodé DSL est un héritage de l'analyseur écrit en Perl, mais pour des raisons de cohérence tous les code perl doit être porté à C-sharp.
source d'informationauteur lexu
Vous devez vous connecter pour publier un commentaire.
http://www.stylusstudio.com/dtd_generator.html est réelle logiciel mise en œuvre d'une DTD générateur.
http://www.pmg.csail.mit.edu/~chmoh/pubs/wecwis.pdf semble comme un beau papier sur le genre de chose que vous aurez besoin, mais je ne peux pas trouver (liens) code n'importe où dans le papier jusqu'à présent.
Voici un autre article sur ce, encore une fois, pas de code: http://www.softnet.tuc.gr/~minos/Documents/debull03.pdf.
Enfin, je voudrais aussi vous suggère de regarder dans l'aide de RELAX NG ou Schematron pour valider votre XML à la place. Ces langues sont beaucoup plus expressifs, les rendant plus faciles à lire et plus puissant dans le genre de choses que vous pouvez valider. (Assurez-vous de sauter de Schéma XML, qui est largement considéré comme un gâchis.)
Vous pouvez utiliser
xsd.exe
(partie de visual studio) pour générer un schéma XML pour un fichier XML.Vous pouvez utiliser le lien suivant pour génération de schéma en ligne, par la fourniture de données xml.
http://www.xmlforasp.net/codebank/system_xml_schema/buildschema/buildxmlschema.aspx
Vous pouvez télécharger JetBrains IDÉE community edition qui est gratuit. Il a intégré dans les outils pour générer GTDs et Schémas:
http://www.jetbrains.com/idea/webhelp/generating-dtd.html
Peut-être pas parfait, mais c'est quelque chose.
Voici le programme qui a fonctionné pour moi DTDGenerator. Vous avez besoin de le compiler avec Java, mais il fonctionne bien. Je suis surpris par le manque du logiciel libre pour une langue qui a été autour depuis longtemps, mais celui-ci est gratuit sous Licence Publique de Mozilla Version 1.0.
Altova est XMLSpy a une DTD/XML Schéma du générateur.
Générés DTD/Schéma XML nécessite généralement un peu de peaufinage. Par exemple, l'outil peut énumérer une liste d'attributs ou d'éléments, lorsque vous "signifiait" pour n'importe quelle valeur. Vous êtes seulement en lui donnant un échantillon de votre problème de l'espace, et il doit aller du particulier au général, cependant. Pour cette raison, je n'ai pas trop plié hors de forme quand il ne parvient pas à lire mon esprit.
Je considère que le générés dtd ou un schéma un point de départ. C'est mieux que de rouler à la main à partir de zéro. Re, si vous êtes débutant avec l'existant documents XML, qui est.
Même si vous n'allez pas utiliser l'généré dtd, c'est une très bonne façon d'obtenir votre tête autour de la structure d'un ensemble de l'inconnu documents XML.
XMLMax éditeur va créer un XSD à partir d'un fichier XML. L'essai gratuit(no ce/petit fichier à télécharger) le fera pour vous. Si vous voulez le faire dans le code .NET framework est un XmlSchemaInference classe qui crée automatiquement un XSD à partir d'un fichier xml.
Juste utilisé http://www.freeformatter.com/xsd-generator.html pour générer un xsd à partir d'un fichier xml.
Elle a aussi beaucoup d'autres possibilités de mise en forme!
Vous pouvez essayer de
Trang
ouExemple de Schéma de l'Outil
(partie de XMLBeans).Je les ai mis dans un test avec 1 go de fichier XML. Voici les résultats:
Trang
:Exemple de Schéma de l'Outil
: