Alguma ferramenta para gerar um esquema XSD a partir de um documento de instância XML? [fechado]

Estou à procura de uma ferramenta que irá pegar num documento de instância XML e enviar um esquema XSD correspondente.

Eu certamente reconheço que o esquema XSD gerado será limitado quando comparado com a criação de um esquema à mão (provavelmente não irá lidar com elementos opcionais ou repetitivos, ou restrições de dados), mas poderia pelo menos servir como um ponto de partida rápido.

 145
Author: Matt Dillard, 2008-09-16

10 answers

A Ferramenta de inferência XSD da Microsoft é uma boa solução livre. Muitas ferramentas de edição de XML, como o XmlSpy (mencionado por @Garth Gilmour) ou o editor Oxigenxml também têm esse recurso. Mas são bastante caros. O servidor BizTalk também tem uma ferramenta de inferring XSD.

Editar: acabei de descobrir a classe. net XmlSchemaInference , por isso, se estiver a usar a. net, deve considerar que

 65
Author: Danimal, 2017-03-01 20:25:19

Poderá usar uma opção open source e cross-platform:inst2xsd de Apache XMLBeans . Acho-o muito útil e fácil.

Basta baixar, abrir e jogar (necessita de Java).

 54
Author: Dario, 2008-10-08 18:12:58

Trang é a melhor opção aqui. Open source and cross platform (although Java is required)

Do Sítio Web da Trang:

Trang converte entre diferentes linguagens de esquema para XML. Ele suporta as seguintes línguas

  • relaxa NG (sintaxe XML)
  • relaxa a sintaxe compacta
  • XML 1. 0 DTDs
  • W3C XML Schema

Um esquema escrito em qualquer um dos esquemas suportados pode ser convertido em qualquer uma das outras linguagens de esquema suportadas, exceto que W3C XML Schema é suportado apenas para saída, não para entrada.

Trang também pode inferir um esquema a partir de um ou mais documentos XML exemplo.

Transferir A Ligação

 51
Author: Derferman, 2017-04-14 15:12:53

Em VS2010 se carregar um ficheiro XML no editor, carregue no menu XML >> criar um esquema.

 14
Author: Nathan Donnellan, 2012-06-25 13:17:35

Também há XML schema learner que está disponível em Github .

Pode levar vários ficheiros xml e extrair um XSD comum de todos esses ficheiros .

 11
Author: edorian, 2011-12-06 09:53:18

Se tiver o. Net instalado, uma ferramenta para gerar esquemas e classes do XSD já está incluída por omissão.
Para mim, a ferramenta XSD está instalada sob a seguinte estrutura. Isso pode diferir dependendo do Diretório de instalação.

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:]

Normalmente as classes e esquemas que esta ferramenta gera funcionam bastante bem, especialmente se você vai consumi-los em uma linguagem. Net

Eu normalmente pego no documento XML que procuro, empurro-o através da ferramenta XSD com a opção /o:<your path> para gerar um esquema (xsd) e, em seguida, empurrar o ficheiro xsd de volta através da ferramenta, usando as opções /classes /L:VB (or CS) /o:<your path> para obter classes que posso importar e usar no meu dia-a-dia. Net projects
 10
Author: Pat Hermens, 2008-09-17 23:29:11

Se tudo o que você quer é XSD, o LiquidXML tem uma versão gratuita que faz XSDs, e tem uma interface gráfica para que você possa ajustar o XSD se quiser. De qualquer forma hoje em dia eu escrevo meu próprio XSDs à mão, mas é tudo graças a este aplicativo.

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

 6
Author: Robert Gould, 2008-09-17 06:37:54

Se estiver a trabalhar no java world - o intelij idea também tem um suporte extensivo em xml, incluindo a geração xsd e o samle xml da geração xsd, e com os 'plugins' poderá obter os depuradores xslt. - especialmente bom se você planeja usar ferramentas como jaxb depois.

 4
Author: Andreas Petersson, 2008-09-17 23:31:16

Altova XmlSpy Faz isto bem - você pode encontrar uma visão geral Aqui

 3
Author: Garth Gilmour, 2008-09-16 17:41:31

Este é um tópico antigo, mas eu pensei que poderia ser útil para postar este link: apenas encontrei esta ferramenta: xsd-gen gerar esquema XML a partir de XML

E fez o que eu precisava.
 3
Author: v_e, 2016-08-09 22:06:06