Estamos desenvolvendo um aplicativo que envolve uma quantidade substancial de transformações XML. Não temos dados de teste de entrada adequados, apenas arquivos DTD ou XSD. Gostaríamos de gerar nossos dados de teste a partir desses arquivos. Existe uma maneira fácil / gratuita de fazer isso?
Editar
Aparentemente, não existem ferramentas gratuitas para isso, e eu concordo que o OxygenXML é uma das melhores ferramentas para isso.
debate, arguments, polling, or extended discussion
Respostas:
Eu acho que o Oxygen ( http://www.oxygenxml.com/ ) também faz isso, mas esse é outro produto comercial. É uma boa, no entanto ... eu recomendo fortemente para qualquer pessoa que faça muito trabalho em XML. Ele também vem em um bom plug-in do Eclipse.
Acredito que exista um teste gratuito de 30 dias com todos os recursos.
fonte
No Visual Studio 2008 SP1 e posterior, o XML Schema Explorer pode criar um documento XML com alguns dados básicos de exemplo:
fonte
Nas versões recentes do Eclipse IDE de código aberto e gratuito, você pode gerar documentos XML a partir de arquivos DTD e XSD. Clique com o botão direito do mouse em um arquivo * .dtd ou * .xsd e selecione "Gerar -> Arquivo XML ...". Você pode escolher qual elemento raiz gerar e se atributos e elementos opcionais devem ser gerados.
Obviamente, você pode usar o Eclipse para criar e editar seus arquivos de esquema DTD e XSD também. E você não precisa instalar nenhum plug-in. Está incluído na distribuição padrão.
fonte
Para usuários do Intellij Idea:
Dê uma olhada em Ferramentas -> Ações XML
Parece funcionar muito bem (tanto quanto eu testei).
Editar:
Conforme mencionado por @naXa, agora você também pode clicar com o botão direito do mouse no arquivo XSD e clicar em "Gerar documento XML a partir do esquema XSD ..."
fonte
O camprocessador disponível no Sourceforge.net fará a geração de casos de teste xml para qualquer XSD. Existe um tutorial disponível para mostrar como gerar seus próprios exemplos de teste - incluindo o uso de dicas de conteúdo para garantir exemplos realistas, não apenas lixo eletrônico aleatórios.
O tutorial está disponível aqui: http://www.oasis-open.org/committees/download.php/29661/XSD%20and%20jCAM%20tutorial.pdf
E mais informações sobre a ferramenta - que está usando o padrão OASIS Content Assembly Mechanism (CAM) para refatorar seu XSD em uma estrutura mais compatível com XSLT - podem ser encontradas no site do recurso - http://www.jcam.org.uk
Aprecie, DW
fonte
Você pode usar o XML Instance Generator, que faz parte do Sun / Oracle Multi-Schema Validator .
É README.txt afirma:
Baixe e descompacte
xmlgen.zip
na página de download do msv e execute o seguinte comando para obter instruções detalhadas de uso:A ferramenta parece ter sido lançada sob uma licença BSD; o código fonte é acessível a partir daqui
fonte
xmlgen.zip
somente nonigthly
diretório Confirmo a incapacidade de gerar uma amostra do meu xsd.--example
arquivo para conter tokens que podem ser usados para gerar um novo arquivo de amostra. É preciso uma amostra para fazer uma amostra! Não é fácil ...O XMLSpy faz isso por você, embora isso não seja gratuito ...
Acredito que o Liquid Xml Studio faça isso por você e seja gratuito, mas não o usei pessoalmente para criar dados de teste.
fonte
postiveinteger
campo - colocando-o*ERROR*
em vez dissoParece que ninguém foi capaz de responder à pergunta até agora :)
Eu uso o MOXy do EclipseLink para gerar dinamicamente classes de ligação e depois recursivamente passar pelos tipos de ligação. É um pouco pesado, mas permite a injeção de valor XPath depois que a árvore de objetos é instanciada:
TraverseProps é um método recursivo bastante simples:
Converter tudo em XML é muito fácil:
fonte
Você também pode usar o XMLPad (gratuito para uso) encontrado aqui http://www.wmhelp.com para gerar suas amostras xml. No menu: XSD -> gere um arquivo XML de amostra.
fonte
A Microsoft publicou uma ferramenta "gerador de documentos" como um exemplo. Este é um artigo que descreve a arquitetura e a operação do aplicativo de amostra com alguns detalhes.
Se você deseja apenas executar a ferramenta de geração de amostra, clique aqui e instale o MSI.
É grátis. A fonte está disponível. Requer que o .NET Framework seja executado. Funciona apenas com XSDs. (não Relax NG ou DTD).
fonte
XML-XIG: Gerador de Instâncias XML
http://xml-xig.sourceforge.net/
Esse código-fonte seria útil.
fonte
NullPointerException
.O Microsoft Office possui o ' InfoPath ', que aceita um XSD como importação e permite definir rápida e facilmente um editor baseado em formulário para a criação de arquivos XML. Ele tem dois modos - um em que você define o formulário e outro em que você cria o arquivo XML preenchendo o formulário. Eu acredito que ele veio com o Office 2003 e a maioria das pessoas nunca o instala. Isso me choca com o quanto eu gosto.
fonte
XMLBlueprint 7.5 pode fazer o seguinte: - gerar amostra xml a partir de dtd - gerar amostra xml a partir do esquema de relaxamento - gerar amostra xml a partir do esquema xml
fonte
A versão de código-fonte aberto do SoapUI pode gerar solicitações SOAP a partir do WSDL (que contém definições de tipo XSD), portanto parece haver uma implementação de código-fonte aberto dessa funcionalidade. Infelizmente, ainda não descobri qual biblioteca é usada para isso.
fonte
O Liquid XML Studio possui um assistente XML Sample Generator que cria arquivos de amostra XML a partir de um esquema XML. Os dados resultantes parecem estar em conformidade com o esquema (apenas não podem gerar dados para padrões de regex).
fonte
A biblioteca OpenXSD menciona que eles têm suporte para gerar instâncias XML baseadas no XSD. Dê uma olhada.
fonte
Para completar, adicionarei http://code.google.com/p/jlibs/wiki/XSInstance , mencionado em uma pergunta semelhante (mas específica para Java): Qualquer "API" Java para gerar XML de amostra a partir do XSD?
fonte
O XML Blueprint também faz isso; instruções aqui
http://www.xmlblueprint.com/help/html/topic_170.htm
Não é gratuito, mas há uma avaliação gratuita de 10 dias; parece rápido e eficiente; infelizmente, é apenas o Windows.
fonte
Há também http://xsd2xml.com/ , um gerador online de XSD para XML
fonte